偉克多微電腦工作室---8051/PC---系列參考書介紹


PC 微處理機及介面技術實作 (文魁) 書號 P4117


讓您輕鬆學會 PC 微處理機及介面控制的入門及應用參考書
●深入淺出---微處理機基本知識學習及基本 TURBO C 軟硬體設計
●動手實作---PC 串列介面及並列介面應用實驗及 LP55 設計實作
●技術探討---串列及並列介面技術、計時器、伺服機控制、中文 LCD實作
●專題活用---無線電遙控、PC遙控車、語音辨認實驗、LP55 擴充專題實作

本書適用對象

有志於從事PC系統硬體製造、設計、測試應用工程師,技職院校電子系、電機系、自動控制系,微處理機及介面技術教學或自修參考教材。

本書精采內容

□微處理機基本知識介紹及介紹由網路免費下載 TURBO C 編譯器。
□PC ISA 匯流排電氣特性介紹及 I/O 介面解碼線路設計。
□PC 印表機並列介面、串列介面介紹。
□PC 並列介面控制實驗板 LP55 及驅動程式原始程式碼設計。
□並列介面基本 I/O 實驗,包括 8255 晶片測試、 LED 走馬燈控制、指撥開關輸入、按 鍵輸入控制、 掃描七節顯示器控制、繼電器控制及壓電喇叭控制。
□PC 串列介面應用,包括串列監控程式設計、簡易 8051 除錯介面、PC 遙控車、PC 語音辨認聲控實驗。
□PC 計時器應用,產生固定延遲時間。
□A/D 介面設計,讀取外界電壓、光敏電阻實驗、溫度量測。
□D/A 介面設計,產生方波信號、鋸齒波信號、三角波信號、正弦波信號。
□直流馬達、步進馬達及遙控伺服機工作原理及應用介紹。
□步進馬達控制,包含定位測試實驗及速度控制實驗。
□無線電遙控編解碼控制原理、無線電遙控家電。
□LCD 及中文 LCD介面控制,包括顯示資料訊息及自創 LCD 字型。
□實作重點包括介面電路設計及實作步驟、微電腦控制板基本除錯方法。
□本書內附光碟包括書中範例原始 C 程式及執行檔,及本書內容 WORD 電子檔,可做為電子書方便教學或是自我進修使用。

教了十年的書,也寫了不少的控制應用程式,從作中學中、從教學相長中真的體會出程式
設計的重要。每年看著畢業班學生的離開學校,投入職場,面對著問題是社會新鮮人如何
應徵滿意的工作?畢業班學生自己自我評量一下,唸了幾年專業科目下來,學了那些科目
可以在畢業後進入職場上與其他人競爭?記住職場上的競爭是專業上的軟硬體實作能力,
而不是在校考試成績的高低!因此本書在軟硬體實作說明上特別加強。

微電腦介面設計及實習是各大專院校電子、電機、自動控制科必修的課程,現在普遍地朝
向 PC 及單晶片 8051 兩方面做為實習的對象。在學學生一般都安排有實習課程,但普遍
有個現象是在一年年的介面實習完後,最後要成果驗收製作畢業專題時卻交不出好作品,
一面臨到做專題卻不知從何下手?事實上大多數的學生對介面製作是非常有興趣的,只是
不知如何入門而已。因此本書嘗試著將 PC 介面實作基本的知識做介紹,配合 TURBO C
做程式設計,來完成所有的實驗。對於初學者而言,只要依循本書內容的介紹,在做完相
關的實驗後,相信您對介面製作,不再感到陌生而不知道學什麼做什麼。

做自動控制及介面設計,事實上使用自己熟悉的程式語言均能完成工作,但為什麼我們會
選用 C 語言呢?最大的原因是 C 語言具有高度可攜性,整個軟體控制程式可以依硬體環
境做轉移,如在 PC 上所寫的步進馬達控制程式,可以利用 8051 C 編譯器重新編譯,而
在 8051控制板上做步進馬達的控制,這是做軟體的移植。那麼硬體呢?學習微電腦有一點
重要的觀念,是不同的兩個微電腦系統可能 CPU 不同,記憶體不同,但是 I/O 的介面卻
是大同小異。於是如果能把 PC 上做的相關 I/O 軟硬體實驗,移植到單晶片 8051 上來
做,便可以省下我們很多重新設計軟硬體的時間和費用。

