單片機原理與介面技術
c語言版
《單片機原理與介面技術(C語言版)》是2015年清華大學出版社出版的圖書。
本書以應用最廣泛的MCS51增強型單片機為對象,系統地講解了單片機結構與原理、編程方法、介面及應用。內容包括單片機軟硬體開發工具,MCS51單片機結構原理、指令系統、單片機C語言及編程、中斷、定時器、串列口、系統擴展介面、人機交互介面、開關量和模擬量介面,以及單片機應用實例。
本書從教學和初學者的角度講解單片機的基本內容和應用,概念清晰準確;以C語言為主要編程語言,講解、舉例編程均用C語言(有彙編語言對照);以程序開發軟體Keil C、電路設計模擬運行調試軟體Proteus為教學、學習和訓練工具。理論與實踐緊密結合。
本書適合作具有C語言基礎的計算機、電子、通信、自動化、電氣、測控技術與儀器等專業的本科學生的教材,也可以作為各種培訓機構的教材,或供相關工程技術人員和自學者參考使用。
第1章單片機及其開發工具
1.1單片機的基本概念
1.2單片機的發展
1.2.1單片機的發展歷史
1.2.2單片機技術的發展
1.3單片機的特點及應用
1.3.1單片機的特點
1.3.2單片機的應用
1.4常用單片機簡介
1.4.1MCS51系列單片機
1.4.2ATMEL89系列單片機
1.4.3STC系列單片機
1.4.4常見的其他系列單片機
1.5單片機程序開發軟體Keil C簡介
1.5.1Keil C集成工具
1.5.2Keil C操作方法
1.5.3Keil C程序開發方法
1.5.4Keil C調試運行方法
1.6單片機系統模擬軟體Proteus簡介
1.6.1Proteus ISIS操作方法
1.6.2Proteus ISIS原理圖設計方法
1.6.3Proteus ISIS原理圖設計舉例
1.6.4Proteus ISIS電路模擬運行方法
思考題與習題
第2章MCS51單片機的結構與原理
2.1MCS51單片機的內部結構及CPU
2.1.1MCS51單片機的結構及特點
2.1.2MCS51單片機的內部原理結構
2.1.3MCS51單片機的CPU
2.2MCS51單片機的引腳與匯流排結構
2.2.1MCS51單片機的引腳信號及功能
2.2.2MCS51單片機的外部匯流排結構
2.3MCS51單片機的存儲器結構
2.3.1程序存儲器結構
2.3.2片內數據存儲器結構
2.3.3片外數據存儲器結構
2.4MCS51單片機的時鐘及CPU時序
2.4.1時鐘電路及時鐘信號
2.4.2CPU時序
2.5MCS51單片機的複位
2.5.1複位狀態
2.5.2複位電路
2.6MCS51單片機的低功耗工作方式
2.6.1低功耗工作結構及控制
2.6.2空閑工作方式
2.6.3掉電工作方式
2.7MCS51單片機的輸入/輸出埠
2.7.1P1口
2.7.2P2口
2.7.3P3口
2.7.4P0口
2.7.5埠負載能力和介面要求
思考題與習題
第3章MCS51指令系統及彙編程序設計
3.1彙編語言概述
3.1.1指令和機器語言
3.1.2彙編語言
3.1.3彙編語言格式
3.2MCS51單片機定址方式
3.2.1立即數定址
3.2.2寄存器定址
3.2.3直接定址
3.2.4寄存器間接定址
3.2.5變址定址
3.2.6位定址
3.2.7指令定址
3.2.8定址空間及指令中符號註釋
3.3MCS51單片機指令系統
3.3.1數據傳送指令
3.3.2算術運算指令
3.3.3邏輯操作指令
3.3.4控制程序轉移指令
3.3.5位操作指令
3.4MCS51單片機偽指令
3.5彙編語言程序設計
3.5.1簡單程序設計
3.5.2分支程序設計
3.5.3循環程序設計
3.5.4子程序設計
思考題與習題
第4章單片機C語言及程序設計
4.1C51概述
4.1.1C語言編程的優勢
4.1.2C51與ANSI C的區別
4.1.3C51擴充的關鍵字
4.2C51數據類型及存儲
4.2.1C51的數據類型
4.2.2C51數據的存儲
4.3C51一般變數的定義
4.3.1C51變數的定義格式
4.3.2C51變數的存儲類型
4.3.3C51變數的存儲區
4.3.4C51變數定義舉例
4.3.5C51變數的存儲模式
4.3.6C51變數的絕對定位
4.3.7C51設備變數的概念
4.4C51特殊功能寄存器的定義
4.4.18位特殊功能寄存器的定義
4.4.216位特殊功能寄存器的定義
4.5C51位變數的定義
4.5.1bit型位變數的定義
4.5.2sbit型位變數的定義
4.6C51指針與結構體的定義
4.6.1通用指針
4.6.2存儲器專用指針
4.6.3指針變換
4.6.4C51指針應用
4.6.5C51結構體定義
4.7C51的輸入/輸出
4.7.1基本輸入/輸出函數
4.7.2格式輸出函數printf
4.7.3格式輸入函數scanf
4.8C51函數的定義
4.8.1C51函數定義的一般格式
4.8.2C51中斷函數的定義
4.9C51與彙編語言混合編程
4.9.1在C51函數中嵌入彙編程序
4.9.2C51程序與彙編程序混合編程
思考題與習題
第5章MCS51單片機中斷系統
5.1中斷系統概述
5.1.1中斷的基本概念
5.1.2中斷的功能
5.2中斷系統結構、原理及控制
5.2.1中斷系統結構與原理
5.2.2中斷通道和中斷源
5.2.3外中斷觸發方式
5.2.4中斷請求標誌
5.2.5中斷允許控制
5.2.6中斷優先順序控制
5.3中斷響應及處理過程
5.3.1中斷響應
5.3.2中斷處理和中斷返回
5.4外部中斷應用舉例
5.4.1中斷應用程序結構
5.4.2外部中斷應用舉例
思考題與習題
第6章MCS51單片機定時器/計數器
6.1單片機定時器/計數器的結構及原理
6.1.1單片機定時器/計數器結構
6.1.2單片機定時器/計數器的工作原理
6.2定時器/計數器T0、T1
6.2.1T0、T1的特殊功能寄存器
6.2.2T0、T1的工作模式
6.2.3T0、T1的使用方法
6.3定時器/計數器T2
6.3.1T2的特殊功能寄存器
6.3.2T2的工作方式
6.4定時器/計數器應用舉例
思考題與習題
第7章MCS51單片機串列口
7.1串列通信基礎知識
7.1.1數據通信
7.1.2非同步通信和同步通信
7.1.3波特率
7.1.4通信方向
7.1.5串列通信介面種類
7.2串列口結構及控制
7.2.1MCS51單片機串列口結構
7.2.2串列口特殊功能寄存器
7.2.3波特率設計
7.3串列口工作方式
7.3.1串列口方式0
7.3.2串列口方式1
7.3.3串列口方式2和方式3
7.4串列口應用舉例
7.4.1串列口方式0應用
7.4.2串列口方式1、方式3應用
7.5單片機與PC通信介面電路
7.5.1介面晶元MAX232簡介
7.5.2單片機與PC串列通信介面電路
思考題與習題
第8章單片機系統擴展介面技術
8.1介面的基本概念
8.1.1單片機應用系統構成
8.1.2介面的概念
8.1.3介面的基本功能
8.1.4介面的結構
8.1.5埠及編址
8.2用并行方式擴展數據存儲器
8.2.1MCS51單片機三匯流排結構
8.2.2常用的數據存儲器
8.2.3單片機訪問片外RAM的操作時序
8.2.4擴展數據存儲器
8.3用簡單晶元擴展并行I/O口
8.3.1擴展I/O口常用的門電路晶元
8.3.2簡單擴展I/O口舉例
8.4用可編程晶元擴展并行I/O口
8.4.18255A的結構
8.4.28255A的引腳定義
8.4.38255A的控制字
8.4.48255A的工作方式
8.4.58255A的應用舉例
8.5用串列方式擴展數據存儲器
8.5.1I2C匯流排
8.5.2I2C匯流排擴展存儲器
思考題與習題
第9章單片機人機交互介面技術
9.1鍵盤介面技術
9.1.1鍵盤基本問題
9.1.2鍵盤結構及處理程序
9.1.3中斷掃描方式
9.2LED顯示器及介面技術
9.2.1LED顯示器結構及原理
9.2.2LED顯示器顯示方式
9.2.3LED顯示器與單片機的介面及程序
9.3LCD顯示器及介面技術
9.3.1字元式LCD LM016L
9.3.2點陣式LCD AMPIRE12864
思考題與習題
第10章單片機模擬量、開關量介面技術
10.1A/D轉換器及介面技術
10.1.2串列介面A/D轉換器TLC2543及介面技術
10.1.3單片機片內A/D轉換器及應用
10.2D/A轉換器及介面技術
10.2.1并行介面D/A轉換器DAC0832及介面技術
10.2.2串列介面D/A轉換器TLC5615及介面技術
10.3開關量輸出介面技術
10.3.1光電耦合器件介面技術
10.3.2繼電器介面技術
10.3.3直流電機控制介面技術
10.3.4步進電機控制介面技術
思考題與習題
第11章單片機應用實例
11.1單片機應用開發方法
11.1.1總體設計
11.1.2硬體設計
11.1.3軟體設計
11.1.4系統調試與測試
11.2基於單片機的計算器設計
11.2.1系統電路設計
11.2.2系統功能設計
11.2.3系統程序設計
11.3基於單片機的萬年曆設計
11.3.1實時時鐘晶元DS1302簡介
11.3.2數字溫度感測器DS18B20簡介
11.3.3系統電路設計
11.3.4系統功能設計
11.3.5系統程序設計
課程設計題目
附錄AASCII碼錶
附錄BMCS51指令表
附錄CC51庫函數
C.1寄存器頭文件
C.2字元函數
C.3一般I/O函數
C.4標準函數
C.5數學函數
C.6內部函數
C.7字元串函數
C.8絕對地址訪問函數
附錄DLCD1602字元表
參考文獻