本書為單片機(jī)技術(shù)教學(xué)和實(shí)用而編寫。從2003年至今已出版使用10年,期間,2006年通過(guò)修訂出版第2版,并被評(píng)為普通高等教育“十一五”國(guó)家級(jí)規(guī)劃教材,200年再次出版第3版,增加C51語(yǔ)言的內(nèi)容,升級(jí)為雙語(yǔ)教材。隨著教學(xué)過(guò)程中經(jīng)驗(yàn)和反饋,此次修訂帶前幾次修訂的基礎(chǔ)上,進(jìn)一步修正個(gè)別文字上錯(cuò)、漏,刪除一些不必要的內(nèi)容,并對(duì)部分章節(jié)和程序做了修改,特別是對(duì)軟件實(shí)訓(xùn)和硬件實(shí)訓(xùn)的內(nèi)容作了龐大的更新。
本書修訂后仍分四大部分共12章。第一部分共2章,介紹單片機(jī)及單片機(jī)芯片的基本硬件結(jié)構(gòu);第二部分共4章,系統(tǒng)地?cái)⑹隽藚R語(yǔ)言指令系統(tǒng)及程序設(shè)計(jì)的基礎(chǔ)、單片機(jī)C語(yǔ)言基礎(chǔ)、C51程序的基本結(jié)構(gòu)與設(shè)計(jì)和C51的構(gòu)造數(shù)據(jù)類型;第三部分共4章,介紹了單片機(jī)片內(nèi)的標(biāo)準(zhǔn)外圍單元:并行輸入/輸出口、中斷系統(tǒng)、定時(shí)器/計(jì)數(shù)器和串行口的組成及應(yīng)用方法;第四部分共2章,通過(guò)各種應(yīng)用實(shí)例闡述了單片機(jī)的并行擴(kuò)展技術(shù)和串行擴(kuò)展技術(shù)。
曹天漢,男,浙江杭州人,副教授,先后畢業(yè)于寧夏大學(xué)物理專業(yè)和浙江大學(xué)計(jì)算計(jì)應(yīng)用專業(yè),多年擔(dān)任高等職業(yè)技術(shù)教學(xué)和教學(xué)管理工作,在電子技術(shù)和單片機(jī)系統(tǒng)設(shè)計(jì)技術(shù)的教學(xué)和技術(shù)開(kāi)發(fā)方面積累有豐富的實(shí)踐經(jīng)驗(yàn)。
第1部分 單片機(jī)及其基本組成
第1章 單片機(jī)概述
1.1 單片機(jī)
1.2 單片機(jī)系統(tǒng)
習(xí)題1
第2章 MCS-51單片機(jī)的基本組成
2.1 概述
2.1.1 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)框圖
2.1.2 MCS-51單片機(jī)的引腳及片外總線結(jié)構(gòu)
2.2 中央處理器CPu
2.3 振蕩器和時(shí)鐘電路
2.3.1 電路組成
2.3.2 時(shí)序與時(shí)序定時(shí)單位
2.4 MCS-51單片機(jī)的內(nèi)部存儲(chǔ)器
2.4.1 MCS-51單片機(jī)系統(tǒng)的存儲(chǔ)器結(jié)構(gòu)及地址空間 第1部分 單片機(jī)及其基本組成
第1章 單片機(jī)概述
1.1 單片機(jī)
1.2 單片機(jī)系統(tǒng)
習(xí)題1
第2章 MCS-51單片機(jī)的基本組成
2.1 概述
2.1.1 MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)框圖
2.1.2 MCS-51單片機(jī)的引腳及片外總線結(jié)構(gòu)
2.2 中央處理器CPu
2.3 振蕩器和時(shí)鐘電路
2.3.1 電路組成
2.3.2 時(shí)序與時(shí)序定時(shí)單位
2.4 MCS-51單片機(jī)的內(nèi)部存儲(chǔ)器
2.4.1 MCS-51單片機(jī)系統(tǒng)的存儲(chǔ)器結(jié)構(gòu)及地址空間
2.4.2 MCS-51單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器
2.4.3 特殊功能寄存器
2.4.4 堆棧及其存儲(chǔ)特性
2.4.5 內(nèi)部程序存儲(chǔ)器
2.5 MCS-51單片機(jī)的復(fù)位
2.6 單片機(jī)的幾種工作方式
習(xí)題2
第2部分 MCS-51單片機(jī)的指令系統(tǒng)及程序設(shè)計(jì)
第3章 MCS-51單片機(jī)的匯編語(yǔ)言指令系統(tǒng)
3.1 指令格式及常用符號(hào)
3.1.1 指令的匯編語(yǔ)言格式
3.1.2 指令編碼的格式
3.1.3 指令中常用的符號(hào)
3.1.4 指令執(zhí)行的基本過(guò)程
3.2 指令中的尋址方式
3.3 數(shù)據(jù)傳送指令
3.3.1 在單片機(jī)片內(nèi)RAM中傳送數(shù)據(jù)的指令
3.3.2 讀寫外部RAM的指令
3.3.3 讀程序存儲(chǔ)器的指令
3.4 算術(shù)運(yùn)算類指令
3.4.1 加法指令
3.4.2 減法指令
3.4.3 乘法指令
3.4.4 除法指令
3.5 邏輯運(yùn)算與移位類指令
3.6 控制轉(zhuǎn)移類指令
3.6.1 無(wú)條件轉(zhuǎn)移指令
3.6.2 條件轉(zhuǎn)移指令
3.6.3 調(diào)用與返回指令
3.6.4 空操作指令
3.7 位操作類指令
3.8 MCS-51匯編語(yǔ)言的偽指令
習(xí)題3
軟件實(shí)訓(xùn)1
第4章 單片機(jī)C語(yǔ)言基礎(chǔ)
4.1 單片機(jī)C語(yǔ)言概述 (59)
4.1.1 C語(yǔ)言的特點(diǎn) (59)
4.1.2 單片機(jī)C語(yǔ)言—C51
4.2 單片機(jī)C51語(yǔ)言基本語(yǔ)法
4.2.1 C51的運(yùn)算量
4.2.2 C51的數(shù)據(jù)類型
4.2.3 C51的存儲(chǔ)種類和存儲(chǔ)器類型
4.2.4 C51的運(yùn)算符和表達(dá)式
習(xí)題4
第5章 MCS-51單片機(jī)程序設(shè)計(jì)
5.1 程序設(shè)計(jì)的基本方法
5.1.1 程序設(shè)計(jì)的步驟
5.1.2 源程序的編輯、編譯和匯編
5.2 程序的基本形式與設(shè)計(jì)舉例
5.2.1 匯編語(yǔ)言程序的基本結(jié)構(gòu)與設(shè)計(jì)舉例
5.2.2 C51程序的基本結(jié)構(gòu)與設(shè)計(jì)舉例
習(xí)題5
第6章 C51的構(gòu)造類型數(shù)據(jù)
6.1 數(shù)組
6.1.1 數(shù)組的引入
6.1.2 一維數(shù)組
6.1.3 二維數(shù)組
6.1.4 字符數(shù)組
6.1.5 數(shù)組的存儲(chǔ)空間
6.2 指針
6.2.1 指針的基本概念
6.2.2 指針的定義
6.2.3 指針變量的引用
6.2.4 指針變量的運(yùn)算
6.2.5 指針變量作為函數(shù)的參數(shù)
6.2.6 數(shù)組的指針
6.2.7 函數(shù)型指針
6.2.8 指針數(shù)組
6.3 結(jié)構(gòu)體
6.3.1 結(jié)構(gòu)的定義
6.3.2 結(jié)構(gòu)類型變量的引用和初始化
6.3.3 結(jié)構(gòu)類型數(shù)組
6.3.4 結(jié)構(gòu)類型指針
6.4 聯(lián)合體
6.5 枚舉
6.6 typedef語(yǔ)句
6.7 預(yù)處理
6.7.1 宏定義
6.7.2 文件包含
6.7.3 條件編譯
習(xí)題6
軟件實(shí)訓(xùn)2
第3部分 MCS-51單片機(jī)的基本功能單元
第7章 MCS-51單片機(jī)的并行輸入/輸出端口
7.1 端口功能概述
7.2 端口的內(nèi)部結(jié)構(gòu)與運(yùn)作
7.2.1 P0口
7.2.2 P1口
7.2.3 P2口
7.2.4 P3口
7.3 應(yīng)用舉例
習(xí)題7
第8章 MCS-51單片機(jī)的中斷系統(tǒng)
8.1 中斷的基本概念
8.2 中斷機(jī)構(gòu)及操作
8.2.1 中斷源
8.2.2 中斷請(qǐng)求標(biāo)志
8.2.3 中斷的控制
8.3 中斷處理過(guò)程
8.4 中斷程序的編寫
8.4.1 匯編語(yǔ)言編寫中斷程序
8.4.2 C51編寫中斷程序
習(xí)題8
第9章 MCS-51單片機(jī)的定時(shí)/計(jì)數(shù)器
9.1 定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)和工作原理
9.2 定時(shí)/計(jì)數(shù)器的控制
9.3 定時(shí)/計(jì)數(shù)器的工作方式
9.3.1 工作方式0
9.3.2 工作方式1
9.3.3 工作方式2
9.3.4 工作方式3
習(xí)題9
第10章 MCS-51單片機(jī)的串行口
10.1 數(shù)據(jù)通信基礎(chǔ)知識(shí)
10.1.1 數(shù)據(jù)通信的概念
10.1.2 通信協(xié)議
10.1.3 數(shù)據(jù)傳輸模式
10.1.4 雙工通信方式
10.1.5 串行通信接口電路
10.1.6 串行通信總線標(biāo)準(zhǔn)
10.2 MCS-51單片機(jī)的串行口結(jié)構(gòu)與工作原理
10.2.1 串行口結(jié)構(gòu)
10.2.2 串行口的工作原理
10.3 串行口的控制寄存器
10.3.1 串行口控制寄存器SCON (200)
10.3.2 電源控制寄存器PCON
10.3.3 中斷允許控制寄存器IE
10.4 串行口的工作方式
10.4.1 工作方式0
10.4.2 工作方式1
10.4.3 工作方式2
10.4.4 工作方式3
10.4.5 串行通信編程的程序流程
10.5 單片機(jī)與PC的通信
習(xí)題10
硬件實(shí)訓(xùn)1
第4部分 單片機(jī)的擴(kuò)展技術(shù)
第11章 MCS-51單片機(jī)的并行擴(kuò)展技術(shù)
11.1 單片機(jī)并行擴(kuò)展的總線結(jié)構(gòu)及編址技術(shù)
11.1.1 并行擴(kuò)展系統(tǒng)結(jié)構(gòu)
11.1.2 并行擴(kuò)展總線的構(gòu)造
11.1.3 編址技術(shù)
11.2 存儲(chǔ)器的并行擴(kuò)展
11.2.1 片外存儲(chǔ)器的訪問(wèn)過(guò)程
11.2.2 存儲(chǔ)器并行擴(kuò)展實(shí)例
11.3 單片機(jī)應(yīng)用系統(tǒng)中并行O/O端口的擴(kuò)展
11.3.1 并行輸入/輸出口的簡(jiǎn)單擴(kuò)展
11.3.2 單片機(jī)應(yīng)用系統(tǒng)的可編程并行I/O芯片的擴(kuò)展
11.4 并行A/D和D/A轉(zhuǎn)換器及其與單片機(jī)的接口
11.4.1 A/D轉(zhuǎn)換器及其與單片機(jī)的接口
11.4.2 D/A轉(zhuǎn)換器及其與單片機(jī)的接口
11.5 單片機(jī)與LED顯示器及鍵盤接口
11.5.1 單片機(jī)與LED顯示器的接口
11.5.2 單片機(jī)與鍵盤的接口
11.5.3 8279鍵盤/顯示器接口芯片
11.6 單片機(jī)與液晶顯示器LCD接口
11.6.1 ICM7211的結(jié)構(gòu)與引腳
11.6.2 ICM7211應(yīng)用舉例
11.7 單片機(jī)與打印機(jī)接口
11.7.1 微型打印機(jī)簡(jiǎn)介
11.7.2 打印機(jī)與單片機(jī)接口
習(xí)題11
第12章 MCS-51單片機(jī)的串行擴(kuò)展技術(shù)
12.1 I2C總線接口技術(shù)
12.1.1 I2C總線接口
12.1.2 I2C總線的軟件模擬
12.2 SPI串行外設(shè)接口
12.2.1 SPI總線的組成
12.2.2 SPI總線的軟件模擬
12.2.3 SPI總線接口應(yīng)用實(shí)例
12.3 MCS-51單片機(jī)串行口工作方式0串行擴(kuò)展接口
12.3.1 單片機(jī)串行口工作方式0串行擴(kuò)展接口組成
12.3.2 串行工作方式0串行擴(kuò)展接口實(shí)例
習(xí)題12
硬件實(shí)訓(xùn)2
參考文獻(xiàn)
第4版前言
本書自2003年出版以來(lái),被許多高職院校教師選為教材,連續(xù)進(jìn)行了多次印刷。至今10年其間,在2006年通過(guò)修訂出了第2版,并被評(píng)為普通高等教育“十一五”國(guó)家級(jí)規(guī)劃教材。2009年再次修訂并增加了C51語(yǔ)言的內(nèi)容,升級(jí)成雙語(yǔ)教材。隨著教學(xué)過(guò)程中經(jīng)驗(yàn)的積累和反饋,此次修訂在前二次修訂的基礎(chǔ)上,進(jìn)一步修正了個(gè)別文字上的錯(cuò)、漏,刪除了一些不必要的內(nèi)容,并對(duì)部分章節(jié)和程序作了修改,特別是對(duì)軟件實(shí)訓(xùn)和硬件實(shí)訓(xùn)的內(nèi)容作了較大的更新。從而使本教材具有更好的實(shí)用性。
隨著社會(huì)的發(fā)展,單片機(jī)C語(yǔ)言在單片機(jī)開(kāi)發(fā)中的應(yīng)用越來(lái)越廣泛。單片機(jī)C語(yǔ)言在編程中的一些優(yōu)點(diǎn),慢慢地引發(fā)學(xué)習(xí)者對(duì)匯編語(yǔ)言的偏廢。其實(shí),單片機(jī)的C語(yǔ)言與匯編語(yǔ)言在處理問(wèn)題上本質(zhì)是相同的,只是在處理方法上不同而已,匯編語(yǔ)言條條指令面向單片機(jī)硬件,對(duì)單片機(jī)硬件需人工干預(yù),處理問(wèn)題靈活性、主動(dòng)性強(qiáng)一些;而C語(yǔ)言只是將這些事大部分都交給C編譯器去做罷了,所以顯得C語(yǔ)言的編程更簡(jiǎn)捷方便一些,可移植性、維護(hù)性也比匯編語(yǔ)言強(qiáng)。編者認(rèn)為,要掌握好單片機(jī)技術(shù),對(duì)單片機(jī)的硬件系統(tǒng)是必須熟知的,匯編語(yǔ)言是面向機(jī)器的語(yǔ)言,如果有扎實(shí)的匯編語(yǔ)言的基礎(chǔ),要想更好地理解、掌握和應(yīng)用單片機(jī)的C語(yǔ)言就不是一件難事;另外,在單片機(jī)應(yīng)用實(shí)踐中,也經(jīng)常需要采用混合編程的方法來(lái)更好地解決實(shí)際問(wèn)題,所以,如果想更好地掌握單片機(jī)技術(shù),并在單片機(jī)應(yīng)用實(shí)踐中能對(duì)單片機(jī)技術(shù)運(yùn)用自如,有所作為,對(duì)單片機(jī)匯編語(yǔ)言的學(xué)習(xí)還是不能偏廢的。
由于在第3版的編寫中已對(duì)兩種編程語(yǔ)言的敘述做了較準(zhǔn)確的選擇,所以在此次修訂中,在單片機(jī)C語(yǔ)言和匯編語(yǔ)言的內(nèi)容方面不予調(diào)整,而是在例題和實(shí)訓(xùn)內(nèi)容上加強(qiáng)了兩種語(yǔ)言編制程序的對(duì)比,讓讀者有較好的案例可以比較,從中得到啟發(fā)和靈感,更快更好地掌握用兩種語(yǔ)言編制程序的技術(shù)。
此次第4版的修訂由杭州職業(yè)技術(shù)學(xué)院曹天漢主編,統(tǒng)編并審、改了全稿,錢衛(wèi)星、張雪娟為副主編,分別參加了第二部分、第三部分和第四部分的編寫。在修訂過(guò)程中寧凡、李凡、彭斐、張錚等教師也參予了部分內(nèi)容的編寫,并得到杭州富銘環(huán)境科技有限公司開(kāi)發(fā)部經(jīng)理?xiàng)畋蠊こ處煹脑S多寶貴的編寫建議及部分內(nèi)容編寫,在此一并致以謝意。
科學(xué)技術(shù)的發(fā)展與時(shí)俱進(jìn),由于作者水平有限,修訂后的教材難免還會(huì)存在很多不盡人意的地方,也還可能存在一些缺點(diǎn)和錯(cuò)誤,敬請(qǐng)讀者批評(píng)指正。
編 者
2014年2月3日于杭州