C 語言一直都是強勢的程式語言,初學者為何學 C 語言? 周六日打開各大報紙求職欄,
仔細多看幾家,發現相關職缺必備技能,還都是 C 語言程式設計,因此,C 語言算是目
前工程上使用最普遍的程式語言。在後 PC時代,資訊家電產品,像 PDA、數位相機、手
機及高級互動式玩具,成為當紅的熱門產品,您知道這些產品背後的軟體是如何設計出來
的?是使用什麼程式語言來設計?答案是 C 語言,其中很多產品是以嵌入式硬體架構來
完成設計。因此像熱門的嵌入式硬體設計及系統化單晶片 SOC(System On Chip)的雛型機
開發控制軟體,都是使用 C 語言或是類似語言來做開發。有志於從事軟硬體應用工程師
的朋友們今天若不會 C 語言,明日一定會後悔的,在職場上應徵相關工作多少會覺得實力較弱。

光是在 PC 上的 C 語言編譯器就有數十種,而最基本、簡單的 C 程式入門便是 TURBO
C,一但學會基礎的 C 程式設計,再學習設計視窗平台下的 C 程式,便較輕鬆容易。而
現在網路相當發達,手上若沒有軟體,可以到網路上下載免費 TURBO C C 語言編譯器來
學習,今天的努力將成為日後研發實力的基礎。

本書的每一個實驗均是各自獨立的,您若有興趣可以針對其硬體電路實作,來加以驗證
其功能,若沒有實作經驗,我們教您如何製作自己的第一片介面卡。本書是一系列微電腦
C 語言程式設計、軟硬體實作參考書的一本入門書,全書分為幾大部分:微處理機基礎
篇、PC ISA匯流排電氣特性、印表機並列介面、RS232 串列通訊介面及以印表機介面做系
列 I/O 實驗,主要內容如下:

□微處理機基本知識介紹。
□介紹如何由網路上免費下載 TURBO C C 語言編譯器。
□介紹 TURBO C 如何使用及設計基本的 C 程式。
□PC ISA 匯流排電氣特性及 I/O 介面解碼線路設計。
□8255 控制晶片介紹。
□ISA 匯流排 I/O 設計使用 8255。
□PC 印表機並列介面介紹。
□PC 並列介面控制板 LP55 硬體設計。
□LP55 驅動程式原始程式碼設計。
□並列介面基本 I/O 實驗,包括 8255 晶片測試、 LED 走馬燈控制、指撥開關輸入、按 鍵輸入控制、掃描七節顯示器控制、繼電器控制及壓電喇叭控制。
□PC 串列介面介紹。
□PC 串列介面監控程式設計。
□PC 串列介面應用,包括 PC 與單晶片 8051 建立連線、簡易 8051 除錯介面、PC 遙控 車、PC 語音辨認聲控實驗。
□PC 計時器應用,產生固定延遲時間。
□A/D 介面設計,包括讀取外界電壓、光敏電阻實驗、溫度量測。
□D/A 介面設計,包括量測輸出電壓、產生方波信號、鋸齒波信號、三角波信號、正弦波信號。
□直流馬達及遙控伺服機控制實驗。
□步進馬達控制,包含定位測試實驗及速度控制實驗。
□無線電遙控實驗,包括無線電遙控模組功能說明、遙控編解碼控制原理、無線電遙控家電。
□LCD 介面控制,包括顯示資料訊息及自創 LCD 字型。
□中文 LCD 介面控制。
□實作重點包括介面電路設計及實作步驟、自製介面卡的步驟、銲接配線技巧、微電腦控
制板基本除錯方法及邏輯筆使用的注意事項、本書實驗電路板選用建議。

微處理機與介面技術是學習自動化控制上,一體的兩面。微處理機強調控制板內部系統的
專業知識,而介面技術則是談及介面擴充的功能及如何做功能擴充,及相關連線應用。很
多修完相關課程的學生,卻往往無法掌握微處理機的一些學習重點,於是在本書中,特別
將微處理機以實務的觀點將其基本知識做介紹,對於初學著更是重要。想想當初大學時,
學習微處理機基本知識是由 Z80 原廠的 DATA BOOK 及相關英文原文書開始研究起,一點
基礎都沒有,像是晶片接腳電氣特性、時序圖、工作方塊圖 ....等等,像是在看本無字
天書般的難過,真是苦不堪言。後來由實作單晶片 8051 後,才對微處理機有了較深入基
本的了解,原來微處理機基本組成是 CPU、記憶體及I/O,靠 3 種匯流排來連接,一部分
一部分專業知識的吸收後,才得以入門。今天對於一個初學者,直接看過本書中
較簡單的微處理機基本知識介紹後,並實際做過些基礎實驗,再回過頭來看微處理機相關
原文書,或是進階介面研究,您將會發現,基本的知識原來如此,一點也不複雜,但卻是
很重要。

本書是一本介紹微處理機基本知識及 PC 介面實作的入門參考書,在考慮軟硬體技術層面
及實作的困難度,重點主要是介紹以下 3 組介面的控制原理:
□ISA 介面插槽
□印表機並列介面
□RS232 串列通訊介面

