電腦及智能硬件原理
劉海成
相關主題
商品描述
目錄大綱
目 錄
第1章 電腦與智能硬件 1
1.1 從有限狀態機到數字電腦 1
1.2 電腦的組成及工作模型 3
1.2.1 電腦的存儲器、系統總線及字長 3
1.2.2 CPU與程序的執行 4
1.2.3 函數調用與棧 7
1.3 電腦的體系結構 9
1.3.1 通用電腦與嵌入式系統 9
1.3.2 電腦的指令集體系結構 10
1.3.3 電腦的系統級存儲器訪問體系結構 11
1.4 嵌入式微處理器與智能硬件 12
1.4.1 嵌入式系統與智能硬件 12
1.4.2 嵌入式微處理器 13
1.5 51系列單片機 15
1.5.1 經典型51單片機 15
1.5.2 經典型51單片機的最小系統 19
1.6 51系列單片機的存儲器結構 20
1.6.1 51系列單片機的存儲器構成 20
1.6.2 51系列單片機的外設寄存器 23
習題與思考題 26
第2章 指令系統與匯編程序設計 28
2.1 匯編指令及偽指令 28
2.1.1 指令與匯編語言 28
2.1.2 指令系統與指令格式 28
2.1.3 偽指令 29
2.2 尋址方式 32
2.2.1 尋址方式及三種面向 32
2.2.2 數的尋址 33
2.2.3 指令尋址 35
2.3 數據傳送指令 36
2.3.1 普通傳送指令 36
2.3.2 數據交換指令 39
2.3.3 棧操作指令 40
2.3.4 位傳送指令 40
2.4 算術運算指令 41
2.4.1 加法指令 41
2.4.2 減法指令 43
2.4.3 乘法和除法指令 44
2.5 邏輯運算指令 45
2.5.1 邏輯與、邏輯或和邏輯異或指令 45
2.5.2 累加器的邏輯運算指令 46
2.5.3 位邏輯操作指令 48
2.6 控制轉移指令與匯編軟件設計 48
2.6.1 無條件轉移指令 49
2.6.2 子程序調用及返回指令 50
2.6.3 條件轉移指令及應用 54
2.6.4 空操作指令與軟件延時 62
習題與思考題 63
第3章 嵌入式C程序設計與開發調試 66
3.1 51系列單片機的C編譯器 66
3.2 C51/Cx51的數據類型及定義 68
3.2.1 C51/Cx51的數據類型 68
3.2.2 C51/Cx51的存儲類型 71
3.2.3 C51/Cx51的存儲模式 72
3.3 C51/Cx51中絕對地址的訪問 73
3.4 Keil μVision嵌入式集成開發環境 75
3.5 嵌入式開發工具與調試 81
3.5.1 嵌入式系統的開發工具 81
3.5.2 嵌入式系統的調試 83
習題與思考題 84
第4章 中斷與中斷系統 85
4.1 異步事件的查詢工作方式和中斷工作方式 85
4.1.1 異步事件的查詢工作方式 85
4.1.2 異步事件的中斷工作方式 85
4.2 電腦的中斷系統及中斷響應過程 86
4.2.1 中斷系統 87
4.2.2 中斷響應過程 88
4.3 51系列單片機的中斷系統及軟件設計方法 90
4.3.1 經典型51單片機的中斷源和中斷系統 90
4.3.2 51系列單片機中斷程序的編制 92
4.4 外中斷 94
4.4.1 外中斷及其中斷請求觸發方式 94
4.4.2 經典型51單片機的外中斷及軟件設計 94
4.4.3 多外部中斷源查詢中斷系統設計 95
4.5 外設及存儲器的DMA工作方式 97
習題與思考題 100
第5章 GPIO及人機接口技術初步 101
5.1 微處理器的GPIO 101
5.1.1 GPIO的基本結構 101
5.1.2 GPIO的輸出驅動電路 103
5.2 經典型51單片機的GPIO 107
5.3 LED數碼管顯示器接口技術 111
5.3.1 LED數碼管顯示器及解碼方式 111
5.3.2 LED數碼管的顯示驅動方式 114
5.4 機械鍵盤接口技術 117
5.4.1 鍵盤的工作原理 117
5.4.2 矩陣式鍵盤及驅動接口 120
5.4.3 鍵盤的工作方式 124
習題與思考題 128
第6章 系統總線與系統擴展技術 129
6.1 系統總線及時序 129
6.1.1 微處理器的系統總線 129
6.1.2 經典型51單片機的系統總線 130
6.1.3 經典型51單片機的系統總線時序 131
6.2 系統級存儲器的綜合擴展 134
6.2.1 系統總線的共享原則 134
6.2.2 相同控制信號系統級器件的綜合擴展 135
6.2.3 同時擴展程序存儲器與數據存儲器 138
6.3 基於系統總線擴展系統級外設 140
6.3.1 基於系統總線擴展系統級GPIO 140
6.3.2 基於系統總線擴展系統級外設舉例:擴展A/D轉換器(ADC0809) 143
6.4 1602字符液晶及其6800時序接口技術 145
6.4.1 6800系統總線及時序模擬 146
6.4.2 1602字符液晶及軟件驅動設計 149
習題與思考題 154
第7章 嵌入式微處理器的定時/計數器及應用 156
7.1 嵌入式微處理器的定時/計數器外設 156
7.2 Timer0和Timer1 157
7.2.1 Timer0、Timer1的結構及相關SFR 157
7.2.2 Timer0和Timer1的16位計數方式 159
7.3 定時/計數器的自動重載工作方式 162
7.3.1 Timer0和Timer1的8位自動重載工作方式 162
7.3.2 Timer2及16位自動重載工作方式 164
7.3.3 利用自動重載計數器擴展外中斷的原理和方法 167
7.4 基於定時器的周期信號發生技術 168
7.4.1 基於定時器產生PWM波的原理 168
7.4.2 基於DDS原理和DAC產生波形 170
7.5 時間間隔、時刻差測量與Timer2的捕獲工作方式 174
7.5.1 GATE位與脈寬測量 174
7.5.2 脈寬測量項目——雙積分型A/D轉換器(ICL7135)接口技術 175
7.5.3 Timer2的捕獲工作方式與時刻差測量 179
7.5.4 時刻差測量的典型應用項目及分析 181
7.6 矩形波的頻率測量 183
7.6.1 頻率的直接測量方法——定時計數方法 184
7.6.2 頻率的間接測量方法——測量周期法 186
7.6.3 優化測量法 186
7.6.4 頻率測量的典型應用項目及分析 190
習題與思考題 191
第8章 UART與智能硬件通信技術 192
8.1 串行通信與UART 192
8.1.1 數據通信與串行通信 192
8.1.2 串行通信的位同步與UART 193
8.2 RS-232和RS-485串行通信接口 195
8.2.1 RS???232接口 195
8.2.2 RS???485接口 198
8.3 51系列單片機的UART及軟件設計 200
8.3.1 51系列單片機串行口的UART 200
8.3.2 UART的波特率設置及初始化 202
8.3.3 UART點對點通信實例 204
8.4 單主多從的現場總線多機通信系統 211
8.4.1 UART的單主多從多機通信模式及多機通信原理 212
8.4.2 單主多從現場總線與校驗技術 216
習題與思考題 223
第9章 智能硬件的串行擴展技術 224
9.1 SPI總線擴展接口及時序 224
9.1.1 SPI總線及其應用系統結構 224
9.1.2 SPI總線的接口時序 225
9.1.3 經典型51單片機串口的方式0——8位LSB半雙工SPI主機 226
9.1.4 SPI與DSPI、QSPI擴展接口 232
9.2 軟件模擬SPI主機時序實例 233
9.2.1 串入並出擴展輸出口 233
9.2.2 擴展A/D轉換器——TLC2543 234
9.3 I2C串行總線擴展技術 237
9.3.1 I2C總線拓撲及引腳結構 237
9.3.2 I2C總線的數據傳送 239
9.3.3 I2C主機的軟件模擬 242
9.3.4 I2C總線接口E2PROM 248
9.4 單色圖形點陣液晶和OLED屏 249
9.5 DS18B20溫度傳感器與單總線擴展技術 253
9.5.1 DS18B20及操作命令 253
9.5.2 DS18B20的單總線組網與識別 256
9.5.3 DS18B20的單總線讀寫時序 258
9.5.4 單片DS18B20測溫應用程序設計 259
習題與思考題 262
第10章 Arduino與開源硬件 263
10.1 Arduino硬件開發板 263
10.1.1 AVR系列單片機與Arduino 263
10.1.2 ARM Cortex-M內核微處理器與Arduino 266
10.2 Arduino IDE及框架化編程 267
10.2.1 Arduino IDE 268
10.2.2 Arduino的軟件框架及通用API 269
10.3 ESP8266串口WiFi模塊 274
10.3.1 ESP8266EX芯片及ESP8266模塊 274
10.3.2 ESP8266的開發模式 276
習題與思考題 279
第11章 模擬信號鏈與智能硬件設計 280
11.1 智能硬件的組成及開發過程 280
11.1.1 硬件系統的組成 280
11.1.2 智能硬件的開發過程 281
11.2 智能硬件的抗乾擾技術 282
11.2.1 硬件抗乾擾 283
11.2.2 軟件抗乾擾及看門狗技術 284
11.3 智能硬件的低功耗設計 285
11.3.1 硬件低功耗設計 286
11.3.2 軟件低功耗設計與微處理器的低功耗工作模式 287
11.4 模擬信號鏈智能硬件設計舉例 288
11.4.1 模擬信號鏈 288
11.4.2 信號鏈設計實例——通用數據採集設備設計 289
習題與思考題 308
附錄A 51系列單片機指令速查表 309
附錄B 邏輯符號對照表 312
參考文獻 314