本書採用與8051相容,且功能更強大的單晶片微電MPC82G516。並有系統地介紹MPC82G516的架構、介面與相關的軟體,同時配合筆者所設計的模擬實習板,可在Keil的Debug環境下透過USB界面,進行各項的軟體實驗。
本書採用與8051相容,且功能更強大的單晶片微電MPC82G516。並有系統地介紹MPC82G516的架構、介面與相關的軟體,同時配合筆者所設計的模擬實習板,可在Keil的Debug環境下透過USB界面,進行各項的軟體實驗。
第一章 單晶片微電腦MCS-51與MPC82G516 1-1
1-1 單晶片微電腦MCS-51與MPC82G516特性 1-2
1-1.1 MPC82G516特性介紹 1-3
1-1.2 MPC82G516接腳介紹 1-6
1-1.3 MPC82G516記憶體 1-18
1-2 MPC82G516硬體介紹 1-30
1-2.1 MPC82G516輸出入驅動電路 1-30
1-2.2 8051改為MPC82G516模擬實習板 1-35
v1-2.3 MPC82G516模擬實習板 1-38
第二章 Keil μVision4與工具軟體 2-1
2-1 C語言與Keil基礎操作 2-3
2-1.1 C語言格式 2-3
2-1.2 如何進入Keil軟體 2-6
2-1.3 Keil基本操作 2-8
2-2 專案程式 2-16
2-2.1 專案程式執行 2-17
2-2.2 建立新專案 2-20
2-3 Build與Debug進階操作 2-26
2-3.1 Build(建立)進階操作 2-26
2-3.2 Debug(偵錯)視窗操作 2-28
2-4 線上模擬(ICE)與線上燒錄(DFU)實習 2-36
2-4.1 Keil與線上模擬(ICE)操作 2-36
2-4.2 建立線上模擬(ICE)新專案 2-39
2-4.3 線上燒錄器(DFU)操作 2-42
第三章 C語言程式介紹 3-1
3-1 資料型態與運算式 3-2
3-1.1 常數及變數資料 3-2
3-1.2 常數及變數名稱 3-5
3-1.3 變數的資料型態 3-7
3-1.4 C語言的運算式與運算子 3-34
3-2 C語言指令實習 3-50
3-2.1 if指令實習 3-50
3-2.2 switch-case-default指令實習 3-58
3-2.3 while指令實習 3-61
3-2.4 for指令實習 3-67
3-2.5 do-while指令實習 3-74
3-2.6 break指令實習 3-75
3-2.7 continue指令實習 3-77
3-3 C語言函數庫實習及假指令 3-78
3-3.1 自定函數 3-78
3-3.2 系統函數 3-83
3-3.3 前置處理假指令 3-89
3-4 多個程式編譯實習 3-93
3-4.1 單一檔案多個程式 3-93
3-4.2 多檔案程式範例 3-94
3-4.3 程式庫的應用 3-95
第四章 輸出入控制實習 4-1
4-1 基本輸出入實習 4-2
4-1.1 基本實習 4-2
4-1.2 紅黃綠燈輸出實習 4-9
4-2 步進馬達控制實習範例 4-15
4-2.1 步進馬達控制 4-15
4-2.2 步進馬達輸出實習 4-16
4-3 七段顯示器輸出實習 4-22
4-3.1 七段顯示器實習 4-22
4-3.2 七段顯示器應用實習 4-29
4-4 點矩陣LED顯示器控制與實習 4-33
4-4.1 點矩陣顯示器掃描控制 4-33
4-4.2 點矩陣顯示器掃描實習 4-36
4-5 文字型液晶顯示器控制與實習 4-50
4-5.1 文字型LCD控制 4-51
4-5.2 文字型LCD實習 4-59
4-6 繪圖型液晶顯示器控制與實習 4-72
4-6.1 繪圖型LCD內部功能介紹 4-73
4-6.2 繪圖型LCD指令碼工作 4-75
4-6.3 繪圖型LCD實習 4-78
第五章 中斷控制與外部中斷實習 5-1
5-1 MPC82G516中斷控制 5-3
5-1.1 MPC82G516中斷暫存器 5-4
5-1.2 中斷的設定 5-10
5-1.3 中斷程式的工作方式 5-14
5-2 外部中斷與按鍵中斷控制實習 5-15
5-2.1 外部中斷控制與實習 5-16
5-2.2 按鍵中斷(KBI)控制實習 5-24
5-3 鍵盤掃描實習 5-28
5-3.1 鍵盤掃描控制 5-28
5-3.2 鍵盤掃描實習 5-30
5-4 省電模式控制實習 5-43
5-4.1 外部中斷喚醒省電模式 5-44
5-4.2 降低系統頻率省電模式 5-46
第六章 計時器控制與實習 6-1
6-1 Timer0-1計時器控制實習 6-3
6-1.1 Timer0-1控制 6-5
6-1.2 Timer0-1實習 6-7
6-1.3 Timer0-1中斷實習 6-16
6-1.4 輸出頻率實習 6-21
6-1.5 輸出音樂實習 6-25
6-2 Timer2控制實習 6-31
6-2.1 Timer2自動重新載入實習 6-34
6-2.2 Timer2計時捕捉實習 6-40
6-2.3 Timer2計時中斷實習 6-43
6-2.4 Timer2時脈輸出音樂實習 6-45
6-2.5 萬年曆電子鐘 6-47
6-3 看門狗計時器控制實習 6-54
6-3.1 WDT控制 6-55
6-3.2 WDT範例實習 6-56
第七章 串列埠UART控制實習 7-1
7-1 串列埠UART1控制實習 7-2
7-1.1 串列埠UART1 mode0控制實習 7-5
7-1.2 串列埠UART1 mode1控制 7-11
7-1.3 UART人機界面 7-14
7-1.4 串列埠UART1 mode1實習 7-17
7-1.5 串列埠UART1的Timer2傳輸控制實習 7-22
7-1.6 串列埠UART1中斷實習 7-25
7-2 串列埠函數實習 7-28
7-2.1 串列埠函數printf()實習 7-29
7-2.2 串列埠函數putchar()及puts()實習 7-30
7-2.3 串列埠函數getchar()及getkey()實習 7-32
7-3 串列埠UART2控制實習 7-33
7-3.1 串列埠UART2時脈輸出 7-35
7-3.2 串列埠UART2控制 7-36
7-3.3 串列埠UART2 mode1實習 7-37
第八章 數位與類比轉換實習 8-1
8-1 數位/類比轉換器(DAC)實習 8-2
8-1.1 數位/類比轉換器(DAC)控制 8-2
8-1.2 數位/類比轉換器(DAC)實習 8-3
8-2 類比/數位轉換器(ADC)實習 8-9
8-2.1 類比/數位轉換器(ADC)控制 8-10
8-2.2 類比/數位轉換器(ADC)實習 8-12
第九章 串列式週邊界面(SPI)與應用控制實習 9-1
9-1 串列式週邊界面(SPI)控制實習 9-3
9-1.1 SPI傳輸控制 9-5
9-1.2 SPI傳輸控制步驟 9-10
9-1.3 SPI傳輸實習 9-12
9-2 串列式EEPROM控制實習 9-14
9-2.1 串列埠EEPROM控制 9-16
9-2.2 串列埠EEPROM實習 9-19
9-3 SD記憶卡控制實習 9-29
9-3.1 SD記憶卡介紹 9-29
9-3.2 SD卡硬體架構 9-30
9-3.3 SD卡的SPI控制 9-37
9-3.4 SD卡的SPI實習 9-47
第十章 可規畫計數陣列(PCA)控制實習 10-1
10-1 PCA計數溢位計時控制實習 10-3
10-1.1 PCA計數溢位計時器控制 10-5
10-1.2 PCA計數溢位計時器實習 10-6
10-2 PCA軟體計時控制實習 10-9
10-2.1 PCA軟體計時器控制 10-11
10-2.2 PCA軟體計時器實習 10-12
10-3 PCA高速輸出控制實習 10-15
10-3.1 PCA計數高速輸出控制 10-16
10-3.2 PCA計數高速輸出實習 10-16
10-3.3 PCA計數高速輸出音樂實習 10-19
10-4 PCA脈波寬度調變(PWM)與直流馬達控制實習 10-23
10-4.1 基本IO及Timer的PWM控制實習 10-23
10-4.2 PCA計數PWM控制 10-29
10-4.3 PCA計數PWM實習 10-30
10-4.4 PCA計數PWM直流馬達控制實習 10-31
10-5 PCA計時捕捉(captuch)與光學編碼器控制實習 10-36
10-5.1 PCA計時捕捉器控制 10-36
10-5.2 PCA計時捕捉器實習 10-37
10-5.3 PCA光學編碼器控制實習 10-40