《例說51單片機》是2010年人民郵電出版社出版的圖書,作者是張義和。
基本介紹
內容簡介,圖書目錄,
內容簡介
本書分為基本開發環境、8x51結構與套用、外圍系統套用三部分。前兩章為基本開發環境的介紹,其中包括8x51基本知識、開發系統(mVision3)與程式設計語言(Keil C)。第3章到第8章為8x51結構與套用,包括輸入/輸出連線埠、中斷、定時器/計數器、串列口等,並分別以實例引出。第9章到第14章則是外圍系統套用,包括音樂程式的開發、步進電機的控制、AD/DAC接口晶片的套用、LED點陣的驅動、LCD模組的套用、習題解答等。
本書整體結構採用循序漸進的方式,對於每個單元的展開,也是循序漸進的。電路與電路之間,或程式與程式之間,都保持著關聯性。在前一個電路(或程式)的基礎之上,只做一些微小的改變,就可開發出另一個電路(或程式),讓讀者輕鬆入門。在每個實例演練之後,給出“思考一下”的單元,讀者能即學即用,動腦思考,讓所學知識得以進一步鞏固。
本書可作為大中專院校的單片機教材,也可以作為廣大科技人員和愛好者的單片機技術參考書。
圖書目錄
第1章 輕鬆看MCS-51 1
1-1 微型計算機與單片機 2
1-2 8051基礎知識 2
1-2-1 8x51的結構 2
1-2-2 89C51/89S51的封裝與引腳 3
1-2-3 89S51的基本電路 6
1-2-4 MCS-51系列 8
1-2-5 關於Atmel的51系列 10
1-3 認識MCS-51的存儲器結構 11
1-3-1 程式存儲器 11
1-3-2 數據存儲器 12
1-3-3 特殊功能暫存器 14
1-4 MCS-51的時序分析與復位 18
1-4-1 時序分析 18
1-4-2 復位 19
1-5 MCS-51的開發流程與工具 20
1-5-1 傳統開發工具 21
1-5-2 Altium Designer電路設計軟體 22
1-5-3 Keil mVision3集成開發環境 23
1-5-4 89S51的線上刻錄功能 23
1-6 實例演練 24
1-7 實時練習 31
第2章 認識mVision3與Keil C 33
2-1 mVision3環境簡介 34
2-1-1 認識mVision3環境 34
2-1-2 項目管理與選項 37
2-1-3 認識調試/仿真環境 39
2-1-4 外圍操作 40
2-2 Keil C語言的基本結構 43
2-3 變數、常數與數據類型 47
2-3-1 數據類型 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 循環指令 57
2-6-2 選擇指令 60
2-6-3 跳轉指令 62
2-7 數組與指針 63
2-7-1 數組 63
2-7-2 指針 64
2-8 函式與中斷子程式 64
2-8-1 函式 65
2-8-2 中斷子程式 65
2-9 Keil C的預處理命令 66
2-10 實時練習 67
第3章 輸出連線埠的套用 69
3-1 認識MCS-51的輸入/輸出連線埠 70
3-2 輸出電路設計 72
3-2-1 驅動LED 72
3-2-2 驅動蜂鳴器 73
3-2-3 驅動繼電器 74
3-2-4 驅動固態繼電器 75
3-2-5 驅動七段LED數碼管 76
3-3 實例演練 78
3-3-1 驅動蜂鳴器實驗 78
3-3-2 驅動繼電器實驗 81
3-3-3 霹靂燈實例演練 83
3-3-4 驅動七段LED數碼管實驗 85
3-4 實時練習 87
第4章 輸入口的套用 89
4-1 認識MCS-51的輸入口 90
4-2 輸入設備與輸入電路設計 90
4-2-1 輸入設備 90
4-2-2 輸入電路設計 93
4-2-3 抖動與去抖動 95
4-3 實例演練 97
4-3-1 撥碼開關控制 97
4-3-2 按鈕開關控制 99
4-3-3 按鈕切換式控制 100
4-3-4 按鈕開關套用 102
4-3-5 BCD撥碼開關 104
4-3-6 多個按鈕開關 106
4-3-7 按鈕開關放開後動作 111
4-4 實時練習 113
第5章 輸入/輸出連線埠的高級套用 115
5-1 鍵盤掃描 116
5-1-1 鍵盤掃描原理 118
5-1-2 4×4鍵盤程式分析 120
5-1-3 認識MM74C922/MM74C923 122
5-2 七段LED數碼顯示管掃描 124
5-2-1 認識七段LED數碼管模組 125
5-2-2 認識7447/7448 128
5-2-3 認識74138/74139 131
5-3 靜態顯示與動態顯示 132
5-3-1 使用BCD解碼器 133
5-3-2 直接驅動 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位數七段LED數碼管 142
5-4-2 直接驅動七段LED數碼管 145
5-4-3 跑馬燈 148
5-4-4 4×4鍵盤與七段LED數碼管 150
5-4-5 MM74C922 153
5-5 實時練習 154
第6章 中斷的套用 156
6-1 認識MCS-51的中斷 157
6-1-1 MCS-51的中斷 157
6-1-2 中斷使能暫存器IE 158
6-1-3 中斷優先權暫存器IP 159
6-1-4 定時器/計數器控制暫存器TCON 160
6-1-5 中斷向量 160
6-1-6 中斷的套用 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 實時練習 172
第7章 定時器/計數器的套用 174
7-1 8x51的定時器/計數器 175
7-1-1 MCS-51的定時器/計數器 175
7-1-2 定時器/計數器方式暫存器TMOD 175
7-1-3 定時器/計數器控制暫存器TCON 178
7-1-4 計數暫存器 178
7-1-5 定時器/計數器的套用 180
7-2 8x52的Timer2 181
7-2-1 T2CON暫存器 181
7-2-2 捕獲方式 182
7-2-3 自動載入方式 183
7-2-4 波特率發生方式 183
7-3 8x51的節電方式 184
7-3-1 待機方式 185
7-3-2 掉電方式 185
7-3-3 電源控制暫存器PCON 186
7-4 認識看門狗定時器 186
7-5 實例演練 188
7-5-1 閃爍燈——查詢方式 188
7-5-2 閃爍燈——中斷方式 190
7-5-3 60秒定時器 191
7-5-4 秒表 194
7-5-5 頻率發生器 197
7-5-6 頻率計 200
7-5-7 看門狗定時器 204
7-6 實時練習 206
第8章 串列口的套用 208
8-1 數據通信概念 209
8-2 認識8x51的串列口 210
8-3 認識相關暫存器 211
8-4 波特率設定 213
8-5 特殊功能與多處理器數據傳輸 215
8-5-1 幀錯誤檢測 215
8-5-2 自動地址識別 216
8-5-3 多處理器通信 217
8-6 認識MAX232 218
8-7 認識74164/74165 220
8-8 實例演練 221
8-8-1 移位式數據串入 221
8-8-2 移位式數據串出 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 實時練習 237
第9章 聲音的產生 239
9-1 發聲電路 240
9-2 音調與節拍 241
9-3 音調的產生 243
9-4 節拍的產生 248
9-5 實例演練 254
9-5-1 簡易電子琴 255
9-5-2 DoReMi實驗 257
9-5-3 生日快樂歌實驗 260
9-5-4 快樂點唱機一 262
9-5-5 快樂點唱機二 268
9-6 實時練習 270
第10章 步進電機的控制 272
10-1 認識步進電機 273
10-1-1 步進電機的結構 273
10-1-2 步進電機的動作 274
10-1-3 步進電機的定位 276
10-2 步進電機驅動電路 278
10-2-1 小型步進電機的驅動電路 278
10-2-2 達林頓電晶體驅動電路 279
10-2-3 FT5754驅動電路 279
10-3 實例演練 280
10-3-1 用延遲子程式產生驅動信號 280
10-3-2 用定時器產生驅動信號 282
10-3-3 1-2相驅動 284
10-3-4 方向控制 286
10-4 實時練習 288
第11章 ADC與DAC的套用 290
11-1 模/數轉換原理 291
11-2 認識AD轉換IC 294
11-3 數/模轉換原理 298
11-4 認識DA轉換IC 302
11-5 內含ADC的51系列 305
11-6 認識溫度感測器 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 實時練習 324
第12章 LED點陣的套用 327
12-1 認識LED點陣 328
12-2 LED點陣驅動電路 330
12-3 LED點陣顯示方式 335
12-4 LED點陣動態顯示 336
12-4-1 水平移動 336
12-4-2 垂直移動 342
12-5 實例演練 345
12-5-1 8×8 LED點陣靜態顯示 345
12-5-2 8×8 LED點陣靜態多色顯示 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 實時練習 363
第13章 LCD模組的套用 365
13-1 認識LCD模組 366
13-2 中文LCD模組 371
13-3 LCM控制指令 374
13-4 LCM的初始化設定與常用函式 377
13-5 LCM與8x51的連線 384
13-6 實例演練 384
13-6-1 LCD文字顯示 385
13-6-2 自定義字元圖案 387
13-7 實時練習 394
第14章 習題解答 396