圖書內容
本書從嵌入式系統概念出發,以套用最廣泛的51單片機為主介紹嵌入式系統開發技術。主要內容包括:單片機的內部結構、指令系統、內部各功能部件的工作原理、套用編程及外部擴展技術。本書力圖體現實用性和先進性,採用彙編語言和
C語言相對照的編程方式, 對新出現的器件和技術如USB、I2C、SPI、CAN串列匯流排、觸控螢幕、條形碼等進行了論述。
本教材安排了實驗章節作為實訓環節,並對仿真調試及設計軟體Proteus進行了介紹,為其使用方便提供了電路圖。本書集知識性、趣味性、實用性於一體,使學生帶著興趣學習和實踐。 本書的知識點安排得當,編排由淺入深、條理清晰,並精心安排了大量套用實例,每章末有小結、思考題與習題,書後附參考答案。 本書可作為計算機類、信息類、機電類等專業本科生的教材,也可作為相關專業高職高專學生的教材或教學參考書,還可供相關工程技術人員參考。
目錄
緒論
*第0章 計算機的基礎知識
0.1 微型計算機的基本結構和工作原理
0.1.1 微型計算機的系統結構
0.1.2 微型計算機的基本工作原理
0.1.3 微型計算機的主要技術指標
0.2 計算機中的數制與碼制
0.2.1 計算機中的數
0.2.2 計算機中的有符號數的表示
0.2.3 進位和溢出
0.2.4 BCD碼
0.2.5 BCD碼的運算
0.2.6 ASCII碼
0.3 小結
思考題與習題0
第1章 51單片機結構
1.1 51單片機內部結構
1.1.1 概述
1.1.2 CPU
1.2 存儲器
1.2.1 程式存儲器
1.2.2 外部數據存儲器
1.2.3 內部數據存儲器
1.3 特殊功能暫存器
1.4 時鐘電路與復位電路
1.4.1 時鐘電路
1.4.2 單片機的時序單位
1.4.3 復位電路
1.5 引腳功能
1.5.1 可匯流排擴展的單片機引腳
1.5.2 不可匯流排擴展的單片機引腳
1.6 小結
思考題與習題1
第2章 51單片機的指令系統
2.1 定址方式
2.1.1 立即定址
2.1.2 直接定址
2.1.3 暫存器定址
2.1.4 暫存器間接定址
2.1.5 變址定址
2.1.6 相對定址
2.1.7 位定址
2.2 數據傳送與交換指令
2.2.1 傳送類指令
2.2.2 交換指令
2.3 算術運算和邏輯運算指令
2.3.1 算術運算和邏輯運算指令對標誌位的影響
2.3.2 以A為目的運算元的算術運算和邏輯運算指令 2.3.3 以dir為目的運算元的邏輯運算指令 2.3.4 加1、減1指令 2.3.5 十進制調整指令 2.3.6 專對A的指令 2.3.7 乘、除法指令 2.3.8 指令綜合套用舉例 2.4 控制轉移指令 2.4.1 調用程式和返回類指令 2.4.2 轉移指令 2.4.3 空操作指令 2.4.4 指令套用舉例 2.5 位操作指令 2.6 小結 思考題與習題2 第3章 51單片機彙編語言程式設計 3.1 概述 3.2 偽指令 3.3 順序程式設計 3.4 分支程式設計 3.5 循環程式設計 3.6 位操作程式設計 3.7 子程式 3.8 小結 思考題與習題3 *第4章 單片機的C語言編程——C51 4.1 C51程式結構 4.2 C51的數據類型 4.3 數據的存儲器類型和存儲器模式 4.3.1 數據的存儲器類型 4.3.2 存儲器模式 4.3.3 變數說明舉例 4.4 指針 4.4.1 指針和指針變數 4.4.2 指針變數的數據類型和存儲類型 4.4.3 指針變數的說明 4.4.4 指向數組的指針變數 4.5 C51對SFR、可定址位、存儲器和I/O口的定義 4.5.1 特殊功能暫存器SFR定義 4.5.2 對位變數的定義 4.5.3 C51對存儲器和外接I/O口的絕對地址訪問 4.6 C51的運算符 4.7 函式 4.7.1 函式的分類 4.7.2 函式的定義 4.7.3 函式的調用 4.7.4 對被調函式的說明 4.8 C語言編程實例 4.8.1 C語言程式的反彙編程式(原始碼) 4.8.2 順序程式的設計 4.8.3 循環程式的設計 4.8.4 分支程式的設計 4.9 彙編語言和C語言的混合編程 4.9.1 C語言程式和彙編語言程式參數的傳遞 4.9.2 C 語言程式調用彙編語言程式舉例 4.9.3 C語言和彙編語言混合編程傳遞的參數多於3個的編程方法 4.10 小結 思考題與習題4 第5章 輸入、輸出接口P0~P3 5.1 P0~P3並行接口的功能和內部結構 5.1.1 連線埠功能 5.1.2 連線埠的內部結構 5.2 編程舉例 5.3 用並行口設計LED數碼顯示器和鍵盤電路 5.3.1 用並行口設計LED顯示電路 5.3.2 用並行口設計鍵盤電路 5.4 小結 思考題與習題5 第6章 51單片機的中斷系統 6.1 8XX51中斷系統結構 6.1.1 中斷源 6.1.2 中斷控制的有關暫存器 6.2 中斷回響過程 6.2.1 中斷處理過程 6.2.2 中斷請求的撤除 6.3 中斷的程式設計 6.3.1 彙編語言中斷程式的設計 6.3.2 C51中斷程式的設計 6.4 外部設備中斷的接入 6.5 小結 思考題與習題6 第7章 單片機的定時/計數器 7.1 定時/計數器的結構和工作原理 7.2 定時/計數器的暫存器 7.2.1 定時/計數器方式暫存器TMOD 7.2.2 定時/計數器控制暫存器TCON 7.3 定時/計數器的工作方式 7.4 定時/計數器的應用程式設計 7.4.1 定時/計數器的計數初值C的計算和裝入 7.4.2 定時/計數器的初始化編程 7.4.3 套用編程舉例 7.4.4 門控位的套用 7.5 小結 思考題與習題7 第8章 單片機的串列接口 8.1 概述 8.1.1 同步和異步方式 8.1.2 通信方向 8.1.3 串列通信接口的任務 8.1.4 串列通信接口 8.1.5 波特率和傳送接收時鐘 8.1.6 通信線的連線 8.1.7 關於 RS-232 8.1.8 單片機串列通信電路 8.2 單片機串列口的結構與工作原理 8.2.1 串列口結構 8.2.2 工作原理 8.2.3 波特率的設定 8.3 串列口的控制暫存器 8.3.1 串列口的控制暫存器SCON 8.3.2 電源控制暫存器PCON 8.4 串列口的工作方式 8.5 串列口的套用編程 8.5.1 查詢方式 8.5.2 中斷法 8.5.3 串列通信編程實例 8.6 利用串列口方式0擴展I/O口 *8.7 單片機和PC的串列通信 *8.8 USB 接口 8.8.1 USB協定簡介 8.8.2 USB協定的實現 8.8.3 用USB 連線PC和單片機 8.9 小結 思考題與習題8 第9章 單片機匯流排與系統擴展 9.1 單片機系統匯流排和系統擴展方法 9.1.1 單片機系統匯流排信號 9.1.2 外圍晶片的引腳規律 9.1.3 系統擴展的方法 9.1.4 地址解碼器 9.2 存儲器的擴展 9.2.1 存儲器的基本知識 9.2.2 程式存儲器的擴展 9.3 數據存儲器的擴展 *9.4 同時擴展SRAM和大於64KB Flash的例子 9.5 並行I/O接口的擴展 9.5.1 通用鎖存器、緩衝器的擴展 9.5.2 可程式並行接口晶片的擴展 9.6 存儲器和I/O口綜合擴展電路 *9.7 擴展多功能接口晶片8155 9.8 小結 思考題與習題9 第10章 單片機套用接口技術 10.1 並行D/A接口技術 10.1.1 D/A概述 10.1.2 DAC0832的擴展接口 *10.1.3 DAC1210的擴展接口 10.2 A/D接口技術 10.2.1 A/D概述 10.2.2 ADC0809的擴展接口 *10.2.3 AD574的擴展接口 *10.3 V/F(電壓/頻率)轉換接口 *10.4 F/V(頻率/電壓)轉換接口 10.5 人機接口技術 10.5.1 鍵盤接口擴展 10.5.2 LED顯示器擴展 *10.5.3 用8279擴展鍵盤與LED顯示器 10.5.4 LCD顯示器擴展 10.6 隔離與驅動接口 *10.7 觸控螢幕 10.7.1 電阻式觸控螢幕的工作原理 10.7.2 電容式觸控螢幕的工作原理 10.7.3 紅外線式觸控螢幕的工作原理及特點 10.7.4 表面聲波觸控螢幕的工作原理 10.7.5 電阻式觸控螢幕與單片機的接口 *10.8 條形碼 10.8.1 條形碼的類型 10.8.2 條形碼的格式 10.8.3 條形碼的生成 10.8.4 條形碼的識別 10.8.5 條形碼示例 10.9 小結 思考題與習題10 *第11章 串列匯流排技術 11.1 I2C匯流排擴展技術 11.1.1 I2C匯流排簡介 11.1.2 I2C匯流排的通信規程 11.1.3 串列I2C E2PROM AT24CXX 11.1.4 I2C匯流排的編程實現 11.1.5 串列E2PROM和8XX51接口實例 11.1.6 串列鐵電FRAM的擴展 11.2 SPI匯流排擴展接口及套用 11.2.1 SPI的原理 11.2.2 SPI匯流排的軟體模擬及擴展技術 11.2.3 串列D/A轉換器TLC5615的擴展 11.2.4 8位串列A/D轉換器TLC549的擴展 11.3 現場匯流排CAN 11.3.1 CAN匯流排特點 11.3.2 CAN匯流排協定 11.3.3 CAN 匯流排接口 11.4 小結 思考題與習題11 第12章 以MCU為核心的嵌入式系統的設計與調試 12.1 嵌入式系統開發與開發工具 12.1.1 MCU為核心的嵌入式系統的構成 12.1.2 嵌入式套用系統的設計原則 12.1.3 嵌入式系統的開發工具 12.1.4 嵌入式系統的調試
*12.2 嵌入式系統的抗干擾技術 12.2.1 軟體抗干擾 12.2.2 硬體抗干擾 12.2.3 “看門狗”技術 12.3 單片機套用系統舉例——電子顯示屏 12.4 小結 思考題與習題12 第13章 實踐訓練 13.1 概述 13.2 可線上編程(ISP)多功能實驗板 13.3 仿真調試技術 13.3.1 Proteus概述 13.3.2 Proteus中51單片機套用系統的開發 13.3.3 單片機仿真調試集成軟體包Keil μVision2介紹 13.3.4 Keil和Proteus的聯合使用仿真C51程式 13.4 單片機編程(下載)方法 13.5 實驗指導 實驗1 程式設計 實驗2 並行接口輸入、輸出實驗 實驗3 中斷實驗 實驗4 定時/計數器實驗 實驗5 串列通信實驗 實驗6 矩陣鍵盤和顯示程式設計 實驗7 串列E2PROM實驗 *實驗8 串列D/A實驗 *實驗9 串列A/D實驗 實驗10 電子廣告顯示屏控制實驗 *實驗11 液晶顯示器顯示控制實驗 13.6 課程設計選題 附錄A 51單片機指令表 附錄B C51的庫函式 思考題與習題解答 參考文獻