例說51單片機(jī)(C語言版)(第3版)(附光盤1張)
定 價:49.8 元
- 作者:張義和 ,等 著
- 出版時間:2010/6/1
- ISBN:9787115223685
- 出 版 社:人民郵電出版社
- 中圖法分類:TP368.1
- 頁碼:422
- 紙張:膠版紙
- 版次:1
- 開本:16開
《例說51單片機(jī)(C語言版)(第3版)》分為基本開發(fā)環(huán)境、8x51結(jié)構(gòu)與應(yīng)用、外圍系統(tǒng)應(yīng)用三部分。前兩章為基本開發(fā)環(huán)境的介紹,其中包括8x51基本知識、開發(fā)系統(tǒng)(mVision3)與程序設(shè)計語言(KeilC)。第3章到第8章為8x51結(jié)構(gòu)與應(yīng)用,包括輸入/輸出端口、中斷、定時器/計數(shù)器、串行口等,并分別以實例引出。第9章到第14章則是外圍系統(tǒng)應(yīng)用,包括音樂程序的開發(fā)、步進(jìn)電機(jī)的控制、AD/DAC接口芯片的應(yīng)用、LED點陣的驅(qū)動、LCD模塊的應(yīng)用、習(xí)題解答等!独f51單片機(jī)(C語言版)(第3版)》整體結(jié)構(gòu)采用循序漸進(jìn)的方式,對于每個單元的展開,也是循序漸進(jìn)的。電路與電路之間,或程序與程序之間,都保持著關(guān)聯(lián)性。在前一個電路(或程序)的基礎(chǔ)之上,只做一些微小的改變,就可開發(fā)出另一個電路(或程序),讓讀者輕松入門。在每個實例演練之后,給出“思考一下”的單元,讀者能即學(xué)即用,動腦思考,讓所學(xué)知識得以進(jìn)一步鞏固!独f51單片機(jī)(C語言版)(第3版)》可作為大中專院校的單片機(jī)教材,也可以作為廣大科技人員和愛好者的單片機(jī)技術(shù)參考書。
全新改寫的《例說51單片機(jī)(C語言版)(第3版)》在上一版的基礎(chǔ)上,提供了更加豐富完整的內(nèi)容,讓讀者能夠快速地進(jìn)入單片機(jī)與數(shù)字微控制器的領(lǐng)域。在第3版里大部分都重新繪制,以高分辨率呈現(xiàn)! ∧蹎纹瑱C(jī)應(yīng)用教學(xué)專家多年以驗和心血,講解更透徹,效果更突出! 暢銷不衰的單片機(jī)經(jīng)典入門教程,基本開發(fā)環(huán)境、8×51結(jié)構(gòu)與應(yīng)用、系統(tǒng)應(yīng)用等根據(jù)需要安排于各章節(jié),適于教學(xué)編排! ∶總單元都有大量的范例與練習(xí)。電路與電路之間,程序與程序之間。都保持著關(guān)聯(lián)性,讓讀者輕松入門。
首先感謝許多老師的愛戴,以及出版社的支持與包容,使得本書快速再版,而這個版次非常不同,絕對會讓大家耳目一新!本書在編寫之初,就抱著嚴(yán)謹(jǐn)?shù)膽B(tài)度,要讓這本書成為這類書籍的標(biāo)桿。事實證明,我們僅做到了部分,仍有很大的改善空間。所以,這一年來,我們以此書為教材,在不同場合,針對高職學(xué)生及在職人員分別開設(shè)了多個班次,幾乎每個班次都從第一章上到最后一章。而每個班次都有許多建議、調(diào)整與勘誤,使得第三版能極盡完美。
循序漸進(jìn)的堅持本書大概可分為基本開發(fā)環(huán)境、8x51結(jié)構(gòu)與應(yīng)用、外圍系統(tǒng)應(yīng)用3部分,簡述如下。
前兩章屬于基本開發(fā)環(huán)境的介紹,其中包括8x51基本知識、開發(fā)系統(tǒng)(LLVision3)與程序語言(Keilc)。第3章到第8章為8x51結(jié)構(gòu)與應(yīng)用,包括輸入/輸出端口、中斷、定時器/計數(shù)器、串行口、看門狗定時器、節(jié)電方式等,并分別以實例導(dǎo)引。在此著重于講述8x51本身的控制,讓大家更深刻地了解這種單片機(jī)微控制器。
第9章到第13章則是外圍系統(tǒng)應(yīng)用,包括音樂程序的開發(fā)、步進(jìn)電機(jī)的控制、AD/DA接口芯片的應(yīng)用、LED點陣的驅(qū)動、LCD模塊的驅(qū)動等。在此著重于8x51與其他外圍設(shè)備的連接,當(dāng)然,也針對常用外圍設(shè)備詳細(xì)介紹,并探討了其應(yīng)用方法。
本書整體結(jié)構(gòu)采用循序漸進(jìn)的方式,對于每個單元的展開,也是循序漸進(jìn)的,電路與電路之間,或程序與程序之間,都保持著關(guān)聯(lián)性,在前一個電路(或程序)的基礎(chǔ)上,僅做些微小的改變,就可開發(fā)出另一個電路(或程序),讓讀者沒有壓力。關(guān)于這一點,的確讓我們費盡心思。在每個實例演練之后,進(jìn)一步給出“思考一下”的單元,讓大家能即學(xué)即用,動腦思考,讓所學(xué)知識更加扎實。
第1章 輕松看MCS-51 1
1-1 微型計算機(jī)與單片機(jī) 2
1-2 8051基礎(chǔ)知識 2
1-2-1 8x51的結(jié)構(gòu) 2
1-2-2 89C51/89S51的封裝與引腳 3
1-2-3 89S51的基本電路 6
1-2-4 MCS-51系列 8
1-2-5 關(guān)于Atmel的51系列 10
1-3 認(rèn)識MCS-51的存儲器結(jié)構(gòu) 11
1-3-1 程序存儲器 11
1-3-2 數(shù)據(jù)存儲器 12
1-3-3 特殊功能寄存器 14
1-4 MCS-51的時序分析與復(fù)位 18
1-4-1 時序分析 18
1-4-2 復(fù)位 19
1-5 MCS-51的開發(fā)流程與工具 20
1-5-1 傳統(tǒng)開發(fā)工具 21
1-5-2 Altium Designer電路設(shè)計軟件 22
1-5-3 Keil mVision3集成開發(fā)環(huán)境 23
1-5-4 89S51的在線刻錄功能 23
1-6 實例演練 24
1-7 實時練習(xí) 31
第2章 認(rèn)識mVision3與Keil C 33
2-1 mVision3環(huán)境簡介 34
2-1-1 認(rèn)識mVision3環(huán)境 34
2-1-2 項目管理與選項 37
2-1-3 認(rèn)識調(diào)試/仿真環(huán)境 39
2-1-4 外圍操作 40
2-2 Keil C語言的基本結(jié)構(gòu) 43
2-3 變量、常數(shù)與數(shù)據(jù)類型 47
2-3-1 數(shù)據(jù)類型 47
2-3-2 變量名稱與保留字 49
2-3-3 變量的作用范圍 50
2-4 存儲器的形式與模式 50
2-4-1 存儲器的形式 51
2-4-2 存儲器的模式 52
2-5 Keil C的運算符 53
2-6 Keil C的流程控制 57
2-6-1 循環(huán)指令 57
2-6-2 選擇指令 60
2-6-3 跳轉(zhuǎn)指令 62
2-7 數(shù)組與指針 63
2-7-1 數(shù)組 63
2-7-2 指針 64
2-8 函數(shù)與中斷子程序 64
2-8-1 函數(shù) 65
2-8-2 中斷子程序 65
2-9 Keil C的預(yù)處理命令 66
2-10 實時練習(xí) 67
第3章 輸出端口的應(yīng)用 69
3-1 認(rèn)識MCS-51的輸入/輸出端口 70
3-2 輸出電路設(shè)計 72
3-2-1 驅(qū)動LED 72
3-2-2 驅(qū)動蜂鳴器 73
3-2-3 驅(qū)動繼電器 74
3-2-4 驅(qū)動固態(tài)繼電器 75
3-2-5 驅(qū)動七段LED數(shù)碼管 76
3-3 實例演練 78
3-3-1 驅(qū)動蜂鳴器實驗 78
3-3-2 驅(qū)動繼電器實驗 81
3-3-3 霹靂燈實例演練 83
3-3-4 驅(qū)動七段LED數(shù)碼管實驗 85
3-4 實時練習(xí) 87
第4章 輸入口的應(yīng)用 89
4-1 認(rèn)識MCS-51的輸入口 90
4-2 輸入設(shè)備與輸入電路設(shè)計 90
4-2-1 輸入設(shè)備 90
4-2-2 輸入電路設(shè)計 93
4-2-3 抖動與去抖動 95
4-3 實例演練 97
4-3-1 撥碼開關(guān)控制 97
4-3-2 按鈕開關(guān)控制 99
4-3-3 按鈕切換式控制 100
4-3-4 按鈕開關(guān)應(yīng)用 102
4-3-5 BCD撥碼開關(guān) 104
4-3-6 多個按鈕開關(guān) 106
4-3-7 按鈕開關(guān)放開后動作 111
4-4 實時練習(xí) 113
第5章 輸入/輸出端口的高級應(yīng)用 115
5-1 鍵盤掃描 116
5-1-1 鍵盤掃描原理 118
5-1-2 4×4鍵盤程序分析 120
5-1-3 認(rèn)識MM74C922/MM74C923 122
5-2 七段LED數(shù)碼顯示管掃描 124
5-2-1 認(rèn)識七段LED數(shù)碼管模塊 125
5-2-2 認(rèn)識7447/7448 128
5-2-3 認(rèn)識74138/74139 131
5-3 靜態(tài)顯示與動態(tài)顯示 132
5-3-1 使用BCD譯碼器 133
5-3-2 直接驅(qū)動 135
5-3-3 使用掃描譯碼器 136
5-3-4 閃爍 137
5-3-5 交替顯示 138
5-3-6 飛入 139
5-3-7 跑馬燈 141
5-4 實例演練 142
5-4-1 4位數(shù)七段LED數(shù)碼管 142
5-4-2 直接驅(qū)動七段LED數(shù)碼管 145
5-4-3 跑馬燈 148
5-4-4 4×4鍵盤與七段LED數(shù)碼管 150
5-4-5 MM74C922 153
5-5 實時練習(xí) 154
第6章 中斷的應(yīng)用 156
6-1 認(rèn)識MCS-51的中斷 157
6-1-1 MCS-51的中斷 157
6-1-2 中斷使能寄存器IE 158
6-1-3 中斷優(yōu)先級寄存器IP 159
6-1-4 定時器/計數(shù)器控制寄存器TCON 160
6-1-5 中斷向量 160
6-1-6 中斷的應(yīng)用 160
6-2 中斷子程序的仿真 161
6-3 實例演練 162
6-3-1 外部中斷INT0 162
6-3-2 外部中斷INT1 164
6-3-3 兩個外部中斷 167
6-3-4 鍵盤中斷 170
6-4 實時練習(xí) 172
第7章 定時器/計數(shù)器的應(yīng)用 174
7-1 8x51的定時器/計數(shù)器 175
7-1-1 MCS-51的定時器/計數(shù)器 175
7-1-2 定時器/計數(shù)器方式寄存器TMOD 175
7-1-3 定時器/計數(shù)器控制寄存器TCON 178
7-1-4 計數(shù)寄存器 178
7-1-5 定時器/計數(shù)器的應(yīng)用 180
7-2 8x52的Timer2 181
7-2-1 T2CON寄存器 181
7-2-2 捕獲方式 182
7-2-3 自動加載方式 183
7-2-4 波特率發(fā)生方式 183
7-3 8x51的節(jié)電方式 184
7-3-1 待機(jī)方式 185
7-3-2 掉電方式 185
7-3-3 電源控制寄存器PCON 186
7-4 認(rèn)識看門狗定時器 186
7-5 實例演練 188
7-5-1 閃爍燈——查詢方式 188
7-5-2 閃爍燈——中斷方式 190
7-5-3 60秒定時器 191
7-5-4 秒表 194
7-5-5 頻率發(fā)生器 197
7-5-6 頻率計 200
7-5-7 看門狗定時器 204
7-6 實時練習(xí) 206
第8章 串行口的應(yīng)用 208
8-1 數(shù)據(jù)通信概念 209
8-2 認(rèn)識8x51的串行口 210
8-3 認(rèn)識相關(guān)寄存器 211
8-4 波特率設(shè)置 213
8-5 特殊功能與多處理器數(shù)據(jù)傳輸 215
8-5-1 幀錯誤檢測 215
8-5-2 自動地址識別 216
8-5-3 多處理器通信 217
8-6 認(rèn)識MAX232 218
8-7 認(rèn)識74164/74165 220
8-8 實例演練 221
8-8-1 移位式數(shù)據(jù)串入 221
8-8-2 移位式數(shù)據(jù)串出 223
8-8-3 Mode 1實驗 225
8-8-4 Mode 2實驗 229
8-8-5 Mode 3實驗 231
8-8-6 點對點互傳 232
8-8-7 多處理器通信 234
8-9 實時練習(xí) 237
第9章 聲音的產(chǎn)生 239
9-1 發(fā)聲電路 240
9-2 音調(diào)與節(jié)拍 241
9-3 音調(diào)的產(chǎn)生 243
9-4 節(jié)拍的產(chǎn)生 248
9-5 實例演練 254
9-5-1 簡易電子琴 255
9-5-2 DoReMi實驗 257
9-5-3 生日快樂歌實驗 260
9-5-4 快樂點唱機(jī)一 262
9-5-5 快樂點唱機(jī)二 268
9-6 實時練習(xí) 270
第10章 步進(jìn)電機(jī)的控制 272
10-1 認(rèn)識步進(jìn)電機(jī) 273
10-1-1 步進(jìn)電機(jī)的結(jié)構(gòu) 273
10-1-2 步進(jìn)電機(jī)的動作 274
10-1-3 步進(jìn)電機(jī)的定位 276
10-2 步進(jìn)電機(jī)驅(qū)動電路 278
10-2-1 小型步進(jìn)電機(jī)的驅(qū)動電路 278
10-2-2 達(dá)林頓晶體管驅(qū)動電路 279
10-2-3 FT5754驅(qū)動電路 279
10-3 實例演練 280
10-3-1 用延遲子程序產(chǎn)生驅(qū)動信號 280
10-3-2 用定時器產(chǎn)生驅(qū)動信號 282
10-3-3 1-2相驅(qū)動 284
10-3-4 方向控制 286
10-4 實時練習(xí) 288
第11章 ADC與DAC的應(yīng)用 290
11-1 模/數(shù)轉(zhuǎn)換原理 291
11-2 認(rèn)識AD轉(zhuǎn)換IC 294
11-3 數(shù)/模轉(zhuǎn)換原理 298
11-4 認(rèn)識DA轉(zhuǎn)換IC 302
11-5 內(nèi)含ADC的51系列 305
11-6 認(rèn)識溫度傳感器 307
11-7 實例演練 309
11-7-1 電壓測量一 309
11-7-2 電壓測量二 312
11-7-3 電壓測量三 314
11-7-4 溫度測量 317
11-7-5 ADC的溫控實驗 319
11-7-6 DAC實例演練 323
11-8 實時練習(xí) 324
第12章 LED點陣的應(yīng)用 327
12-1 認(rèn)識LED點陣 328
12-2 LED點陣驅(qū)動電路 330
12-3 LED點陣顯示方式 335
12-4 LED點陣動態(tài)顯示 336
12-4-1 水平移動 336
12-4-2 垂直移動 342
12-5 實例演練 345
12-5-1 8×8 LED點陣靜態(tài)顯示 345
12-5-2 8×8 LED點陣靜態(tài)多色顯示 348
12-5-3 8×8 LED點陣平移 350
12-5-4 8×8 LED點陣跑馬燈 353
12-5-5 8×8 LED點陣垂直移動 355
12-5-6 8×8 LED點陣卷動 358
12-5-7 16×16 LED點陣顯示 360
12-6 實時練習(xí) 363
第13章 LCD模塊的應(yīng)用 365
13-1 認(rèn)識LCD模塊 366
13-2 中文LCD模塊 371
13-3 LCM控制指令 374
13-4 LCM的初始化設(shè)置與常用函數(shù) 377
13-5 LCM與8x51的連接 384
13-6 實例演練 384
13-6-1 LCD文字顯示 385
13-6-2 自定義字符圖案 387
13-7 實時練習(xí) 394
第14章 習(xí)題解答 396
第1章 輕松看MCS-51
1-1 微型計算機(jī)與單片機(jī)
一般地,微型計算機(jī)系統(tǒng)包括中央處理單元(CPU)、存儲器(Memory)及輸入/輸出單元(I/O)三大部分,如圖1.1所示。CPU就像是人的大腦一樣,控制整個系統(tǒng)的運行;存儲器則是存放系統(tǒng)運行所需的程序及數(shù)據(jù),包括只讀存儲器(Read Only Memory,ROM)及隨機(jī)存取存儲器(Randon Access Memory,RAM),通常ROM用來存儲程序或永久性的數(shù)據(jù),稱為程序存儲器,RAM則是用來存儲程序執(zhí)行時的暫存數(shù)據(jù),稱為數(shù)據(jù)存儲器;I/O是微型計算機(jī)系統(tǒng)與外部溝通的管道,其中包括輸入端口與輸出端口。這三部分分別由不同的元件組成,然后把它們組裝在電路板上,形成一個微型計算機(jī)系統(tǒng)。
單片微型計算機(jī)(即單片機(jī)或微控制器)就是把中央處理單元、存儲器、輸入/輸出單元等全部放置在一個芯片里,如圖1—2所示,只要再配置幾個小元件,如電阻器、電容器、石英晶體、連接器等,就成為一個完整的微型計算機(jī)系統(tǒng)。因此整個系統(tǒng)的體積小、成本低、可靠性高,成為目前微型計算機(jī)控制系統(tǒng)的主流。