全書分為11章,內(nèi)容包括單片機(jī)的基本概念、MCS-51系列單片機(jī)內(nèi)部結(jié)構(gòu)、指令系統(tǒng)和匯編語言程序設(shè)計(jì)、Keil C51語法及程序設(shè)計(jì)、MCS-51系列單片機(jī)內(nèi)部硬件資源及應(yīng)用、系統(tǒng)功能的擴(kuò)展、鍵盤與顯示接口、A/D與D/A轉(zhuǎn)換接口、單片機(jī)的其他接口、綜合應(yīng)用實(shí)例、單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)等。第1章至第4章主要介紹MCS-51單片機(jī)的內(nèi)部結(jié)構(gòu)、指令系統(tǒng)和C51 結(jié)構(gòu)。從第5章開始介紹MCS-51系列單片機(jī)的接口及應(yīng)用。本書除了在第1-9章中給出許多的相關(guān)實(shí)例,還專門組織了第10、11章,給出了大量的設(shè)計(jì)性實(shí)例和系統(tǒng)設(shè)計(jì)實(shí)例。書中的實(shí)例一般采用匯編與C語言編程對(duì)照的方式編寫,但在第10、11章較復(fù)雜的實(shí)例中只采用C語言編程。力求通過應(yīng)用實(shí)例,使讀者既可以在學(xué)習(xí)中進(jìn)行類比編程,又可以開闊思路,提高實(shí)際編程效率和工作能力。
唐穎教授,從教30多年,主講單片機(jī)、數(shù)字電子技術(shù)、EDA技術(shù)等課程,編寫多部相關(guān)教材;榮獲“全國優(yōu)秀教師”稱號(hào),浙江省電子協(xié)會(huì)會(huì)員。
目 錄
第1章 基礎(chǔ)知識(shí) 1
1.1 信息在計(jì)算機(jī)中的表示方法 1
1.1.1 數(shù)在計(jì)算機(jī)內(nèi)的表示 1
1.1.2 字符在計(jì)算機(jī)內(nèi)的表示 5
1.2 單片機(jī)的基本概念和特點(diǎn) 5
1.2.1 基本概念 5
1.2.2 單片機(jī)的主要特點(diǎn) 6
1.3 單片機(jī)的發(fā)展概況及應(yīng)用領(lǐng)域 7
1.3.1 發(fā)展概況 7
1.3.2 單片機(jī)的應(yīng)用 10
1.4 單片機(jī)主要類型介紹及分類 10
1.4.1 常用系列單片機(jī)產(chǎn)品及性能簡介 10
1.4.2 MCS-51系列單片機(jī)分類 12
1.4.3 AT89系列單片機(jī)分類 14
1.4.4 其他公司的51系列單片機(jī) 15
本章小結(jié) 15
習(xí)題1 16
第2章 MCS-51系列單片機(jī)的內(nèi)部結(jié)構(gòu)和引腳 17
2.1 MCS-51系列單片機(jī)內(nèi)部結(jié)構(gòu)和引腳說明 17
2.1.1 MCS-51系列單片機(jī)內(nèi)部結(jié)構(gòu)框圖 18
2.1.2 MCS-51系列單片機(jī)外部引腳說明 21
2.2 MCS-51系列單片機(jī)存儲(chǔ)器 23
2.2.1 程序存儲(chǔ)器 24
2.2.2 數(shù)據(jù)存儲(chǔ)器 25
2.3 MCS-51系列單片機(jī)并行I/O接口 28
2.3.1 P0口結(jié)構(gòu)及功能 29
2.3.2 P1口結(jié)構(gòu)及功能 30
2.3.3 P2口結(jié)構(gòu)及功能 30
2.3.4 P3口結(jié)構(gòu)及功能 31
2.4 MCS-51系列單片機(jī)的時(shí)鐘電路與時(shí)序 32
2.4.1 時(shí)鐘電路 32
2.4.2 CPU時(shí)序 32
2.4.3 MCS-51系列單片機(jī)的復(fù)位電路 34
2.4.4 MCS-51系列單片機(jī)的掉電和節(jié)電方式 35
本章小結(jié) 37
習(xí)題2 37
第3章 MCS-51系列單片機(jī)指令系統(tǒng)和匯編語言程序設(shè)計(jì) 39
3.1 指令系統(tǒng)基本概念 39
3.1.1 指令基本格式 39
3.1.2 指令分類 40
3.1.3 指令描述符號(hào)介紹 40
3.2 MCS-51系列單片機(jī)的尋址方式 41
3.3 MCS-51系列單片機(jī)的指令系統(tǒng) 43
3.3.1 數(shù)據(jù)傳送類指令 44
3.3.2 算術(shù)運(yùn)算類指令 50
3.3.3 邏輯運(yùn)算及移位指令 56
3.3.4 位操作類指令 59
3.3.5 控制轉(zhuǎn)移類指令 62
3.4 匯編程序設(shè)計(jì)示例 67
3.4.1 匯編程序偽指令 68
3.4.2 順序程序 69
3.4.3 分支程序 71
3.4.4 循環(huán)程序 73
3.4.5 查表程序 78
3.4.6 散轉(zhuǎn)程序 79
3.4.7 子程序 80
本章小結(jié) 83
習(xí)題3 83
第4章 Keil C51語法及程序設(shè)計(jì) 88
4.1 C 語言與MCS-51系列單片機(jī) 88
4.1.1 C語言的特點(diǎn)及程序結(jié)構(gòu) 88
4.1.2 C語言與MCS-51系列單片機(jī) 90
4.2 C51程序結(jié)構(gòu)及數(shù)據(jù)類型 91
4.2.1 C51程序結(jié)構(gòu) 91
4.2.2 C51的數(shù)據(jù)類型 91
4.3 C51的存儲(chǔ)種類及存儲(chǔ)區(qū) 94
4.3.1 常量 94
4.3.2 變量 95
4.3.3 C51存儲(chǔ)模式 98
4.3.4 絕對(duì)地址訪問 99
4.4 C51構(gòu)造數(shù)據(jù)類型 101
4.4.1 數(shù)組 101
4.4.2 指針 103
4.4.3 結(jié)構(gòu) 106
4.4.4 聯(lián)合 109
4.4.5 枚舉 111
4.5 C51運(yùn)算符與表達(dá)式 111
4.5.1 賦值運(yùn)算 111
4.5.2 算術(shù)運(yùn)算符 112
4.5.3 關(guān)系運(yùn)算符 112
4.5.4 邏輯運(yùn)算符 112
4.5.5 位運(yùn)算符 113
4.5.6 復(fù)合賦值運(yùn)算符 113
4.5.7 逗號(hào)運(yùn)算符 114
4.5.8 條件運(yùn)算符 114
4.5.9 指針與地址運(yùn)算符 114
4.6 表達(dá)式語句及復(fù)合語句 115
4.6.1 表達(dá)式語句 115
4.6.2 復(fù)合語句 116
4.7 C51的輸入/輸出 116
4.7.1 格式輸出函數(shù)printf() 117
4.7.2 格式輸入函數(shù)scanf() 117
4.8 C51程序基本結(jié)構(gòu)與相關(guān)語句 118
4.8.1 C51的基本結(jié)構(gòu) 118
4.8.2 if語句 120
4.8.3 switch/case語句 120
4.8.4 while語句 121
4.8.5 do…while語句 122
4.8.6 for語句 123
4.8.7 循環(huán)的嵌套 123
4.8.8 break和continue語句 124
4.8.9 return語句 125
4.9 函數(shù) 125
4.9.1 函數(shù)的定義 125
4.9.2 函數(shù)的調(diào)用與聲明 128
4.9.3 函數(shù)的嵌套與遞歸 130
4.10 匯編語言與C語言混合編程 131
本章小結(jié) 136
習(xí)題4 136
第5章 MCS-51系列單片機(jī)內(nèi)部硬件資源及應(yīng)用 138
5.1 MCS-51系列單片機(jī)的并行I/O接口 138
5.1.1 端口輸入/輸出操作 138
5.1.2 I/O接口的位操作指令 139
5.1.3 并行口應(yīng)用舉例 139
5.2 中斷系統(tǒng) 141
5.2.1 中斷的基本概念 141
5.2.2 MCS-51系列單片機(jī)的中斷系統(tǒng) 141
5.2.3 MCS-51系列單片機(jī)中斷系統(tǒng)的應(yīng)用 146
5.3 MCS-51系列單片機(jī)的定時(shí)/計(jì)數(shù)器 150
5.3.1 定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)與工作原理 150
5.3.2 定時(shí)/計(jì)數(shù)器的工作方式 152
5.3.3 定時(shí)/計(jì)數(shù)器的應(yīng)用 154
5.4 MCS-51系列單片機(jī)的串行口及串行通信 159
5.4.1 串行通信的基本概念 160
5.4.2 MCS-51系列單片機(jī)的串行口及控制寄存器 162
5.4.3 MCS-51系列單片機(jī)串行通信工作方式 164
5.4.4 串行口應(yīng)用舉例 166
本章小結(jié) 176
習(xí)題5 177
第6章 MCS-51系列單片機(jī)系統(tǒng)功能的擴(kuò)展 178
6.1 單片機(jī)最小應(yīng)用系統(tǒng) 178
6.2 存儲(chǔ)器的擴(kuò)展 179
6.2.1 程序存儲(chǔ)器的擴(kuò)展 180
6.2.2 數(shù)據(jù)存儲(chǔ)器的擴(kuò)展 182
6.2.3 存儲(chǔ)器綜合擴(kuò)展舉例 183
6.3 I/O接口擴(kuò)展 184
6.3.1 簡單I/O接口擴(kuò)展 185
6.3.2 用串行口擴(kuò)展并行I/O接口 186
6.3.3 可編程I/O接口擴(kuò)展 187
本章小結(jié) 192
習(xí)題6 192
第7章 MCS-51系列單片機(jī)鍵盤與顯示器接口 193
7.1 MCS-51系列單片機(jī)與鍵盤的接口 193
7.1.1 鍵盤的工作原理與掃描方式 193
7.1.2 獨(dú)立式按鍵及接口 195
7.1.3 矩陣式鍵盤及接口 198
7.2 MCS-51系列單片機(jī)與LED數(shù)碼管顯示接口 203
7.2.1 LED數(shù)碼管的結(jié)構(gòu)與原理 203
7.2.2 LED數(shù)碼管顯示方式 205
7.2.3 LED數(shù)碼管顯示接口典型應(yīng)用電路 206
7.3 鍵盤、LED數(shù)碼管組合接口 213
本章小結(jié) 217
習(xí)題7 218
第8章 MCS-51系列單片機(jī) 與A/D、D/A轉(zhuǎn)換器接口 219
8.1 MCS-51系列單片機(jī)與A/D轉(zhuǎn)換器接口 219
8.1.1 A/D轉(zhuǎn)換器ADC0809簡介 220
8.1.2 ADC 0809與MCS-51系列單片機(jī)的接口 221
8.1.3 AD574轉(zhuǎn)換器與51系列單片機(jī)的接口 224
8.2 MCS-51系列單片機(jī)與D/A轉(zhuǎn)換接口 226
8.2.1 D/A轉(zhuǎn)換器DAC0832簡介 227
8.2.2 DAC0832與51型單片機(jī)的接口實(shí)例 229
本章小結(jié) 232
習(xí)題8 233
第9章 MCS-51系列單片機(jī)的其他接口 234
9.1 LCD顯示模塊與MCS-51系列單片機(jī)的接口 234
9.1.1 字符點(diǎn)陣式液晶顯示器 234
9.1.2 RT-1602C液晶顯示模塊與單片機(jī)的接口 239
9.1.3 圖形點(diǎn)陣式液晶顯示器LCD12864簡介 243
9.2 時(shí)鐘日歷芯片與MCS-51系列單片機(jī)的接口 248
9.2.1 串行時(shí)鐘日歷芯片DS1302簡介 248
9.2.2 DS1302與單片機(jī)接口 250
9.3 I2C總線芯片與MCS-51系列單片機(jī)的接口 254
9.3.1 I2C總線簡介 254
9.2.2 I2C總線EEPROM芯片與單片機(jī)接口 256
本章小結(jié) 261
習(xí)題9 261
第10章 綜合實(shí)例 262
10.1 流水燈的設(shè)計(jì) 262
10.2 簡易報(bào)警發(fā)生器設(shè)計(jì) 264
10.3 外部負(fù)脈沖寬度測(cè)量電路 266
10.4 “航標(biāo)燈”控制程序設(shè)計(jì) 267
10.5 99s跑碼表設(shè)計(jì) 269
10.6 獨(dú)立式按鍵的應(yīng)用 272
10.7 帶數(shù)碼顯示的A/D轉(zhuǎn)換電路 274
10.8 直流電機(jī)控制 276
10.9 步進(jìn)電動(dòng)機(jī)控制設(shè)計(jì) 280
習(xí)題10 282
第11章 單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì) 283
11.1 單片機(jī)應(yīng)用系統(tǒng)的基本結(jié)構(gòu) 283
11.1.1 單片機(jī)應(yīng)用系統(tǒng)的硬件組成 283
11.1.2 硬件系統(tǒng)設(shè)計(jì)原則 284
11.1.3 單片機(jī)應(yīng)用系統(tǒng)的軟件設(shè)計(jì) 285
11.2 數(shù)字電子鐘/日歷系統(tǒng)設(shè)計(jì)實(shí)例 286
11.2.1 電子時(shí)鐘/日歷系統(tǒng)要求與設(shè)計(jì)方案 286
11.3 單片機(jī)遙控系統(tǒng)的應(yīng)用設(shè)計(jì) 291
11.3.1 系統(tǒng)要求與設(shè)計(jì)方案 291
11.3.2 系統(tǒng)硬件電路的設(shè)計(jì) 291
11.3.3 系統(tǒng)程序設(shè)計(jì) 296
11.3.4 調(diào)試及性能分析 300
11.3.5 控制源程序清單 300
附錄A MCS-51系列單片機(jī)指令表 309
附錄B ASCII碼 313
參考文獻(xiàn)