單晶片微電腦 8051/8951 原理與應用(C語言), 3/e (附範例、系統光碟)
內容描述
<內容介紹>
本書使用目前最熱門的KEIL C來學習單晶片微電腦,本書共分為四篇,第一篇將單晶片微電腦MCS-51及C語言的相關知識做了深入淺出的說明,第二篇至第四篇為C語言程式所撰寫控制單晶片微電腦的應用實例,是一本理論與實務並重的書籍。本書中每個實例均經由作者精心規劃,且每個程式範例均經由作者上機實驗過。讀者們若能一面研讀本書一面依序實習,定可收到事半功倍之效果,進而獲得單晶片微電腦控制之整體知識。本書適合大學、科大電子、電機、資工系「單晶片微電腦實務」課程使用。
第1篇 相關知識1-1
第1章 單晶片微電腦的認識1-3
1-1 微電腦的基本結構1-4
1-2 何謂單晶片微電腦1-5
1-3 使用單晶片微電腦的好處1-6
1-4 適用的電腦才是好電腦1-7
1-5 MCS-51系列單晶片微電腦的認識1-7
第2章 MCS-51系列單晶片微電腦2-1
2-1 我應選用哪個編號的單晶片微電腦2-2
2-2 MCS-51系列之方塊圖2-2
2-3 MCS-51系列的接腳2-4
2-3-1 MCS-51系列的接腳圖2-4
2-3-2 MCS-51系列之接腳功能說明2-4
第3章 MCS-51系列的內部結構3-1
3-1 指令解碼器及控制單元3-3
3-2 算術邏輯單元3-3
3-3 程式計數器3-3
3-4 程式記憶體3-3
3-5 資料記憶體3-4
3-6 特殊功能暫存器3-5
3-7 輸入/輸出埠3-9
3-8 計時/計數器之基本認識3-12
3-9 計時/計數器0及計時/計數器1 3-12
3-9-1 工作模式之設定3-12
3-9-2 模式0 (Mode 0) 分析3-14
3-9-3 模式1 (Mode 1) 分析3-16
3-9-4 模式2 (Mode 2) 分析3-16
3-9-5 模式3 (Mode 3) 分析3-18
3-10 計時/計數器2 3-19
3-10-1 工作模式之設定3-19
3-10-2 捕取模式 (Capture Mode) 分析3-19
3-10-3 自動再載入模式 (Auto-Reload Mode) 分析3-21
3-10-4 鮑率產生器 (Baud Rate Generator) 分析3-22
3-11 串列埠3-23
3-11-1 串列埠之模式0 3-25
3-11-2 串列埠之模式1 3-27
3-11-3 串列埠之模式2 3-29
3-11-4 串列埠之模式3 3-32
3-11-5 串列埠的鮑率3-33
3-11-6 多處理機通訊3-35
3-12 中斷3-38
3-12-1 中斷之致能3-38
3-12-2 中斷之優先權3-40
3-13 省電模式3-43
3-13-1 閒置模式 (Idle Mode)3-44
3-13-2 功率下降模式 (Power Down Mode)3-45
第4章 C語言入門4-1
4-1 C語言的程式架構4-2
4-2 C語言的變數與常數4-5
4-2-1 變數的名稱4-5
4-2-2 KEIL C51的保留字4-5
4-2-3 資料型態4-6
4-2-4 資料表示法4-9
4-2-5 記憶體類型4-10
4-2-6 變數的格式4-10
4-2-7 應該在哪裡宣告變數4-11
4-2-8 常數的宣告與使用4-12
4-3 C語言的運算子4-12
4-3-1 運算子是什麼4-12
4-3-2 指定運算子4-13
4-3-3 算術運算子4-13
4-3-4 關係運算子4-14
4-3-5 邏輯運算子4-15
4-3-6 位元運算子4-16
4-3-7 複合型指定運算子4-18
4-3-8 運算子的優先順序4-19
4-3-9 空白與括號4-19
4-4 程式流程的控制4-20
4-4-1 條件判斷指令if 4-21
4-4-2 分支指令if-else 4-22
4-4-3 階梯分支指令if-else if-else 4-23
4-4-4 多重分支指令switch-case-break-default 4-25
4-4-5 迴圈指令for 4-27
4-4-6 迴圈指令while 4-28
4-4-7 迴圈指令do-while 4-30
4-4-8 跳躍指令goto 4-31
4-5 陣列4-33
4-5-1 一維陣列4-33
4-5-2 字串與陣列4-34
4-6 函數4-35
4-6-1 函數的格式4-36
4-6-2 沒有引數也沒有返回值的函數4-36
4-6-3 有引數沒有返回值的函數4-37
4-6-4 有引數也有返回值的函數4-38
4-6-5 沒有引數有返回值的函數4-39
4-6-6 用陣列做為引數4-40
4-7 KEIL C51的中斷函數4-42
4-8 KEIL C51的特殊指令4-43
4-8-1 向左旋轉指令4-43
4-8-2 向右旋轉指令4-44
4-8-3 極短時間的延時指令4-46
4-9 到KEIL公司去挖寶4-46
第5章 MCS-51之基本電路5-1
5-1 80C51、87C51、89C51、89S51之基本電路5-2
5-2 介面電路5-3
5-2-1 輸入電路5-3
5-2-2 輸出電路5-5
第6章 如何編譯程式6-1
6-1 如何獲得程式的執行檔6-2
6-2 8051的常用C語言編譯器6-2
6-3 下載KEIL C51(請見本書附贈光碟)6-2
6-4 安裝KEIL C51(請見本書附贈光碟)6-3
6-5 KEIL C51之操作實例6-3
6-6 KEIL C51的偵錯能力6-17
6-7 KEIL C51的模擬功能6-22
第7章 如何執行、測試程式7-1
7-1 直接將程式燒錄在89S51或89C51測試7-2
7-2 直接將程式下載至具有ISP功能的AT89S51或
P89C51RD2執行7-3
7-3 利用電路實體模擬器ICE執行程式7-3
7-4 利用軟體模擬器執行程式7-5
7-5 如何防止程式被別人複製7-5
第8章 AT89系列單晶片微電腦的認識8-1
8-1 快閃記憶體 Flash Memory8-2
8-2 AT89C51、AT89S51 8-2
8-3 AT89C52、AT89S52 8-3
8-4 AT89C55 8-3
8-5 AT89C2051、AT89S2051 8-3
8-6 AT89C4051、AT89S4051 8-5
8-7 AT89C1051U 8-6
8-8 KEIL C51試用版的限制 8-6
第2篇 基礎實習9-1
第9章 輸出埠之基礎實習9-3
實習9-1 閃爍燈9-4
實習9-2 霹靂燈9-23
實習9-3 廣告燈9-34
第10章 輸入埠之基礎實習10-1
實習10-1 用開關選擇動作狀態10-2
實習10-2 用按鈕控制動作狀態10-15
實習10-3 矩陣鍵盤10-26
第11章 計時器之基礎實習11-1
實習11-1 使用計時器做閃爍燈11-2
實習11-2 使用計時中斷做閃爍燈11-11
第12章 計數器之基礎實習12-1
實習12-1 用計數器改變輸出狀態12-2
實習12-2 用計數中斷改變輸出狀態12-14
第13章 外部中斷之基礎實習13-1
實習13-1 接到外部中斷信號時改變輸出狀態13-2
第14章 串列埠之基礎實習14-1
實習14 -1 用串列埠來擴充輸出埠14-2
實習14-2 用串列埠單向傳送資料14-7
實習14-3 兩個MCS-51互相傳送資料14-16
實習14- 4 多個MCS-51互相傳送資料14-27
第3篇 基礎電機控制實習15-1
第15章 電動機之起動與停止15-3
第16章 電動機之正逆轉控制16-1
第17章 三相感應電動機之Y-△自動起動17-1
第18章 順序控制18-1
第19章 電動門19-1
第20章 單按鈕控制電動機之起動與停止20-1
第4篇 專題製作21-1
第21章 用七段顯示器顯示數字21-3
第22章 多位數字之掃描顯示 22-1
實習22-1 五位數之掃描顯示 22-2
實習22-2 閃爍顯示 22-11
實習22-3 移動顯示 22-14
第23章 五位數計時器23-1
第24章 電子琴24-1
第25章 聲音產生器25-1
實習25-1 忙音產生器25-2
實習25-2 鈴聲產生器25-7
實習25-3 警告聲產生器25-11
實習25-4 音樂盒25-14
第26章 用點矩陣LED顯示器顯示字元26-1
第27章 用點矩陣LED顯示器做活動字幕27-1
第28章 文字型LCD模組之應用28-1
實習28-1 用文字型LCD模組顯示字串28-2
實習28-2 用文字型LCD模組顯示自創之字元或圖形28-25
實習28-3 用一個文字型LCD模組製作四個計數器28-33
第29章 步進馬達29-1
實習29-1 步進馬達的基本認識29-2
實習29-2 2相步進馬達的1相激磁29-15
實習29-3 2相步進馬達的2相激磁29-22
實習29-4 2相步進馬達的1-2相激磁31-26
第30章 數位直流電壓表 30-1
第31章 數位溫度控制器 31-1
第32章 紅外線遙控開關 32-1
第33章 個人電腦使用Visual Basic與MCS-51
連線做監控 33-1
附錄 常用資料(附錄1、附錄3至11請見本書附贈光碟)附-1
附錄1 AT89X51.H的內容附-2
附錄2 本書附贈之光碟附-8
附錄3 本書所需之器材附-13
附錄4 常用零件的接腳圖附-16
附錄5 各廠牌MCS-51相容產品互換指引附-21
附錄6 固態電驛SSR附-21
附錄7 如何提高抗干擾的能力附-23
附錄8 加強功能型51系列產品附-26
附錄9 認識HEX檔附-26
附錄10 使用具有ISP功能的AT89S51下載並執行程式附-28
附錄11 使用具有ISP功能的P89C51RD2下載並執行程式附-36