基本介紹
圖書信息,圖書目錄,內容簡介,
圖書信息
書 名: Freescale HCS08單片機原理及套用
作 者:楊明
出版時間: 2011年10月1日
開本: 16開
定價: 49.80元
圖書目錄
第1章 Freescale HCS08系列
MCU概述 1
1.1 MCU概述 1
1.2 全球著名廠家MCU簡介 5
1.2.1 Freescale公司MCU 5
1.2.2 Microchip公司的MCU 6
1.2.3 日系公司MCU 7
1.2.4 MCS-51系列MCU 10
1.2.5 TI公司MSP430系列MCU 10
1.2.6 凌陽公司MCU 11
1.3 MCU的選型 11
1.3.1 MCU的適用性 11
1.3.2 MCU的可開發性 12
1.3.3 MCU的可購買性 13
1.4 Freescale的S08系列MCU簡介 13
1.4.1 Freescale S08系列MCU的發展及產品介紹 13
1.4.2 Freescale S08系列MCU命名法 15
1.5 MC9S08AW簡介 15
1.6 MC9S08AW外部引腳和最小系統 19
1.6.1 晶片引腳圖 19
1.6.2 最小系統連線 19
1.7 MC9S08AW內部框圖 24
1.8 MC9S08AW60特性 25
1.9 CPU核HCS08簡介 27
1.9.1 特性 27
1.9.2 CPU暫存器 28
1.10 系統時鐘和匯流排周期 34
1.10.1 系統時鐘 34
1.10.2 匯流排周期 34
1.11 思考與練習 35
第2章 存儲器 36
2.1 CPU和存儲器、暫存器編址方式 36
2.2 MC9S08AW系列的存儲器空間分配 38
2.3 RAM 40
2.4 暫存器地址和位分配 41
2.4.1 直接頁暫存器 41
2.4.2 高頁暫存器 44
2.4.3 非易失性暫存器 46
2.5 Flash 47
2.6 復位和中斷向量分配 47
2.7 思考與練習 49
第3章 彙編指令及程式設計 50
3.1 概述 50
3.2 定址方式 52
3.2.1 隱含定址方式(INH) 53
3.2.2 立即定址方式(IMM) 54
3.2.3 直接定址方式(DIR) 54
3.2.4 擴展定址方式(EXT) 54
3.2.5 變址定址方式 55
3.2.6 相對定址方式(REL) 57
3.2.7 堆疊定址方式 58
3.2.8 存儲器到存儲器定址 59
3.3 特殊操作 61
3.3.1 復位操作 61
3.3.2 中斷操作 62
3.3.3 WAIT操作 62
3.3.4 STOP操作 62
3.3.5 BGND指令 63
3.4 指令系統 63
3.4.1 數據傳送類指令 64
3.4.2 算術運算類指令 69
3.4.3 邏輯操作類指令 78
3.4.4 位操作類指令 82
3.4.5 轉移類指令 84
3.4.6 其他指令 88
3.5 符號與偽指令 93
3.5.1 標號和常量 93
3.5.2 偽指令 94
3.6 彙編語言程式設計 98
3.6.1 彙編語句格式 98
3.6.2 源程式框架結構 99
3.6.3 彙編程式設計 102
3.7 目標代碼(S19)檔案 106
3.8 Codewarrior軟體使用初步 110
3.8.1 Codewarrior軟體簡介 110
3.8.2 Codewarriror軟體的使用 110
3.9 思考與練習 120
第4章 MCU工作模式 122
4.1 簡介 122
4.2 特性 122
4.3 Run模式 123
4.4 活動背景調試模式 124
4.5 Wait模式 124
4.6 Stop模式 125
4.6.1 Stop2模式 125
4.6.2 Stop3模式 126
4.6.3 Stop模式下活動BDM的允許 126
4.6.4 Stop模式下LVD的允許 127
4.6.5 Stop模式下的片內外圍模組 127
4.7 編程舉例 128
4.8 思考與練習 129
第5章 復位、中斷和MCLK輸出 130
5.1 復位 130
5.1.1 復位種類及復位效果 130
5.1.2 復位狀態暫存器 131
5.1.3 引腳復位 133
5.1.4 COP復位 134
5.1.5 系統電源管理復位 138
5.2 中斷 145
5.2.1 中斷處理過程及堆疊結構 145
5.2.2 中斷源和中斷向量 147
5.2.3 外部引腳IRQ中斷 148
5.2.4 實時中斷(RTI) 153
5.3 MCLK輸出 157
5.4 思考與練習 158
第6章 內部時鐘生成器 160
6.1 模組簡介 160
6.1.1 ICG模組框圖 160
6.1.2 系統時鐘分配 163
6.1.3 特性 164
6.1.4 工作模式 165
6.2 外部引腳 166
6.2.1 EXTAL——外部參考時鐘/晶振輸入 167
6.2.2 XTAL——晶振輸出 167
6.2.3 外部時鐘連線 167
6.2.4 外部晶振連線 167
6.3 模組功能描述 168
6.3.1 關斷模式(Off) 168
6.3.2 自供時鐘模式(SCM) 169
6.3.3 啟用FLL且採用內部時鐘模式(FEI) 169
6.3.4 旁路FLL且採用外部時鐘模式(FBE) 170
6.3.5 啟用FLL且採用外部時鐘模式(FEE) 170
6.3.6 FLL鎖定和失鎖檢測 171
6.3.7 FLL時鐘丟失檢測 171
6.3.8 時鐘模式設定 172
6.3.9 固定頻率時鐘 173
6.3.10 高增益振盪器 173
6.4 暫存器定義 174
6.4.1 ICG控制暫存器1(ICGC1) 174
6.4.2 ICG控制暫存器2(ICGC2) 175
6.4.3 ICG狀態暫存器1(ICGS1) 176
6.4.4 ICG狀態暫存器2(ICGS2) 177
6.4.5 ICG濾波暫存器(ICGFLTU,ICGFLTL) 178
6.4.6 ICG調整暫存器(ICGTRM) 178
6.5 套用舉例 179
6.6 思考與練習 186
第7章 並行輸入/輸出 187
7.1 簡介 187
7.2 引腳結構和模組功能 187
7.2.1 引腳方向和數據暫存器 187
7.2.2 引腳控制 189
7.2.3 引腳復位狀態 193
7.2.4 Stop模式下的引腳行為 193
7.3 暫存器定義 193
7.3.1 並行I/O暫存器(PTxD,PTxDD) 194
7.3.2 連線埠控制暫存器(PtxPE、PtxSE、PTxDS) 195
7.4 套用舉例 196
7.5 思考與練習 201
第8章 鍵盤中斷模組 203
8.1 簡介 203
8.2 內部結構及功能 204
8.2.1 引腳允許 205
8.2.2 邊沿和電平觸發 206
8.2.3 KBI中斷控制 207
8.3 暫存器定義 207
8.3.1 KBI狀態和控制暫存器(KBI1SC) 207
8.3.2 KBI引腳允許暫存器(KBI1PE) 208
8.4 套用舉例 209
8.5 思考與練習 222
第9章 定時計數器TPM 225
9.1 簡介 225
9.2 內部結構及功能 226
9.2.1 計數 228
9.2.2 通道模式選擇 229
9.2.3 TPM中斷 231
9.2.4 PWM End-of-Duty-Cycle事件 232
9.3 外部信號引腳描述 232
9.3.1 外部TPM時鐘源引腳 232
9.3.2 TPMxCHn——TPMx通道n引腳 233
9.4 暫存器定義 233
9.4.1 定時器x狀態控制暫存器(TPMxSC) 233
9.4.2 定時器x計數暫存器(TPMxCNTH:
TPMxCNTL) 234
9.4.3 定時器x模數暫存器(TPMxMODH:TPMxMODL) 235
9.4.4 定時器x的通道n狀態和控制暫存器(TPMxCnSC) 236
9.4.5 定時器x的通道n值暫存器(TPMxCnVH:
TPMxCnVL) 237
9.5 套用舉例 237
9.6 思考與練習 255
第10章 AD轉換器 257
10.1 概述 257
10.2 外部信號引腳描述 257
10.2.1 模擬通道輸入(ADx) 258
10.2.2 模擬電源 260
10.2.3 模擬參考電壓 260
10.3 內部結構及功能 261
10.3.1 輸入選擇和引腳控制 262
10.3.2 時鐘選擇和分頻控制 263
10.3.3 硬體觸發 263
10.3.4 轉換控制 263
10.3.5 自動比較功能 265
10.3.6 溫度感測器 266
10.3.7 低功耗模式 266
10.3.8 誤差源 267
10.4 暫存器定義 269
10.4.1 引腳控制暫存器(APCTLx) 269
10.4.2 狀態和控制暫存器1(ADC1SC1) 270
10.4.3 狀態和控制暫存器2(ADC1SC2) 271
10.4.4 配置暫存器(ADC1CFG) 272
10.4.5 數據結果暫存器(ADC1RH:ADC1RL) 273
10.4.6 比較值暫存器(ADC1CVH:ADC1CVL) 274
10.5 套用舉例 274
10.6 思考與練習 283
第11章 串列通信接口 284
11.1 簡介 284
11.2 內部結構和功能 284
11.2.1 波特率生成器 284
11.2.2 傳送器描述 286
11.2.3 接收器描述 287
11.2.4 中斷和狀態標誌 290
11.2.5 SCI其餘功能 291
11.3 暫存器定義 292
11.3.1 SCI波特率暫存器(SCIxBDH,SCIxBDL) 292
11.3.2 SCI控制暫存器1(SCIxC1) 292
11.3.3 SCI控制暫存器2(SCIxC2) 293
11.3.4 SCI控制暫存器3(SCIxC3) 295
11.3.5 SCI狀態暫存器1(SCIxS1) 296
11.3.6 SCI狀態暫存器2(SCIxS2) 297
11.3.7 SCI數據暫存器(SCIxD) 298
11.4 套用舉例 298
11.5 思考與練習 304
第12章 串列外圍接口 306
12.1 SPI匯流排簡介 306
12.1.1 SPI匯流排信號 306
12.1.2 SPI匯流排時序 307
12.2 S08的SPI模組簡介 309
12.3 內部結構及功能描述 311
12.3.1 SPI模組框圖 311
12.3.2 功能描述 312
12.4 暫存器定義 314
12.4.1 SPI控制暫存器1(SPI1C1) 314
12.4.2 SPI控制暫存器2(SPI1C2) 315
12.4.3 SPI波特率暫存器(SPI1BR) 316
12.4.4 SPI狀態暫存器(SPI1S) 316
12.4.5 SPI數據暫存器(SPI1D) 317
12.5 套用舉例 318
12.6 思考與練習 321
第13章 IIC匯流排接口 322
13.1 IIC匯流排簡介 322
13.1.1 START信號 324
13.1.2 從設備地址傳輸 324
13.1.3 數據傳輸 324
13.1.4 STOP信號 325
13.1.5 重複的START信號 325
13.1.6 仲裁過程 325
13.1.7 時鐘同步 325
13.1.8 握手 326
13.1.9 時鐘伸長 326
13.2 S08的IIC模組簡介 326
13.2.1 內部結構及暫存器定義 327
13.2.2 IIC模組的中斷 333
13.2.3 功能描述 334
13.3 套用舉例 335
13.4 思考與練習 340
第14章 Flash的保護、加密及擦寫 341
14.1 Flash特性 341
14.2 Flash的塊保護、加密和
向量重定位 342
14.2.1 塊保護 342
14.2.2 加密 343
14.2.3 向量重定位 346
14.3 Flash的擦寫 346
14.3.1 擦除和寫入時間 346
14.3.2 擦除和編程命令的執行 348
14.3.3 突發編程命令的執行 350
14.3.4 訪問錯誤 353
14.4 Flash編程舉例 353
14.5 思考與練習 360
附錄A HCS08指令集 361
A.1 引言 361
A.2 命名規則 361
A.3 規範定義 364
A.4 指令集 364
附錄B MC9S08AW60.inc檔案
部分內容 384
附錄C 英文縮寫對照表 391
參考文獻 393
內容簡介
這是在充分消化吸收Freescale公司原始技術資料的基礎上,有機地融入了作者多年來親自從事該公司MCU開發與教學所積累的知識與經驗,並考慮到我國廣大讀者的單片機知識基礎與新的需求編寫的,力求便於讀者自學。