本書詳細(xì)介紹了MCS-51單片機的硬件結(jié)構(gòu)、指令系統(tǒng)和外部擴展電路的設(shè)計及匯編語言程序設(shè)計。對編寫的程序作了詳細(xì)的注釋,從第6章開始,以中斷程序的編寫為主,加強了定時中斷編程的分析與設(shè)計思路的說明,單片機外部擴展接口電路的編址和擴展綜合電路的設(shè)計介紹。介紹了單片機C語言基本知識,C51編寫的程序基本上是與第6章~第12章的例題一一對應(yīng)。介紹了常用的I2C和SPI串行總線接口設(shè)計,單片機應(yīng)用系統(tǒng)綜合設(shè)計舉例,并在附錄中詳細(xì)介紹了常用單片機開發(fā)環(huán)境——uVision2集成開發(fā)環(huán)境的使用。本書突出了選取內(nèi)容的實用性,書中的舉例大多來自于工程實踐和教學(xué)實踐,內(nèi)容豐富。本書適應(yīng)于未開設(shè)《微機原理及接口技術(shù)》課程或已開設(shè)該課程的工科院校本科生單片機課程的教學(xué)用書,也可以作為從事單片機研發(fā)、應(yīng)用等工作的專業(yè)技術(shù)人員的參考用書。
適讀人群 :本科電氣信息類專業(yè)學(xué)生
1)對編寫的程序作了詳細(xì)注釋,便于自學(xué)與理解。
2)針對C51語言編程容易解決的算法問題,減少了算術(shù)運算等程序的舉例。
3)中斷技術(shù)的應(yīng)用是微處理器應(yīng)用系統(tǒng)的基本技能,無論是應(yīng)用C51還是匯編語言編程,對于初學(xué)者都是難點,本書加強了中斷技術(shù)應(yīng)用舉例,尤其是定時中斷編程的分析與思路的形成說明,從第6章開始,以中斷程序的編寫為主,提高讀者掌握工程實用技術(shù)的技能。
4)加強了單片機擴展外部接口電路的編址和擴展綜合電路設(shè)計的描述,無論是增強型8051單片機還是應(yīng)用C51語言編程,它們都是設(shè)計微處理器應(yīng)用系統(tǒng)必須掌握的基本技能之一。
5)第13章的例題和應(yīng)用C51編寫的程序基本上是與第6~12章的例題一一對應(yīng),便于讀者對照C51和匯編程序的異同點,尤其是編程思路的共同點。
微型計算機自20世紀(jì)70年代誕生以來,得以迅速地發(fā)展、普及和應(yīng)用。隨著增強型8051單片機和嵌入式微處理器技術(shù)的飛速發(fā)展,以及單片機C語言應(yīng)用的普及,單片機應(yīng)用領(lǐng)域越來越廣泛。由于MCS-51單片機與增強型8051單片機和嵌入式微處理器的基本原理和編程方法基本一致,而MCS-51單片機的基本原理和應(yīng)用技術(shù)易學(xué)易懂,所以學(xué)習(xí)和掌握MCS-51單片機是學(xué)習(xí)與應(yīng)用增強型8051單片機和嵌入式微處理器技術(shù)的基礎(chǔ)。
本書在詳細(xì)闡述單片機原理及結(jié)構(gòu)的基礎(chǔ)上,考慮到目前教學(xué)改革要求減少課內(nèi)課時,增加課外學(xué)習(xí)和實踐的時間,以及增強型8051單片機和單片機C51語言的普遍應(yīng)用等因素,編寫時重點做了如下的思考:
1)對編寫的程序作了詳細(xì)注釋,便于自學(xué)與理解。
2)針對C51語言編程容易解決的算法問題,減少了算術(shù)運算等程序的舉例。
3)中斷技術(shù)的應(yīng)用是微處理器應(yīng)用系統(tǒng)的基本技能,無論是應(yīng)用C51還是匯編語言編程,對于初學(xué)者都是難點,本書加強了中斷技術(shù)應(yīng)用舉例,尤其是定時中斷編程的分析與思路的形成說明,從第6章開始,以中斷程序的編寫為主,提高讀者掌握工程實用技術(shù)的技能。
4)加強了單片機擴展外部接口電路的編址和擴展綜合電路設(shè)計的描述,無論是增強型8051單片機還是應(yīng)用C51語言編程,它們都是設(shè)計微處理器應(yīng)用系統(tǒng)必須掌握的基本技能之一。
5)第13章的例題和應(yīng)用C51編寫的程序基本上是與第6~12章的例題一一對應(yīng),便于讀者對照C51和匯編程序的異同點,尤其是編程思路的共同點。
本書引入了工程設(shè)計中常應(yīng)用的總線及接口技術(shù)(如I2C、SPI等)、單片機的C51程序設(shè)計以及KeilC51開發(fā)環(huán)境等內(nèi)容,對提高讀者應(yīng)用單片機技術(shù)的工程實踐綜合能力、加強C語言的應(yīng)用能力具有較高的實際應(yīng)用價值。
全書共14章。第1章介紹了微型計算機的基本組成與工作原理,以及單片機技術(shù)的發(fā)展;第2~7章詳細(xì)介紹了MCS-51單片機的硬件結(jié)構(gòu)、指令系統(tǒng)和匯編程序設(shè)計、片內(nèi)各部件的功能和編程應(yīng)用;第8~11章介紹了各種類型的外部擴展部件的接口電路及編程設(shè)計,如存儲器、I/O接口、鍵盤及顯示、A-D和D-A轉(zhuǎn)換等;第12章介紹了I2C總線、SPI總線在內(nèi)的串行總線接口的時序和接口驅(qū)動程序;第13章介紹了單片機C51語言及其編程方法;第14章從實際應(yīng)用出發(fā)詳細(xì)介紹了單片機應(yīng)用系統(tǒng)的開發(fā)過程、單片機應(yīng)用系統(tǒng)的可靠性設(shè)計及單片機應(yīng)用系統(tǒng)綜合設(shè)計舉例。最后,在附錄中,詳細(xì)介紹了單片機開發(fā)環(huán)境——uVision2集成開發(fā)環(huán)境的使用及用戶程序的調(diào)試過程。
本書的參考學(xué)時為40~64學(xué)時。教師可根據(jù)實際情況,對書中的內(nèi)容進(jìn)行取舍。
本書由廣西科技大學(xué)蔡啟仲擔(dān)任主編,并完成第1章、附錄A的編寫以及全書的統(tǒng)稿工作;柯寶中、欽州學(xué)院包敬海擔(dān)任副主編,柯寶中完成第8章和第12章的編寫,并參與全書的統(tǒng)稿工作,包敬海完成第2章和第4章的編寫工作。此外,參加本書編寫工作的還有陳文輝、劉清正、劉瑞琪、藍(lán)會立和梁喜幸。其中,陳文輝完成第13章和附錄B的編寫,并參與全書的統(tǒng)稿工作;劉清正完成第5章、第6章和第7章的編寫工作;劉瑞琪完成第3章和第11章的編寫工作;藍(lán)會立完成第9章和第10章的編寫工作;廣西科技大學(xué)鹿山學(xué)院梁喜幸完成第14章的編寫工作。
書中錯誤及疏漏之處在所難免,敬請讀者批評指正。
編者
前言
第1章緒論
11計算機中常用的編碼
12微型計算機的分類與組成
121微型計算機系統(tǒng)的分類
122微型計算機系統(tǒng)的組成
13微型計算機的基本工作原理
14單片機的基本概念
141單片機的特點
142單片機的發(fā)展概況
143單片機的應(yīng)用
144常用的系列單片機
習(xí)題
第2章51單片機的硬件結(jié)構(gòu)
2151單片機的內(nèi)部結(jié)構(gòu)與引腳功能
21151單片機的基本組成
21251單片機的引腳功能
2251單片機的CPU
221運算部件
222控制部件和振蕩器
223CPU時序
23存儲器結(jié)構(gòu)
231程序存儲器
232數(shù)據(jù)存儲器
233特殊功能寄存器(SFR)
234位尋址空間
24并行輸入/輸出端口
241P0端口
242P1端口
243P2端口
244P3端口
245端口電路小結(jié)
2551單片機復(fù)位操作與復(fù)位電路
251復(fù)位操作與復(fù)位狀態(tài)
252復(fù)位電路
253時鐘電路
254“看門狗”技術(shù)
2651單片機的低功耗運行方式
261方式設(shè)定
262空閑工作方式
263掉電工作方式
習(xí)題
第3章51單片機的指令系統(tǒng)
3151單片機的匯編指令
311一個簡單的程序示例
312指令格式
313指令類型
314常用符號說明
3251單片機指令的尋址方式
3351單片機的指令集
331數(shù)據(jù)傳送類指令
332算術(shù)運算類指令
333邏輯運算及移位類指令
334控制轉(zhuǎn)移類指令
335位操作類指令
習(xí)題
第4章匯編語言程序設(shè)計
41單片機匯編語言程序設(shè)計概述
411機器語言、匯編語言和C語言
412匯編語言的特點
42偽指令
43匯編語言程序的基本結(jié)構(gòu)形式
431順序程序
432分支程序
433循環(huán)程序
434位操作程序
44匯編語言程序設(shè)計舉例
441順序程序設(shè)計
442分支程序設(shè)計
443循環(huán)程序設(shè)計
444子程序設(shè)計
習(xí)題
第5章51單片機定時器/計數(shù)器
5151單片機定時器/計數(shù)器的結(jié)構(gòu)
511定時器/計數(shù)器的核心原型
512定時器/計數(shù)器的組成
513定時器/計數(shù)器的工作方式寄存器TMOD
514控制寄存器TCON
52定時器/計數(shù)器的工作方式
521方式1
522方式2
523方式3
524方式0
53定時器/計數(shù)器的應(yīng)用
531方式1的應(yīng)用舉例
532方式2的應(yīng)用舉例
533方式3的應(yīng)用舉例
53451單片機外部輸入的計數(shù)脈沖信號的要求
習(xí)題
第6章中斷系統(tǒng)
61中斷系統(tǒng)概念
611中斷技術(shù)
612中斷技術(shù)的主要功能特點
613中斷技術(shù)的優(yōu)點
6251單片機的中斷系統(tǒng)及其管理
621中斷系統(tǒng)的結(jié)構(gòu)
622中斷源
623中斷請求標(biāo)志
624中斷控制
6351單片機的中斷響應(yīng)
631中斷響應(yīng)的條件
632中斷響應(yīng)的時間
633中斷請求的撤銷
64中斷系統(tǒng)的編程
641中斷服務(wù)程序編程的基本步驟
642外部中斷源的編程
643定時器/計數(shù)器中斷方法的編程
習(xí)題
第7章串行通信及應(yīng)用
71數(shù)據(jù)通信的基本概念
711根據(jù)通信方式分類
712根據(jù)同步方式分類
713根據(jù)數(shù)據(jù)傳輸方向分類
7251單片機串行口
721串行口的結(jié)構(gòu)
722串行口控制寄存器SCON
723電源控制寄存器PCON
73串行口工作方式
731方式0
732方式1
733方式2和方式3
74單片機串行口波特率
741波特率與字符傳輸速率
742波特率的計算
75串行口的應(yīng)用
751串行口擴展并行I/O口
752雙單片機異步串行通信
753多機通信
754RS-232總線及接口電路
習(xí)題
第8章51單片機的系統(tǒng)擴展
81三總線與地址編碼
81151單片機應(yīng)用系統(tǒng)總線
81251單片機系統(tǒng)總線的構(gòu)成
813單片機系統(tǒng)總線驅(qū)動能力擴展
81451單片機系統(tǒng)擴展外部部件的地址空間分配
82程序存儲器的擴展及應(yīng)用
821常用EPROM芯片介紹
822EPROM芯片的工作方式
823程序存儲器的擴展
824程序存儲器的讀控制與時序
83數(shù)據(jù)存儲器的擴展及應(yīng)用
831常用的靜態(tài)數(shù)據(jù)存儲器芯片介紹
832RAM芯片的工作方式
833數(shù)據(jù)存儲器的擴展
834數(shù)據(jù)存儲器的讀寫控制與時序
84程序存儲器和數(shù)據(jù)存儲器的綜合擴展
習(xí)題
第9章51單片機擴展I/O接口的設(shè)計
91并行I/O接口電路與編址
92可編程8255并行I/O接口芯片的擴展
9218255芯片介紹
9228255的工作方式
9238255與51單片機的接口及應(yīng)用
93可編程8155并行I/O接口芯片的擴展
9318155芯片介紹
9328155的I/O端口的工作方式
9338155與51單片機的接口及應(yīng)用
習(xí)題
第10章A-D和D-A轉(zhuǎn)換器的接口
101D-A轉(zhuǎn)換器接口
1011D-A轉(zhuǎn)換器原理
101251單片機與DAC0832的接口與編程
101351單片機與DAC1208的接口與編程
102A-D轉(zhuǎn)換器接口
1021A-D轉(zhuǎn)換器原理
102251單片機與ADC0809的接口
102351單片機與AD574的接口
習(xí)題
第11章51單片機與鍵盤、顯示器接口設(shè)計
111鍵盤接口電路
1111獨立式鍵盤
1112矩陣式鍵盤
112LED顯示接口電路
1121LED顯示器
1122LED并行顯示技術(shù)
113鍵盤、LED顯示器、A-D和D-A的綜合應(yīng)用
114LCD顯示接口電路
1141LCD顯示器件
1142單片機與液晶顯示模塊接口電路與驅(qū)動
習(xí)題
第12章單片機的串行總線接口技術(shù)
121I2C總線接口
1211I2C總線概述
1212串行EEPROM概述
121324C02引腳功能
1214工作方式
1215器件尋址、寫操作和讀操作
121624C02芯片與51單片機的接口電路及編程
1217ZLG7290接口電路及編程
122SPI總線接口
1221SPI總線概述及主要特點
122212位串行A-D TLC2543介紹
1223TLC2543與51單片機的接口設(shè)計
123單總線串行擴展
習(xí)題
第13章51單片機的C51程序設(shè)計
131C51編程概述
1311Keil C51開發(fā)工具
1312Keil C51程序開發(fā)過程
1313C51程序結(jié)構(gòu)
132C51的數(shù)據(jù)類型及存儲類型
1321C51的基本數(shù)據(jù)類型
1322C51的數(shù)據(jù)存儲類型和存儲模式
1323單片機特殊功能寄存器(SFR)及其C51定義
133C51函數(shù)
1331函數(shù)的分類與定義
1332函數(shù)的調(diào)用
1333中斷服務(wù)函數(shù)和寄存器組定義
134C51庫函數(shù)
135C51程序設(shè)計舉例
135151單片機內(nèi)部資源的C51編程
135251單片機擴展資源的C51編程
習(xí)題
第14章單片機應(yīng)用系統(tǒng)的開發(fā)與舉例
141單片機應(yīng)用系統(tǒng)的開發(fā)過程
1411需求分析與可行性論證
1412硬件電路設(shè)計原則
1413軟件設(shè)計原則
1414軟硬件測試與程序固化
142單片機應(yīng)用系統(tǒng)的開發(fā)工具
143應(yīng)用系統(tǒng)的可靠性設(shè)計
1431主要干擾源
1432硬件可靠性設(shè)計
1433軟件可靠性設(shè)計
144單片機應(yīng)用系統(tǒng)設(shè)計舉例
1441單片機應(yīng)用系統(tǒng)并行擴展芯片的基本接口電路
1442直流電動機轉(zhuǎn)速控制系統(tǒng)的設(shè)計
1443單片機應(yīng)用系統(tǒng)串行總線接口芯片的擴展應(yīng)用系統(tǒng)設(shè)計
附錄
附錄A51單片機指令集
附錄BμVision2集成開發(fā)環(huán)境使用
參考文獻(xiàn)