手把手教你學單片機(第2版)

手把手教你學單片機(第2版)

《手把手教你學單片機(第2版)》是2007年北京航空航天大學出版社出版的圖書,作者是周興華。

基本介紹

圖書信息,內容提要,編輯推薦,圖書目錄,

圖書信息

ISBN:9787811240771 [十位:7811240777]
作/譯者:周興華
出版日期:2007年06月 頁數:317 重量:0.507Kg
定價:¥29.00

內容提要

本書以實際編程及做實驗為主線貫穿全書。完全摒棄教科書的方法,採用“程式完成後軟體仿真-單片機燒錄程式-試驗板通電實驗”的方法,以全新的方式邊學邊實驗,將初學者領進單片機世界的大門。第2版增加了單片機的接口擴展和驅動內容。隨書所附的光碟中提供了本書所有的實驗程式檔案,並增加了多媒體教學例程,可供讀者在學習、實驗時參考。

編輯推薦

本書的讀者對象是大中專學生、職業學校學生、廣大電子製作愛好者。

圖書目錄

第1章 實驗設備及器材使用介紹
1.1 單片機的發展史及特點1
1.2 單片機入門的有效途徑2
1.3 實驗工具及器材3
1.3.1 Keil C51 Windows集成開發環境3
1.3.2 TOP851多功能編程器4
1.3.3 LED輸出試驗板5
1.3.4 LED數碼管輸出試驗板6
1.3.5 5 V高穩定專用穩壓電源8
1.3.6 16×2字元型液晶顯示模組8
第2章 Keil C51集成開發環境及TOP851多功能編程器
2.1 Keil C51集成開發環境軟體安裝10
2.2 TOP851燒錄軟體安裝11
2.3 TOP851燒錄軟體操作12
2.3.1 檔案操作和編輯12
2.3.2 選擇型號16
2.3.3 讀/寫單片機17
第3章 初步接觸KeilC51及TOP851軟體並感受第一個演示程式效果
3.1 建立一個工程項目,選擇晶片並確定選項19
3.2 建立源程式檔案21
3.3 添加檔案到當前項目組中22
3.4 編譯(彙編)檔案23
3.5 檢查並修改源程式檔案中的錯誤24
3.6 軟體模擬仿真調試24
3.7 燒錄程式(編程操作)25
3.8 觀察程式運行的結果27
第4章 單片機的基本知識
4.1 MCS51單片機的基本結構28
4.2 80C51基本特性及引腳定義29
4.2.1 80C51的基本特徵29
4.2.2 80C51的引腳定義及功能30
4.3 80C51的內部結構31
4.4 80C51的存儲器配置和暫存器33
第5章 彙編語言程式指令的學習
5.1 MCS51單片機的指令系統37
5.2 彙編語言的特點38
5.3 彙編語言的語句格式38
第6章 數據傳送指令的學習及實驗
6.1 按定址方式分類的數據傳送指令40
6.1.1 立即數定址40
6.1.2 直接定址40
6.1.3 暫存器定址40
6.1.4 暫存器間接定址40
6.1.5 位定址41
6.1.6 變址定址41
6.1.7 相對定址41
6.2 點亮/熄滅一個發光二極體的實驗,自動循環工作41
6.2.1 實現方法41
6.2.2 源程式檔案41
6.2.3 程式分析解釋43
6.2.4 小結43
6.3 點亮/熄滅一個發光二極體的實驗,點亮/熄滅時間自動發生變化(分3段),自動循環工作43
6.3.1 實現方法43
6.3.2 源程式檔案44
6.3.3 程式分析解釋45
6.3.4 小結45
6.4 P1口的8個發光二極體每隔2個右循環點亮實驗46
6.4.1 實現方法46
6.4.2 源程式檔案46
6.4.3 程式分析解釋46
6.4.4 小結47
6.5 MCS51內部的RAM和特殊功能暫存器SFR的數據傳送指令47
6.5.1 以累加器為目的運算元47
6.5.2 以暫存器為目的運算元47
6.5.3 以直接地址為目的運算元47
6.5.4 以暫存器間接地址為目的運算元48
6.5.5 16位數據傳送48
6.6 “跑馬燈”實驗 48
6.6.1 實現方法48
6.6.2 源程式檔案49
6.6.3 程式分析解釋51
6.6.4 小結53
6.7 單片機的受控輸出顯示實驗53
6.7.1 實現方法53
6.7.2 源程式檔案53
6.7.3 程式分析解釋54
6.8 小結55
第7章 算術運算指令的學習及實驗
7.1 算術運算指令56
7.1.1 加法指令56
7.1.2 帶進位加法指令56
7.1.3 帶借位減法指令56
7.1.4 乘法指令57
7.1.5 除法指令57
7.1.6 加1指令57
7.1.7 減1指令57
7.1.8 二十進制調整指令58
7.2 52H、FCH兩數相加實驗,結果從P1口輸出58
7.2.1 實現方法58
7.2.2 源程式檔案58
7.2.3 程式分析解釋59
7.3 FFH、03H兩數相乘實驗,結果從P0、P1口輸出60
7.3.1 實現方法60
7.3.2 源程式檔案60
7.3.3 程式分析解釋61
7.4 加1指令實驗,讓P1口的8個發光二極體模擬二進制的加法運算61
7.4.1 實現方法61
7.4.2 源程式檔案61
7.4.3 程式分析解釋62
7.5 加1指令實驗(不進行二十進制調整)62
7.5.1 實現方法62
7.5.2 源程式檔案63
7.5.3 程式分析解釋64
7.6 加1指令實驗(進行二十進制調整)64
7.6.1 實現方法64
7.6.2 源程式檔案64
7.6.3 程式分析解釋65
7.7 小結66
第8章 邏輯運算指令的學習及實驗
8.1 邏輯運算指令67
8.1.1 累加器A取反指令67
8.1.2 累加器A清0指令67
8.1.3 邏輯“與”指令67
8.1.4 邏輯“或”指令68
8.1.5 邏輯“異或”指令68
8.1.6 循環移位指令68
8.1.7 累加器半位元組交換指令69
8.2 邏輯運算舉例一69
8.2.1 實現方法69
8.2.2 源程式檔案69
8.2.3 程式分析解釋71
8.3 邏輯運算舉例二72
8.3.1 實現方法72
8.3.2 源程式檔案72
8.3.3 程式分析解釋73
8.4 邏輯運算舉例三73
8.4.1 實現方法74
8.4.2 源程式檔案74
8.4.3 程式分析解釋74
8.5 小結75
第9章 控制轉移類指令的學習及實驗
9.1 控制轉移類指令76
9.1.1 無條件轉移指令76
9.1.2 條件轉移指令77
9.1.3 比較轉移指令77
9.1.4 循環轉移指令78
9.1.5 子程式調用及返回指令78
9.2 散轉程式實驗79
9.2.1 實現方法79
9.2.2 源程式檔案80
9.2.3 程式分析解釋82
9.2.4 小結83
9.3 統計含58H關鍵字的實驗84
9.3.1 實現方法84
9.3.2 源程式檔案84
9.3.3 程式分析解釋85
第10章 位操作指令的學習
10.1 位操作指令87
10.1.1 位數據傳送指令87
10.1.2 位控制修正指令87
10.1.3 位邏輯運算指令88
10.2 將P1.0的狀態傳送到P2.0的實驗88
10.2.1 實現方法88
10.2.2 源程式檔案88
10.2.3 程式分析解釋89
10.3 比較輸入數大小的實驗90
10.3.1 實現方法90
10.3.2 源程式檔案90
10.3.3 程式分析解釋91
10.4 將累加器A中的立即數移出的實驗91
10.4.1 實現方法92
10.4.2 源程式檔案92
10.4.3 程式分析解釋92
10.5 實現邏輯函式的實驗93
10.5.1 實現方法93
10.5.2 源程式檔案93
10.5.3 程式分析解釋94
第11章 棧操作指令、空操作指令、偽指令及位元組交換指令的學習 11.1 棧操作指令96
11.1.1 堆疊指令96
11.1.2 出棧指令96
11.2 空操作指令96
11.3 偽指令97
11.3.1 彙編起始命令97
11.3.2 彙編結束命令97
11.3.3 等值命令97
11.3.4 定義位元組命令98
11.3.5 定義字命令98
11.3.6 預留存儲區命令99
11.3.7 定義位命令99 11.3.8 定義數據地址命令99 11.4 位元組交換指令99
11.5 查0~9平方表實驗100
11.5.1 實現方法100
11.5.2 源程式檔案100
11.5.3 程式分析解釋102
11.6 利用NOP指令產生精確方波實驗104
11.6.1 實現方法104 11.6.2 源程式檔案104
11.6.3 程式分析解釋106
11.7 MCS51指令分類表107
第12章 定時器/計數器及實驗
12.1 定時器/計數器的結構及工作原理111
12.2 定時器/計數器方式暫存器和控制暫存器112
12.3 定時器/計數器的工作方式113
12.3.1 方式0113
12.3.2 方式1114
12.3.3 方式2115 12.3.4 方式3115
12.4 定時器/計數器的初始化116
12.5 蜂鳴器發音實驗117 12.5.1 實現方法117
12.5.2 源程式檔案117
12.5.3 程式分析解釋118
12.6 定時器T1方式2計數實驗118
12.6.1 實現方法118
12.6.2 源程式檔案119
12.6.3 程式分析解釋119 12.7 定時器T1方式1定時實驗120 12.7.1 實現方法120
12.7.2 源程式檔案120
12.7.3 程式分析解釋121
第13章 中斷系統及實驗
13.1 中斷的種類124
13.1.1 外中斷124
13.1.2 內中斷124
13.2 MCS51單片機的中斷系統124
13.2.1 中斷源及控制124
13.2.2 中斷回響127
13.3 令LED輸出試驗板上的蜂鳴器發出1 kHz音頻的實驗128
13.3.1 實現方法128 13.3.2 源程式檔案129
13.3.3 程式分析解釋129
13.4 利用外中斷方式進行數據採集實驗130
13.4.1 實現方法130 13.4.2 源程式檔案130 13.4.3 程式分析解釋131 13.5 中斷嵌套實驗132
13.5.1 實現方法132
13.5.2 源程式檔案132
13.5.3 程式分析解釋133
13.6 交通燈控制器實驗134
13.6.1 實現方法134 13.6.2 源程式檔案134
13.6.3 程式分析解釋136
13.7 鍵控計數實驗138
13.7.1 實現方法138 13.7.2 源程式檔案138
13.7.3 程式分析解釋139
第14章 彙編語言的程式設計及實驗
14.1 單片機套用系統的設計過程141
14.2 彙編語言程式設計步驟142
14.3 順序程式設計142
14.4 右移循環流水燈實驗143
14.4.1 實現方法143
14.4.2 源程式檔案143
14.4.3 程式分析解釋144
14.5 循環程式設計145 14.6 找數據塊中最大數的實驗145
14.6.1 實現方法145
14.6.2 源程式檔案146
14.6.3 程式分析解釋147
14.7 延時子程式的結構148
14.8 尋找ASCII碼“$”的實驗149
14.8.1 實現方法149
14.8.2 源程式檔案149
14.8.3 程式分析解釋150
14.9 子程式設計、調用及返回151
14.9.1 子程式的結構特點151 14.9.2 編寫子程式時的注意要點151
14.9.3 子程式的調用與返回152
14.9.4 子程式嵌套152
14.10 使P0口的8個LED閃爍20次實驗152
14.10.1 實現方法152
14.10.2 源程式檔案152
14.10.3 程式分析解釋153
14.11分支程式設計154
14.11.1 單分支程式154
14.11.2 多分支程式154
14.12 做簡單的+、-、×、÷實驗156
14.12.1 實現方法156
14.12.2 源程式檔案156
14.12.3 程式分析解釋158
14.13 查表程式設計160
14.14 單片機演奏音樂的實驗161
14.14.1 實現方法161
14.14.2 源程式檔案161
14.14.3 程式分析解釋163 14.15 數據排序實驗164
14.15.1 實現方法164
14.15.2 源程式檔案165
14.15.3 程式分析解釋171 第15章 鍵盤接口技術及實驗
15.1 獨立式鍵盤172
15.2 行列式鍵盤173
15.3 獨立式鍵盤接口的編程模式173
15.4 行列式鍵盤接口的編程模式174
15.5 鍵盤工作方式174
15.6 獨立式鍵盤輸入實驗175
15.6.1 實現方法175 15.6.2 源程式檔案175
15.6.3 程式分析解釋177
15.7 行列式鍵盤輸入實驗178
15.7.1 實現方法178
15.7.2 源程式檔案178
15.7.3 程式分析解釋180
15.8 掃描方式的鍵盤輸入實驗181
15.8.1 實現方法181
15.8.2 源程式檔案181
15.8.3 程式分析解釋182
15.9 定時中斷方式的鍵盤輸入實驗183
15.9.1 實現方法183
15.9.2 源程式檔案183
15.9.3 程式分析解釋184
第16章 LED顯示器接口技術及實驗
16.1 LED數碼顯示器的構造及特點186 16.2 LED數碼顯示器的顯示方法188 16.2.1靜態顯示法188
16.2.2 動態掃描顯示法189
16.3 靜態顯示實驗190
16.3.1 實現方法190
16.3.2 源程式檔案190
16.3.3 程式分析解釋191
16.4 慢速動態顯示實驗192
16.4.1 源程式檔案192 16.4.2 程式分析解釋193
16.5 快速動態顯示實驗193
16.5.1 源程式檔案193
16.5.2 程式分析解釋194
16.6 實時時鐘實驗195
16.6.1 實現方法195
16.6.2 源程式檔案195
16.6.3 程式分析解釋198 第17章 字元型液晶(LCD)模組原理及設計學習
17.1 液晶顯示器概述202
17.2 16×2字元型液晶顯示模組(LCM)特性203
17.3 16×2字元型液晶顯示模組(LCM)引腳及功能203
17.4 16×2字元型液晶顯示模組(LCM)的內部結構203
17.5 液晶顯示控制驅動積體電路HD44780特點204
17.6 HD44780工作原理205 17.6.1 DDRAM——數據顯示用RAM206
17.6.2 CGROM——字元產生器ROM207
17.6.3 CGRAM——字型、字元產生器RAM208
17.6.4 IR——指令暫存器209
17.6.5 DR——數據暫存器209
17.6.6 BF——忙碌標誌信號209
17.6.7 AC——地址計數器209
17.7 LCD控制器的指令209
17.7.1 清除顯示器210
17.7.2 游標歸位設定210
17.7.3 設定字元進入模式210
17.7.4 顯示器開關210
17.7.5 顯示游標移位211
17.7.6 功能設定211 17.7.7 CGRAM地址設定211 17.7.8 DDRAM地址設定211
17.7.9 忙碌標誌BF或AC地址讀取212 17.7.10 寫數據到CGRAM或DDRAM中212 17.7.11 從CGRAM或DDRAM中讀取數據212
17.8 LCM工作時序212
17.9 單片機驅動LCM的電路213
第18章 體驗第一個液晶程式的效果並建立模組化設計的相關子程式
18.1 體驗第一個液晶程式的效果215
18.1.1 源程式檔案215
18.1.2 程式分析解釋218
18.2 查詢忙碌標誌信號子程式222 18.2.1 源程式檔案222
18.2.2 程式分析解釋222
18.3 寫指令到LCM(IR暫存器)子程式223
18.3.1 源程式檔案223
18.3.2 程式分析解釋223
18.4 寫數據到LCM(DR暫存器)子程式223
18.4.1 源程式檔案223 18.4.2 程式分析解釋224
18.5 清除顯示屏子程式224 18.5.1 源程式檔案224
18.5.2 程式分析解釋224
18.6 啟動LCM子程式224 18.6.1 源程式檔案225
18.6.2 程式分析解釋225
18.7 讓字母“F”在顯示屏的第2行第10列顯示227 18.7.1 源程式檔案227
18.7.2 程式分析解釋228
18.8 使LCM顯示2行字元串(英文信息)229
18.8.1 源程式檔案229
18.8.2 程式分析解釋232 18.9 使LCM顯示2行字元串(英文信息)並循環移動233
18.9.1 源程式檔案233
18.9.2 程式分析解釋235
第19章 簡單的液晶顯示型自動化儀器的設計學習及實驗
19.1 工業生產自動計數器238 19.1.1 實現方法238
19.1.2 源程式檔案238
19.1.3 程式分析解釋246
19.2 設備運行狀態自動顯示器249 19.2.1 實現方法250
19.2.2 源程式檔案250
19.2.3 程式分析解釋253
19.3 液晶顯示計時時鐘254
19.3.1 源程式檔案254
19.3.2 程式分析解釋260
19.4 讓液晶顯示屏顯示自製圖形“中”264
19.4.1 實現方法264
19.4.2 源程式檔案264
19.4.3 程式分析解釋266 19.5 液晶顯示屏顯示複雜的自製圖形268
19.5.1 實現方法268
19.5.2 源程式檔案268 19.5.3 程式分析解釋271
第20章 Keil C51集成開發環境的設定及調試方法
20.1 工程項目的建立、源程式檔案的建立及載入273
20.1.1 建立工程檔案274
20.1.2 源程式檔案的建立276
20.1.3 添加檔案到當前項目組中278
20.2 工程的詳細設定280
20.2.1 Target頁面280
20.2.2 Output頁面281
20.2.3 Listing頁面282
20.2.4 C51頁面283
20.2.5 Debug頁面 284
20.3 編譯、連線285
20.4 Keil C51集成開發環境軟體的調試方法286
20.4.1 常用調試命令286 20.4.2 斷點設定286
20.4.3 線上彙編287
20.4.4 程式調試時的常用視窗287 20.5 外圍接口工具289
20.5.1 P1口作為輸入連線埠289
20.5.2 P1口作為輸出連線埠290
20.5.3 外部中斷INT0291 20.5.4 定時器/計數器0292
第21章 看門狗定時器使用及簡單的接口擴展 21.1 看門狗定時器的使用293
21.2 實驗: P0~P3口的32個LED(發光管)依次流水點亮,形成“流水燈” 293 21.2.1 實現方法294
21.2.2 源程式檔案294 21.2.3 程式分析解釋295 21.3 模擬程式失控情況的“流水燈”實驗297 21.3.1 源程式檔案297 21.3.2 程式分析解釋299
21.4 簡單的接口功率擴展300
21.5 常用的外部晶片擴展302
21.5.1 數據存儲器6264的擴展及套用實例303
21.5.2 用8255A可程式並行接口晶片擴展I/O口及套用實例307
21.5.3 用8155A可程式並行接口晶片擴展I/O口及套用實例310
21.5.4 擴展8位A/D轉換晶片ADC0809及套用實例314
21.5.5 擴展8位D/A轉換晶片DAC0832及套用實例317 參考文獻320

相關詞條

熱門詞條

聯絡我們