本書共9章,第1、2章分別介紹單片機基礎知識和結構原理;第3~5章介紹單片機系統(tǒng)軟件,包括系統(tǒng)指令、匯編語言程序設計、中斷系統(tǒng)及定時/計數(shù)器;第6~8章介紹單片機監(jiān)控外圍系統(tǒng),包括監(jiān)控系統(tǒng)擴展、串行通信、接口;第9章介紹單片機安全監(jiān)控系統(tǒng)設計。每章均有本章基本要求、本章小結、習題及技能設計模塊。習題和技能設計是作者在多年科研與教學中提煉出來的,旨在培養(yǎng)讀者解決實際復雜工程問題的能力。
本書全面系統(tǒng)地介紹了單片機的結構原理和監(jiān)控技術,精選了大量的系統(tǒng)應用實例,具有實際參考價值。本書內容簡練,深入淺出,具有一定的深度和廣度,可作為高等院校自動化、安全、計算機、測控、機電等相關專業(yè)的本科生或研究生教材,也可供從事單片機設計開發(fā)和應用等相關領域的研究人員及工程技術人員參考。
余修武, 1976年9月生,男,博士,副教授,碩士生導師。中國電子學會高級會員,湖南省科技廳科技計劃項目評審專家,湖南省煤礦安全專家、衡陽市安監(jiān)局安全專家和職業(yè)衛(wèi)生專家, ARM工程師。研究領域為智能安全監(jiān)測監(jiān)控。主講本科生安全工程專業(yè)《安全檢測與監(jiān)控技術》和《電氣安全工程》、研究生安全科學與工程專業(yè)《安全監(jiān)測與預警技術》等課程。近年來主持科研項目省級6項(其中省級重點2項)、校級博士科研啟動基金項目1項,參與國家、省部級科研項目10余項;授權發(fā)明專利9項(其中發(fā)明專利4項),計算機軟件著作權登記2項;發(fā)表科研論文30余篇,SCI/EI收錄13余篇。主持教改項目省級3項、校級5項,發(fā)表教研論文6篇,出版專著及教材2部,指導學生競賽獲省一等獎及以上15項,獲省級教學成果三等獎5項。
第1章 單片機概述 1
1.1 計算機中的數(shù)據信息 1
1.1.1 計算機中數(shù)據的類型 1
1.1.2 數(shù)制及其轉換 1
1.1.3 數(shù)在計算機內的表示 2
1.1.4 字符在計算機內的表示 4
1.2 單片機基礎 5
1.2.1 單片機及其監(jiān)控系統(tǒng) 5
1.2.2 單片機的分類 5
1.2.3 單片機的應用特點 6
1.2.4 單片機的發(fā)展過程及趨勢 6
1.2.5 單片機監(jiān)控應用 7
1.3 MCS-51與80C51系列單片機 7
1.3.1 MCS-51系列單片機 7
1.3.2 80C51系列單片機 8
本章小結 9
習題1 9
技能設計1 單片機開發(fā)軟件KEIL μVISION 3的使用簡介 10
第2章 單片機結構原理 21
2.1 80C51基本架構與監(jiān)控模式 21
2.1.1 80C51基本架構 21
2.1.2 80C51監(jiān)控模式 21
2.2 80C51系列配置與封裝 22
2.2.1 80C51資源配置 22
2.2.2 80C51封裝與引腳 23
2.3 80C51內部結構 24
2.3.1 80C51芯片內部邏輯結構 24
2.3.2 80C51時鐘和時序 26
2.3.3 80C51復位 29
2.4 80C51 I/O接口 29
2.4.1 P0口、P2口的結構 30
2.4.2 P1口、P3口的結構 32
2.4.3 并行接口的負載能力 33
2.5 80C51存儲器 34
2.5.1 80C51程序存儲器 34
2.5.2 80C51數(shù)據存儲器 35
2.5.3 80C51特殊功能寄存器 36
本章小結 37
習題2 38
技能設計2 基本I/O口輸出與輸入 39
第3章 單片機指令系統(tǒng) 43
3.1 80C51指令系統(tǒng)概述 43
3.2 指令格式及常用符號 43
3.2.1 機器指令編碼格式 43
3.2.2 符號指令格式 45
3.2.3 符號指令及其注解中常用符號含義 45
3.3 80C51尋址方式及指令執(zhí)行過程 45
3.3.1 80C51尋址方式 45
3.3.2 80C51指令執(zhí)行過程 49
3.4 單片機監(jiān)控系統(tǒng)指令類型 50
3.4.1 數(shù)據傳送類指令(29條) 50
3.4.2 算術運算類指令(24條) 54
3.4.3 邏輯運算與移位類指令(24條) 58
3.4.4 控制轉移類指令(17條) 60
3.4.5 位操作類指令(17條) 64
本章小結 66
習題3 66
技能設計3 80C51驅動蜂鳴器發(fā)聲 68
第4章 單片機匯編語言程序設計 71
4.1 程序編制步驟、方法和技巧 71
4.1.1 程序編制步驟 71
4.1.2 程序編制方法和技巧 72
4.1.3 匯編語言語句格式 72
4.2 源程序編制和偽指令 73
4.2.1 源程序編制和匯編 73
4.2.2 偽指令 74
4.3 基本程序結構 76
4.3.1 順序程序 76
4.3.2 分支程序 77
4.3.3 循環(huán)程序 80
4.3.4 子程序及參數(shù)傳遞 82
4.4 80C51單片機匯編語言程序設計舉例 84
4.4.1 算術運算程序 84
4.4.2 碼型轉換程序 88
4.4.3 查表程序 90
4.4.4 定時程序 92
本章小結 92
習題4 93
技能設計4 八位數(shù)碼管動態(tài)循環(huán)顯示 94
第5章 單片機中斷系統(tǒng)及定時/計數(shù)器 97
5.1 80C51單片機中斷系統(tǒng) 97
5.1.1 單片機中斷技術 97
5.1.2 單片機中斷系統(tǒng)結構 98
5.1.3 單片機中斷源 99
5.1.4 單片機中斷控制 99
5.1.5 單片機中斷過程 102
5.1.6 應用實例 107
5.2 80C51單片機定時/計數(shù)器 108
5.2.1 定時/計數(shù)器的概念 108
5.2.2 定時/計數(shù)器的結構和工作原理 109
5.2.3 定時/計數(shù)器的控制 110
5.2.4 定時/計數(shù)器的工作方式 111
5.2.5 定時/計數(shù)器外部中斷源的擴展 117
5.2.6 應用實例 117
5.3 80C51單片機中斷與定時/計數(shù)器的綜合應用 118
5.3.1 實現(xiàn)時鐘計時顯示的基本方法 118
5.3.2 程序流程 119
5.3.3 程序清單 119
本章小結 121
習題5 122
技能設計5 數(shù)碼管顯示00~59秒表 124
第6章 單片機監(jiān)控系統(tǒng)擴展 128
6.1 單片機最小系統(tǒng) 128
6.1.1 8051/8751的最小系統(tǒng) 128
6.1.2 8031最小系統(tǒng) 129
6.2 存儲器擴展 130
6.2.1 存儲器擴展概述 130
6.2.2 程序存儲器擴展 134
6.2.3 數(shù)據存儲器擴展 137
6.2.4 ROM和RAM綜合擴展 141
6.3 I/O接口擴展 141
6.3.1 I/O接口功能 142
6.3.2 I/O端口編址 142
6.3.3 I/O數(shù)據傳送方式 142
6.3.4 I/O接口電路芯片 143
6.3.5 簡單I/O口擴展 143
6.4 8255A可編程并行接口芯片 144
6.4.1 8255A芯片介紹 144
6.4.2 8255A工作方式 145
6.4.3 8255A控制字 147
6.4.4 8255A與80C51單片機接口 147
6.5 8155可編程并行接口芯片 148
6.5.1 8155芯片介紹 149
6.5.2 8155與80C51單片機接口 152
6.6 8279接口芯片 152
6.6.1 8279的內部邏輯結構 153
6.6.2 8279的引腳定義 154
6.6.3 8279的操作命令 155
6.6.4 8279的狀態(tài)字 157
6.7 鍵盤及接口 158
6.7.1 鍵盤的輸入特點 158
6.7.2 鍵盤的工作原理 159
6.7.3 鍵盤的工作方式 161
6.8 LED顯示器及其接口 162
6.8.1 LED顯示器的結構與原理 162
6.8.2 LED數(shù)碼管顯示器的譯碼方式 162
6.8.3 LED數(shù)碼管的顯示方式 163
6.8.4 LED顯示器與單片機的接口 164
6.9 鍵盤/顯示器接口設計實例 165
6.9.1 利用并行接口芯片8155構成鍵盤和顯示接口電路 166
6.9.2 利用專用接口芯片8279構成鍵盤和顯示接口電路 167
6.9.3 利用單片機串行口構成鍵盤和顯示接口電路 169
本章小結 169
習題6 170
技能設計6 可編程接口芯片8255A的應用 171
第7章 單片機監(jiān)控串行通信 174
7.1 串行通信基礎 174
7.1.1 串行通信的基本原理 175
7.1.2 串行通信的接口標準 179
7.2 80C51單片機串行接口 184
7.2.1 串行接口的結構 184
7.2.2 串行接口的控制寄存器 185
7.2.3 串行接口的工作方式 186
7.3 單片機串行接口監(jiān)控應用 191
7.3.1 單片機與單片機通信 192
7.3.2 單片機與計算機通信 195
本章小結 196
習題7 196
技能設計7 單片機間監(jiān)控串行通信 198
第8章 單片機監(jiān)控接口 201
8.1 D/A轉換器及其與單片機接口 201
8.1.1 D/A轉換器 201
8.1.2 DAC0832芯片及其與單片機接口應用 203
8.2 A/D轉換器及其與單片機接口 208
8.2.1 A/D轉換器 208
8.2.2 ADC0809芯片及其與單片機接口應用 209
8.3 監(jiān)控開關量接口 212
8.3.1 開關量輸入接口 212
8.3.2 開關量輸出接口 213
本章小結 215
習題8 215
技能設計8 利用ADC0809芯片制作數(shù)字電壓表 217
第9章 單片機安全監(jiān)控系統(tǒng)設計 221
9.1 單片機安全監(jiān)控系統(tǒng)設計與開發(fā) 221
9.1.1 安全監(jiān)控系統(tǒng)設計要求 221
9.1.2 安全監(jiān)控系統(tǒng)設計步驟 221
9.1.3 安全監(jiān)控系統(tǒng)開發(fā) 222
9.1.4 安全監(jiān)控系統(tǒng)的開發(fā)方式 223
9.2 單片機安全監(jiān)控系統(tǒng)可靠性技術 225
9.2.1 濾波技術 225
9.2.2 接地技術 226
9.2.3 屏蔽技術 229
9.2.4 隔離技術 229
9.2.5 反電勢干擾及其抑制技術 230
9.3 單片機安全監(jiān)控系統(tǒng)設計實例 230
9.3.1 家電領域的監(jiān)控系統(tǒng) 231
9.3.2 水塔的水位監(jiān)控系統(tǒng) 238
9.3.3 作息時間監(jiān)控鐘 241
9.3.4 交通信號燈模擬監(jiān)控系統(tǒng) 243
9.3.5 工業(yè)順序監(jiān)控系統(tǒng) 245
本章小結 247
習題9 247
技能設計9 課程設計(綜合)――電腦監(jiān)控鐘的設計與制作 247
附錄 261
附錄A 80C51系列單片機指令 261
附錄B 80C51系列單片機常用資料 265
附錄C ASCII碼(美國標準信息交換碼)表 267
附錄D 二進制邏輯單元圖形符號對照 268
附錄E 常用芯片引腳圖 269
附錄F 部分習題答案 270
參考文獻 273