程式設計以 TURBO C 控制程式來做舉例,在實驗方面偏重印表機並列介面,因為其連接
方便,不必掀開主機,便可以將控制板與 PC 相連接,在實作上方便,硬體成本低,初學
者易學易懂,在實作上成功率很高。為方便實驗,開發出印表機並列控制介面----LP55
控制板,來做並列介面相關實驗,並提供完整的 TURBO C 控制原始程式及硬體電路,有
興趣的讀者可以自行實作。

此外也列舉 RS232 串列通訊介面的設計實例,並以單晶片 8051 設計實例來說明如何與
PC 建立連線,來做串列通訊的控制實驗。其中使用 8051 程式發展平台---IO51 控制板
,當8051執行程式碼產生後,可以馬上由 RS232 介面下載到控制板上來驗證程式執行結
果,就好像在 PC 上開發應用程式般的方便,完全不必燒錄單晶片,方便簡單,非常適合
初學者使用。這些都是較簡單且非常實用的設計案例,相信初學者可以很快的學以致用設
計出特殊的控制介面。

印表機並列介面及 RS232 串列通訊介面,都是很傳統的 PC I/O 功能擴充方式,在今天
講求創意的時代,使用這些簡單的技術,便可以使過去很傳統的電子裝置增加新的附加價
值,例如傳統玩具車,連接 RS232 串列通訊介面,便可以搖身一變成為電腦可程式遙控
車,增加新的玩法。有時候,很多應用不一定要有最新最頂尖的技術,也可以設計出好玩
有創意的產品來導入市場。

本書附錄收錄有筆者幾年下來製作電路,及教學實驗的一些實作經驗,提供給初學者完全
沒有拿過電烙鐵的朋友,許多課堂課學不到的相關基本實作知識,避免實作上的失敗而失
去原先對實作的好奇及興趣。

根據幾年的教學經驗,告訴我們,有關程式設計的課程,若能將書中最後幾章精采的應用
部分拿到最前面,第一堂課來介紹效果可能最好,原因是先讓初學者產生興趣後,自然有
較強烈的動機來繼續學習。此外有關程式設計的課程,可以先看看執行結果,再回頭來看
程式碼是如何設計的,可以產生這樣的效果,畢竟程式設計只是將一些程式碼反覆不斷地
再編輯、組合及除錯罷了,最後符合我們的功能需求。

聰明的程式設計初學者,若想在跨平台 I/O 控制系統程式上做發展,這些基本的知識是
值得參考研究的。若讀者對以 C 語言來設計 PC 及單晶片 8051 相關 I/O 介面及應用感
興趣,可以參考拙著:
□PC TURBO C 程式設計軟硬體應用入門---文魁出版,書號 P4097
□單晶片 8051 KEIL C 實作入門---------文魁出版,書號 P5067
□單晶片 8051 KEIL C 專題製作

這些為專業工程師技術養成參考書,將陸續出版,其實原理並不難,最重要的是要有興趣
及耐心來寫 C 程式搭配硬體做實驗,一分耕耘,一分收穫。

本書在寫作及實驗期間,承蒙偉克多微電腦工作室,工作夥伴們在測試上的協助。文魁圖
書公司的大力配合及協助出版,在此一併致以十二萬分的謝意。初學者或是讀者如有實作
上的任何疑問可直接與工作室聯絡
網址: vic.seeder.net
信箱: ufvicwen@ms2.hinet.net

目錄


第 1 章 概論
1-1 開啟微處理機介面控制之門
1-2 PC 控制系統的組成
1-3 PC 控制匯流排及介面分類
1-4 習題

第 2 章 微處理機基本知識介紹
2-1 微電腦系統組成
2-2 微處理機
2-3 匯流排
2-4 記憶體
2-5 輸入輸出控制
2-6 單晶片處理機 8051 設計實例
2-7 微電腦控制板基本I/O功能
2-8 微電腦硬體發展工具
2-9 微電腦軟體發展工具
2-10 微電腦系統發展流程
2-11自備一套發展系統
2-12 習題

第 3 章 TURBO C 程式設計提要
3-1 為何使用 C 語言
3-2 如何取得免費的 TURBO C 編譯軟體
3-3 TURBO C 整合環境介紹
3-4 快速學會使用 TURBO C
3-5 第一支 C 程式
3-6 TURBO C 常用函數介紹
3-7 習題

第 4 章 PC AT 匯流排介紹
4-1 PC 系統組成
4-2 PC I/O 埠位址分配
4-3 PC 擴充介面信號介紹
4-4 習題

第 5 章 PC AT 匯流排 I/O 設計
5-1 I/O 介面控制方式
5-2 各種常用解碼線路
5-3 基本 I/O 輸入輸出控制
5-4 輸入輸出測試程式
5-5 習題

