本書圍繞4個(gè)“教、學(xué)、做一體化”的項(xiàng)目展開,引導(dǎo)讀者通過4個(gè)項(xiàng)目的實(shí)踐性學(xué)習(xí),逐步掌握現(xiàn)代智能電子技術(shù)的思想、方法與基本內(nèi)容。內(nèi)容編排有:認(rèn)識(shí)單片機(jī)部分(第1~3章);初步使用單片機(jī)部分(第4~6章);深入認(rèn)識(shí)單片機(jī)內(nèi)部功能單元部分(第7~9章);熟練使用單片機(jī)部分(第10~13章)。本書可使讀者在重點(diǎn)掌握單片機(jī)的基本知識(shí)與基本技能的同時(shí),具備學(xué)習(xí)擴(kuò)展其他嵌入式系統(tǒng)的能力。
雷建龍,教授,從事教學(xué)工作36年。曾作為主編公開出版教材四本。多次獲最佳教師稱號(hào),主持完成省職業(yè)院校應(yīng)用電子技術(shù)專業(yè)教學(xué)標(biāo)準(zhǔn),主持課題獲過中國職教學(xué)會(huì)一等獎(jiǎng),完成多項(xiàng)省級(jí)以上課題,公開發(fā)表論文60余篇,其中核心論文10篇。
第1章 認(rèn)識(shí)單片機(jī)并制作、使用單片機(jī)系統(tǒng) 1
1.1 單片機(jī)控制的跑馬燈 2
1.1.1 開發(fā)板實(shí)物圖 2
1.1.2 實(shí)物圖說明 2
1.1.3 下載控制程序到單片機(jī)中 2
1.2 知識(shí)鏈接:?jiǎn)纹瑱C(jī)及其應(yīng)用 4
1.2.1 單片機(jī)及其發(fā)展的特點(diǎn) 4
1.2.2 單片機(jī)嵌入式系統(tǒng)的應(yīng)用領(lǐng)域及特點(diǎn) 5
? 項(xiàng)目一 跑馬燈的設(shè)計(jì)與制作 7
? 項(xiàng)目一 任務(wù)1 點(diǎn)亮8個(gè)發(fā)光二極管 7
1.3 用單片機(jī)點(diǎn)亮8個(gè)發(fā)光二極管 7
1.3.1 實(shí)物圖 7
1.3.2 步驟 7
1.4 知識(shí)鏈接:MCS-51系列單片機(jī) 9
1.4.1 MCS-51系列單片機(jī)內(nèi)部功能簡(jiǎn)介 9
1.4.2 引腳及功能介紹 11
1.5 單片機(jī)運(yùn)行的基本過程 12
1.6 單片機(jī)復(fù)位及復(fù)位電路、時(shí)鐘電路、時(shí)序與機(jī)器周期 12
1.6.1 單片機(jī)復(fù)位及復(fù)位電路 12
1.6.2 時(shí)鐘電路 14
1.6.3 時(shí)序的概念 14
1.6.4 機(jī)器周期的計(jì)算 15
1.7 補(bǔ)充知識(shí):二進(jìn)制數(shù) 15
1.7.1 十進(jìn)制數(shù) 15
1.7.2 二進(jìn)制數(shù) 15
1.7.3 二進(jìn)制數(shù)與十進(jìn)制數(shù)的相互轉(zhuǎn)換 15
1.7.4 十六進(jìn)制數(shù) 16
1.7.5 有符號(hào)數(shù)的表示方法 17
1.7.6 位、字節(jié)、字 17
1.7.7 BCD碼 17
1.7.8 ASCⅡ碼 18
小結(jié) 18
習(xí)題 19
第2章 Keil C的操作及單片機(jī)的存儲(chǔ)器、I/O接口 21
? 項(xiàng)目一 任務(wù)2 Keil C的操作練習(xí) 22
2.1 Keil C軟件的操作 22
2.2 MCS-51系列單片機(jī)存儲(chǔ)器的結(jié)構(gòu) 29
2.2.1 程序存儲(chǔ)器 30
2.2.2 內(nèi)部數(shù)據(jù)存儲(chǔ)器 31
2.2.3 外部數(shù)據(jù)存儲(chǔ)器 32
? 項(xiàng)目一 任務(wù)3 測(cè)試與改變I/O端口的狀態(tài) 32
2.3 I/O端口的測(cè)試 32
2.4 I/O端口的內(nèi)部結(jié)構(gòu)與特點(diǎn) 33
2.4.1 P1口的結(jié)構(gòu)組成 33
2.4.2 P0口的結(jié)構(gòu)組成 34
2.5 補(bǔ)充知識(shí):數(shù)字電子技術(shù)相關(guān)內(nèi)容 35
2.5.1 基本邏輯門 35
2.5.2 門電路 37
2.5.3 LED數(shù)碼管 38
小結(jié) 39
習(xí)題 40
第3章 仿真演練與程序的下載 42
? 項(xiàng)目一 任務(wù)4 仿真數(shù)碼管顯示 42
3.1 Proteus的仿真演練 43
3.1.1 數(shù)碼管顯示電路原理圖 43
3.1.2 Proteus 8 Professional界面簡(jiǎn)介 44
3.1.3 繪制原理圖 46
3.2 Keil C與Proteus連接調(diào)試 51
3.3 制作與使用ISP 53
3.4 開發(fā)板電路圖 56
小結(jié) 61
習(xí)題 62
第4章 C51程序的編制 63
? 項(xiàng)目一 任務(wù)5 點(diǎn)亮一個(gè)發(fā)光二極管 64
4.1 C51的數(shù)據(jù)結(jié)構(gòu) 64
4.1.1 C51應(yīng)用舉例 64
4.1.2 數(shù)據(jù)的存儲(chǔ)種類 66
4.1.3 基本數(shù)據(jù)類型 67
4.1.4 C51擴(kuò)展數(shù)據(jù)類型 67
4.1.5 數(shù)據(jù)的存儲(chǔ)位置 70
? 項(xiàng)目一 任務(wù)6 根據(jù)輸入狀態(tài)決定輸出端口的狀態(tài) 74
4.2 C51的程序結(jié)構(gòu) 74
4.2.1 C51的運(yùn)算符 74
4.2.2 C51的基本語句 75
? 項(xiàng)目一 任務(wù)7 跑馬燈的控制1 79
? 項(xiàng)目一 任務(wù)8 計(jì)算1+2+3+…+10 81
? 項(xiàng)目一 任務(wù)9 跑馬燈的控制2 81
? 項(xiàng)目一 任務(wù)10 跑馬燈的控制3 83
? 項(xiàng)目一 任務(wù)11 跑馬燈的設(shè)計(jì) 84
? 項(xiàng)目一 任務(wù)12 跑馬燈的控制4 87
4.2.3 C51函數(shù) 88
? 項(xiàng)目一 任務(wù)13 跑馬燈的控制5 92
4.3 交通燈控制器 93
4.3.1 程序的移植 93
? 項(xiàng)目二 交通燈控制器的設(shè)計(jì) 94
? 項(xiàng)目二 任務(wù)1 交通燈的控制 96
4.3.2 交通燈的控制 96
4.4 補(bǔ)充知識(shí):數(shù)組的概念 99
小結(jié) 100
習(xí)題 101
第5章 單片機(jī)的中斷系統(tǒng) 106
? 項(xiàng)目二 任務(wù)2 改進(jìn)的交通燈控制器 106
5.1 中斷概念的引出 107
5.2 單片機(jī)中斷系統(tǒng)的結(jié)構(gòu) 108
5.2.1 8051的中斷源 109
5.2.2 中斷請(qǐng)求標(biāo)志 110
5.2.3 中斷允許控制 110
5.2.4 中斷優(yōu)先級(jí)控制 111
5.2.5 中斷的入口 111
5.2.6 8051單片機(jī)中斷處理過程 112
5.3 中斷服務(wù)程序的編制 112
5.3.1 中斷服務(wù)程序編制的格式 112
5.3.2 項(xiàng)目二任務(wù)2的解答:交通燈中斷控制器設(shè)計(jì) 113
5.3.3 關(guān)于中斷觸發(fā)方式及程序編制的討論 116
小結(jié) 119
習(xí)題 119
第6章 單片機(jī)的定時(shí)器 123
? 項(xiàng)目二 任務(wù)3 定時(shí)器中斷控制的跑馬燈 123
6.1 定時(shí)器的結(jié)構(gòu)與特點(diǎn) 125
6.2 定時(shí)器的控制寄存器 126
6.2.1 工作方式寄存器 126
6.2.2 控制寄存器 127
6.2.3 TH、TL 127
6.3 定時(shí)器的工作方式 127
6.3.1 方式0 127
6.3.2 方式1 127
6.3.3 方式2 128
6.3.4 方式3 128
6.4 定時(shí)器計(jì)數(shù)初值的確定 129
6.5 定時(shí)器應(yīng)用舉例 129
6.5.1 定時(shí)器中斷控制的跑馬燈 129
? 項(xiàng)目二 任務(wù)4 信號(hào)發(fā)生器 131
6.5.2 信號(hào)發(fā)生器 131
? 項(xiàng)目二 任務(wù)5 定時(shí)器中斷控制的交通燈 133
6.5.3 定時(shí)器中斷控制的交通燈 133
小結(jié) 136
習(xí)題 136
第7章 單片機(jī)的串行通信接口 139
? 項(xiàng)目二 任務(wù)6 數(shù)碼管顯示 139
7.1 串行通信概述 140
7.1.1 串行通信與并行通信 140
7.1.2 異步通信與同步通信 140
7.1.3 串行通信的傳輸方向 142
7.1.4 傳輸速率 142
7.2 8051串行口的結(jié)構(gòu) 143
7.2.1 串行口的結(jié)構(gòu) 143
7.2.2 8051串行口的控制寄存器 143
7.3 8051串行口的工作方式 144
7.3.1 方式0 144
? 項(xiàng)目二 任務(wù)7 數(shù)據(jù)的并、串行轉(zhuǎn)換 146
? 項(xiàng)目二 任務(wù)8 雙機(jī)通信仿真 148
7.3.2 方式1 148
7.3.3 方式2和方式3 153
7.3.4 波特率的計(jì)算 154
7.4* 補(bǔ)充知識(shí):I2C總線及其應(yīng)用 155
7.4.1 I2C總線的特點(diǎn) 155
7.4.2 I2C總線的工作原理 155
7.4.3 I2C應(yīng)用實(shí)例AT24C01 157
小結(jié) 163
習(xí)題 163
第8章 鍵盤接口及顯示接口 167
8.1 鍵盤接口 168
8.1.1 鍵盤基本問題 168
8.1.2 獨(dú)立式鍵盤 169
8.1.3 行列式鍵盤 170
? 項(xiàng)目二 任務(wù)9 計(jì)數(shù)顯示器 174
8.2 顯示接口 175
8.2.1 靜態(tài)顯示 175
? 項(xiàng)目二 任務(wù)10 帶倒計(jì)時(shí)的交通燈控制器 176
8.2.2 動(dòng)態(tài)顯示 177
? 項(xiàng)目二 任務(wù)11 數(shù)字鐘 181
8.2.3 LED驅(qū)動(dòng)芯片MAX7219/7221及其應(yīng)用 182
? 項(xiàng)目三 數(shù)字萬年歷的設(shè)計(jì)與制作 188
? 項(xiàng)目三 任務(wù)1 萬年歷的輸出顯示設(shè)計(jì) 190
8.2.4 LCD顯示 190
? 項(xiàng)目三 任務(wù)2 用字符LCD顯示“GOOD” 198
8.3* 補(bǔ)充知識(shí):Keil C51絕對(duì)地址訪問 200
小結(jié) 202
習(xí)題 202
第9章 數(shù)模與模數(shù)轉(zhuǎn)換 206
? 項(xiàng)目三 任務(wù)3 數(shù)模轉(zhuǎn)換器(DAC)設(shè)計(jì) 206
9.1 數(shù)模轉(zhuǎn)換 207
9.1.1 數(shù)模轉(zhuǎn)換器的工作機(jī)制及主要技術(shù)指標(biāo) 207
9.1.2 DAC0832——電流輸出型數(shù)模轉(zhuǎn)換器 209
9.1.3 串行8位數(shù)模轉(zhuǎn)換器MAX517 213
? 項(xiàng)目三 任務(wù)4 模數(shù)轉(zhuǎn)換仿真1 218
9.2 模數(shù)轉(zhuǎn)換 218
9.2.1 模數(shù)轉(zhuǎn)換器及其主要技術(shù)指標(biāo) 218
9.2.2 12位并行模數(shù)轉(zhuǎn)換芯片AD1674及其應(yīng)用 219
? 項(xiàng)目三 任務(wù)5 模數(shù)轉(zhuǎn)換仿真2 225
9.2.3 MCP3204——帶SPI接口的12位模數(shù)轉(zhuǎn)換器 225
? 項(xiàng)目三 任務(wù)6 8位ADC實(shí)驗(yàn) 230
9.2.4 帶有模數(shù)轉(zhuǎn)換功能的單片機(jī)應(yīng)用 230
9.3* 補(bǔ)充知識(shí):SPI總線 232
9.3.1 SPI概述 232
9.3.2 SPI總線接口及時(shí)序 233
9.3.3 應(yīng)用舉例 234
小結(jié) 235
習(xí)題 235
第10章 單片機(jī)系統(tǒng)的開發(fā) 239
? 項(xiàng)目三 任務(wù)7 數(shù)字萬年歷單片機(jī)系統(tǒng)的開發(fā) 240
10.1 單片機(jī)系統(tǒng)的開發(fā)方法 240
10.2 單片機(jī)系統(tǒng)的穩(wěn)定性 243
10.2.1 單片機(jī)的低功耗設(shè)置 243
10.2.2 單片機(jī)的“看門狗”設(shè)置 247
10.3 數(shù)字萬年歷系統(tǒng)總體設(shè)計(jì) 253
? 項(xiàng)目三 任務(wù)8 數(shù)字溫度傳感器的使用 254
10.3.1 溫度傳感器DS18B20 255
10.3.2 日歷時(shí)間芯片DS1302及其在數(shù)字萬年歷中的應(yīng)用 260
10.3.3 總體設(shè)計(jì)與程序 265
? 項(xiàng)目四 智能小車的控制 266
? 項(xiàng)目四 任務(wù)1 小車綜合任務(wù) 267
10.4 智能小車的總體設(shè)計(jì) 269
10.4.1 STC8單片機(jī)及智能小車的硬件電路 270
10.4.2 關(guān)鍵部件:超聲傳感器、光電檢測(cè)、磁尋跡、LoRa通信 270
10.4.3 運(yùn)動(dòng)的控制:流程圖、運(yùn)動(dòng)控制分析、控制程序 273
? 項(xiàng)目四 任務(wù)2 小車綜合任務(wù)修改 274
小結(jié) 274
習(xí)題 275
參考文獻(xiàn) 279