第 6 章 8255 控制晶片介紹
6-1 8255 簡介
6-2 8255 接腳說明
6-3 8255 動作說明
6-4 8255 模式0動作
6-5 8255 模式1動作
6-6 8255 模式2動作
6-7 8255 埠 C 的交握式控制信號狀態讀取
6-8 習題

第 7 章 PC I/O 設計使用 8255
7-1 8255 介面電路設計
7-2 製作自已的第一片 I/O 介面卡
7-3 8255 輸出測試程式
7-4 8255 輸入測試程式
7-5 8255 晶片測試程式
7-6 習題

第 8 章 PC 印表機並列介面介紹
8-1 串列及並列介面傳輸介紹
8-2 印表機並列介面應用實例
8-3 印表機並列介面原理介紹
8-4 印表機並列介面測試程式
8-5 習題

第 9 章 PC 並列介面設計使用 8255
9-1 設計架構及控制電路
9-2 驅動程式設計
9-3 基本測試程式
9-4 習題

第 10 章 並列介面基本 I/O 實驗
10-1 8255 晶片測試
10-2 工作指示LED
10-3 LED 走馬燈控制
10-4 指撥開關輸入
10-5 8255 位元設定清除
10-6 按鍵輸入控制
10-7 七節顯示器控制
10-8 掃描七節顯示器控制
10-9 掃描偵測按鍵
10-10 掃描七節顯示器及偵測按鍵
10-11 繼電器控制
10-12 壓電喇叭控制
10-13 習題

第 11 章 PC 串列介面介紹
11-1 串列介面應用實例
11-2 串列資料傳送原理
11-3 RS232 串列介面介紹
11-4 PC 串列介面監控程式設計
11-5 習題

第 12 章 PC 串列介面應用
12-1 PC 與單晶片 8051 建立連線
12-2 簡易 8051 除錯介面
12-3 PC 遙控車
12-4 PC 語音辨認聲控實驗
12-5 習題

第 13 章 PC 計時器應用
13-1 PC 內部計時器結構
13-2 重新規劃計時器通道0
13-3 設計一個計時中斷程式
13-4 驗證 delay() 函數的功能
13-5 精確的 delay() 函數設計
13-6 習題

第 14 章 A/D 介面設計
14-1 ADC 介面架構
14-2 AD0804 介紹
14-3 AD0804 介面設計
14-4 以連續轉換方式讀取外界電壓
14-5 光敏電阻實驗
14-6 溫度量測
14-7 習題

第 15 章 D/A 介面設計
15-1 DAC 介面架構
15-2 DAC0800 簡介
15-3 DAC0800 介面設計
15-4 量測輸出電壓
15-5 以輸出埠送出方波信號
15-6 以 DAC 送出方波信號
15-7 以 DAC 產生鋸齒波
15-8 以 DAC 產生三角波
15-9 以 DAC 產生正弦波
15-10 習題

第 16 章 直流馬達及遙控伺服機控制
16-1 直流馬達控制方式
16-2 直流馬達基本控制電路
16-3 直流馬達控制實驗
16-4 以 PWM 方式控制馬達轉速
16-5 以 PFM 方式控制馬達轉速
16-6 伺服機介紹
16-7 伺服機控制方式
16-8 伺服機控制實驗
16-9 習題

第17章 步進馬達控制
17-1 步進馬達介紹
17-2 步進馬達控制方式
17-3 步進馬達控制電路
17-4 步進馬達控制方法驗證
17-5 步進馬達定位測試實驗
17-6 步進馬達速度控制實驗
17-7 習題

第 18 章 無線電遙控
18-1 無線電遙控模組功能說明
18-2 遙控編解碼控制原理
18-3 無線電遙控測試
18-4 無線電遙控家電
18-5 習題

第 19 章 LCD 介面控制
19-1 LCD 介紹
19-2 LCD控制方式
19-3 以 4 位元控制 LCD 動作
19-4 以 4 位元控制 LCD 自創字型
19-5 以 8 位元控制 LCD 動作
19-6 以 8 位元控制 LCD 自創字型
19-7 習題

第 20 章 中文 LCD 介面控制
20-1 中文 LCD 介紹
20-2 中文 LCD控制方式
20-3 中文 LCD 顯示測試
20-4 習題

附錄
附錄 A 本書實驗所需零件
附錄 B 介面電路設計及實作步驟
附錄 C 自製介面卡的步驟
附錄 D 銲接配線技巧
附錄 E 微電腦控制板基本除錯方法
附錄 F 邏輯筆使用的注意事項
附錄 G LP55 控制板特性介紹
附錄 H LP55 控制板完整電路圖
附錄 I IO51 控制板特性介紹
附錄 J IO51 控制板完整電路圖
附錄 K 本書實驗電路板選用參考
附錄 L 書附光碟使用說明
附錄 M 硬體介面板版權宣告及如何訂購