《深入淺出STM8單片機入門、進階與套用實例》是2016年10月1日北京航空航天大學出版社出版的圖書,作者是龍順宇。
基本介紹
- 中文名:深入淺出STM8單片機入門、進階與套用實例
- 作者:龍順宇
- ISBN:9787512421950
- 頁數:804
- 定價:118.00
- 出版社:北京航空航天大學出版社
- 出版時間:2016年10月1日
- 裝幀:平裝
- 開本:16
- 版次:1
內容簡介,圖書目錄,
內容簡介
深入淺出STM8單片機入門、進階與套用實例
本書以意法半導體公司STM8系列單片機作為講述核心,深入淺出地介紹了該系列單片機片內資源及套用,本書以各種巧例解釋相關原理,以資源組成構造學習脈絡,選取主流開發工具構建開發環境,利用實戰項目深化暫存器理解,注重“學”與“用”的結合。讓讀者快樂入門、進階,並將相關知識套用到實際產品研發之中。
本書根據STM8系列單片機的資源脈絡及初學者的進階順序,總共設定了21個章節,根據知識點的難易程度可以分為基礎章節、進階章節和套用章節。基礎章節從第1~7章,主要講解單片機發展、修行方法、STM8單片機家族成員、軟/硬體開發環境搭建及調試、GPIO資源使用和配置、LED器件控制、常見字元/點陣型液晶模組的驅動、獨立按鍵/矩陣鍵盤互動編程的相關知識和套用。進階章節從第8~14章,主要講解單片機內部存儲器資源、選項位元組配置、時鐘控制器、中斷控制器、基本型定時/計數器、高級型定時/計數器、電源管理及功耗控制的相關知識及套用。套用章節從第15~21章,主要講解片內BEEP資源、片內看門狗資源、UART資源、1Wire單匯流排串列通信協定、同步串列外設接口SPI、I2C串列通信、模數轉換器A/D資源的相關知識和套用。
本書可作為套用型高等院校電子信息類相關專業課程輔助用書,亦可作為高職高專類院校、單片機培訓機構和電子類學科競賽的輔助教材,還可以作為單片機愛好者和工程技術人員的自學參考用書。
圖書目錄
第1章 “麻雀雖小,五臟俱全”開門見山談單片機…………………………………………… 1
1.1 “一沙一起源,一芯一世界”積體電路王國……………………………………………… 2
1.2 找尋電子界的神物“七竅玲瓏芯”……………………………………………………… 3
1.3 “師傅領進門,修行靠個人”單片機修行路……………………………………………… 4
1.3.1 “根骨奇佳”電子基礎……………………………………………………………… 5
1.3.2 “能說會道”程式語言……………………………………………………………… 6
1.3.3 “武功秘籍”學習資源……………………………………………………………… 8
1.3.4 “武器裝備”實踐平台……………………………………………………………… 10
1.3.5 “內功心法”學習方法……………………………………………………………… 11
第2章 “五娃出世,各顯神通”初識STM8系列單片機……………………………………… 12
2.1 意法半導體STM8家的“五個娃” …………………………………………………… 13
2.2 “大娃STM8AF”善汽車電子………………………………………………………… 13
2.3 “二娃STM8AL”攻綠色能源………………………………………………………… 15
2.4 “三娃STM8L”會低功耗與便攜……………………………………………………… 16
2.5 “四娃STM8S”主消費及工控………………………………………………………… 17
2.6 “五娃STM8T”通電容接近、觸摸識別……………………………………………… 19
2.7 “主角上場”STM8S207/208系列……………………………………………………… 20
第3章 “工欲善其事,必先利其器”軟/硬體開發環境及調試準備………………………… 23
3.1 “塑造靈魂”軟體開發環境……………………………………………………………… 24
3.1.1 IAR公司的軟體開發環境IARforSTM8……………………………………… 26
3.1.2 ST公司的軟體開發環境STVD ………………………………………………… 33
3.2 “軀幹肢體”硬體開發環境……………………………………………………………… 41
3.2.1 開發板的“那些事兒”……………………………………………………………… 41
3.2.2 思修電子STM8“祥雲”系列開發平台簡介……………………………………… 42
3.3 “形神合一”程式調試與下載…………………………………………………………… 44
3.3.1 調試仿真工具ST-LINK簡介…………………………………………………… 44
3.3.2 可視化編程STVP軟體運用…………………………………………………… 46
3.3.3 Flashloaderdemonstrator串口下載軟體運用………………………………… 49
3.4 “望聞問切”參數測試與分析…………………………………………………………… 53
3.4.1 信號觀察好搭檔“示波器”………………………………………………………… 53
3.4.2 數據分析好幫手“邏輯分析儀”…………………………………………………… 54
第4章 “五指琴魔,智慧型樂章”通用輸入/輸出GPIO 資源………………………………… 56
4.1 GPIO配置模式基礎知識鋪墊………………………………………………………… 57
4.1.1 “Playit!”彈奏單片機的智慧型樂章……………………………………………… 57
4.1.2 如何理解懸浮輸入………………………………………………………………… 58
4.1.3 如何理解上拉輸入………………………………………………………………… 59
4.1.4 如何理解推輓輸出………………………………………………………………… 60
4.1.5 如何理解開漏輸出………………………………………………………………… 60
4.1.6 如何理解GPIO內部保護二極體………………………………………………… 63
4.1.7 GPIO引腳功能復用及意義……………………………………………………… 64
4.1.8 GPIO引腳外部中斷功能………………………………………………………… 65
4.1.9 GPIO引腳電氣性能……………………………………………………………… 66
4.2 初識STM8單片機GPIO資源……………………………………………………… 69
4.2.1 STM8S207/208系列單片機封裝及引腳分布…………………………………… 70
4.2.2 GPIO資源相關暫存器簡介……………………………………………………… 79
4.2.3 GPIO輸入/輸出模式配置流程………………………………………………… 81
第5章 “光電世界,自信爆棚”LED 器件編程套用………………………………………… 87
5.1 瞬間自信心爆棚的入門經典“流水燈”………………………………………………… 88
5.1.1 為什麼入門經典總是“點燈實驗”………………………………………………… 88
5.1.2 發光二極體模型及電氣簡介……………………………………………………… 89
5.1.3 基礎項目A 左移/右移/花樣流水燈…………………………………………… 89
5.2 GPIO資源擴展“小幫手”……………………………………………………………… 93
5.2.1 基礎項目B74HC138解碼器套用實驗………………………………………… 93
5.2.2 基礎項目C74HC154解碼器套用實驗………………………………………… 98
5.2.3 基礎項目D74HC164“串入並出”套用實驗…………………………………… 103
5.3 火柴棍遊戲說“數碼管”原理………………………………………………………… 108
5.3.1 數碼管內部結構及分類………………………………………………………… 109
5.3.2 基礎項目E 一位數碼管0~F數碼顯示……………………………………… 111
5.3.3 實戰項目A 基於74HC595串列動態數碼管顯示…………………………… 114
第6章 “點、線、面的藝術”字元/點陣型液晶編程套用…………………………………… 121
6.1 單片機人機互動中的顯示單元……………………………………………………… 122
6.1.1 常見的單片機顯示方案選擇…………………………………………………… 122
6.1.2 神奇的單片機“顯示卡”…………………………………………………………… 123
6.2 字元型1602液晶模組………………………………………………………………… 124
6.2.1 模組功能引腳定義……………………………………………………………… 125
6.2.2 讀/寫時序及程式實現…………………………………………………………… 126
6.2.3 液晶功能配置命令……………………………………………………………… 128
6.2.4 基礎項目A1602液晶字元、進度條、移屏實驗……………………………… 132
6.2.5 基礎項目B 四線驅動1602節省GPIO實驗………………………………… 138
6.3 圖形/點陣型12864液晶模組………………………………………………………… 141
6.3.1 模組功能引腳定義……………………………………………………………… 142
6.3.2 讀/寫時序及程式實現…………………………………………………………… 143
6.3.3 液晶功能配置命令……………………………………………………………… 144
6.3.4 漢字坐標與繪圖坐標…………………………………………………………… 146
6.3.5 基礎項目C12864液晶字元、漢字顯示實驗…………………………………… 148
6.3.6 實戰項目A12864液晶進度條動畫效果……………………………………… 151
6.3.7 基礎項目D 兩線驅動12864節省GPIO實驗………………………………… 154
6.3.8 實戰項目B 兩線串列模式正弦波打點繪圖…………………………………… 158
第7章 “0101,我是鍵碼!”獨立按鍵/矩陣鍵盤互動編程………………………………… 163
7.1 “輸入設備”人機互動中的“橋樑”…………………………………………………… 164
7.2 輕觸按鍵基礎知識與套用…………………………………………………………… 164
7.2.1 輕觸按鍵分類及組成結構……………………………………………………… 164
7.2.2 輕觸按鍵電壓波形……………………………………………………………… 165
7.2.3 常見按鍵“去抖動”方法………………………………………………………… 166
7.3 基礎按鍵/鍵盤結構及套用…………………………………………………………… 167
7.3.1 獨立按鍵結構及電路…………………………………………………………… 167
7.3.2 基礎項目A 獨立按鍵檢測與控制實驗………………………………………… 168
7.3.3 行列式矩陣鍵盤結構…………………………………………………………… 171
7.3.4 基礎項目B 矩陣鍵盤“線反轉式”掃碼法實驗………………………………… 172
7.4 不曾遺忘的“IBMPS/2”鍵盤/滑鼠協定及套用…………………………………… 179
7.4.1 回到“XT、AT、PS/2”的時代…………………………………………………… 179
7.4.2 PS/2通信及數據幀構成………………………………………………………… 181
7.4.3 PS/2鍵盤的通碼、斷碼和掃描碼集…………………………………………… 182
7.4.4 PS/2設備到主機通信流程……………………………………………………… 186
7.4.5 實戰項目APS/2小鍵盤加1602液晶密碼鎖實驗…………………………… 187
7.4.6 實戰項目BPS/2大鍵盤Shift鍵大小寫功能實驗…………………………… 195
第8章 “高樓大廈,各有功用”Flash程式存儲器與EEPROM …………………………… 202
8.1 小宇老師的“高樓大廈”……………………………………………………………… 203
8.2 細說“高樓大廈”之功用……………………………………………………………… 205
8.2.1 “臨時辦公室”隨機讀寫RAM ………………………………………………… 205
8.2.2 “教務調度室”堆疊……………………………………………………………… 206
8.2.3 “專業教室”FlashROM ………………………………………………………… 206
8.2.4 “機密檔案室”EEPROM ……………………………………………………… 208
8.2.5 “校長決策室”選項位元組………………………………………………………… 209
8.2.6 “學校資源管理”連線埠及外設暫存器…………………………………………… 210
8.2.7 “實訓創新室”引導啟動ROM ………………………………………………… 211
8.2.8 “核心事務管理”CPU/SWIM/Debug/ITC暫存器…………………………… 212
8.2.9 “突發事件傳達室”32級中斷向量……………………………………………… 213
8.3 存儲器資源相關暫存器簡介………………………………………………………… 214
8.3.1 FLASH_CR1/FLASH_CR2控制暫存器……………………………………… 214
8.3.2 FLASH_FPR保護暫存器……………………………………………………… 217
8.3.3 FLASH_PUKR程式存儲器解保護暫存器…………………………………… 218
8.3.4 FLASH_DUKR數據EEPROM 解保護暫存器……………………………… 218
8.3.5 FLASH_IAPSR狀態暫存器…………………………………………………… 219
8.4 FlashROM 的編程方式簡介………………………………………………………… 220
8.4.1 什麼是IAP和ICP ……………………………………………………………… 220
8.4.2 如何理解標準/快速編程以及RWW 功能…………………………………… 220
8.4.3 如何理解位元組編程……………………………………………………………… 221
8.4.4 如何理解字編程………………………………………………………………… 222
8.4.5 如何理解塊編程………………………………………………………………… 223
8.5 存儲器讀/防寫與控制……………………………………………………………… 224
8.5.1 ROP存儲器讀出保護…………………………………………………………… 224
8.5.2 “接頭暗號”MASS存儲器存取安全系統……………………………………… 224
8.6 基礎項目A:1位數碼管計數狀態掉電不丟失實驗……………………………… 226
第9章 “單片機的外科手術”Optionbytes配置及套用…………………………………… 231
9.1 “開始手術”配置系統參數及外設功能……………………………………………… 232
9.2 Optionbytes選項配置詳解………………………………………………………… 233
9.3 利用STVP修改選項位元組方法及流程……………………………………………… 240
9.4 利用IAR修改選項位元組方法及流程………………………………………………… 243
9.5 基礎項目A 基於IAP方式修改選項配置實驗…………………………………… 248
第10章 “內藏三心,堅實比金”時鐘控制器配置及套用…………………………………… 252
10.1 “唐僧的心”說STM8時鐘源選擇………………………………………………… 253
10.2 好大的一棵“時鐘樹”………………………………………………………………… 256
10.3 配置系統主時鐘為HSI …………………………………………………………… 257
10.4 配置系統主時鐘為HSE …………………………………………………………… 265
10.4.1 自動切換時鐘源步驟及配置過程……………………………………………… 265
10.4.2 基礎項目BHSI與HSE自動切換時鐘源…………………………………… 268
10.4.3 手動切換時鐘源步驟及配置過程……………………………………………… 272
10.4.4 基礎項目CHSI與HSE手動切換時鐘源…………………………………… 275
10.5 配置系統主時鐘為LSI …………………………………………………………… 279
10.5.1 基礎項目D 程式配置啟用LSI時鐘源……………………………………… 281
10.5.2 基礎項目EHSI與LSI自動切換時鐘源…………………………………… 283
10.5.3 基礎項目FHSI與LSI手動切換時鐘源…………………………………… 287
10.6 修剪“時鐘樹枝”降低系統功耗……………………………………………………… 288
10.7 時鐘安全系統CSS“比干的心”……………………………………………………… 290
10.7.1 基礎項目G “挖心不死”效果驗證…………………………………………… 294
10.8 可配置時鐘輸出“CCO”功能……………………………………………………… 297
10.8.1 基礎項目H 可配置時鐘輸出“CCO”實驗…………………………………… 299
第11章 “輕重緩急,有條不紊”中斷控制器配置及套用…………………………………… 304
11.1 何謂中斷? 意義何在? ……………………………………………………………… 305
11.2 “中斷”了! 咋處理? ………………………………………………………………… 306
11.3 “臨朝治政,百官進言”中斷源及分類……………………………………………… 308
11.3.1 “皇帝、皇后、皇太后”誰敢惹? ………………………………………………… 309
11.3.2 “文武百官”挨個來……………………………………………………………… 310
11.3.3 “聖旨到!”STM8中斷指令…………………………………………………… 311
11.3.4 “STM8中斷皇朝”遊戲攻略…………………………………………………… 312
11.4 中斷管理模式………………………………………………………………………… 318
11.4.1 非嵌套模式“微臣有本請奏”…………………………………………………… 319
11.4.2 嵌套模式“大人此言差矣”……………………………………………………… 320
11.5 中斷功能相關暫存器詳解…………………………………………………………… 321
11.5.1 CPU 條件代碼暫存器CCR …………………………………………………… 321
11.5.2 軟體優先權暫存器ITC_SPRx ……………………………………………… 323
11.5.3 外部中斷控制暫存器EXTI_CRx …………………………………………… 324
11.6 基礎項目A 查詢法/中斷法獨立按鍵對比實驗…………………………………… 328
第12章 “老和尚捻珠數羊”8位基本型定時/計數器TIM4 ……………………………… 334
12.1 單片機定時/計數器本質及區別…………………………………………………… 335
12.2 STM8S單片機定時/計數器資源…………………………………………………… 336
12.2.1 STM8S定時/計數器分類……………………………………………………… 336
12.2.2 STM8S208MB定時器/計數器簡介………………………………………… 337
12.3 TIM4系統結構及配置方法………………………………………………………… 338
12.3.1 如何理解計數模式? …………………………………………………………… 340
12.3.2 更新事件UEV 的意義………………………………………………………… 341
12.3.3 TIM4初始化流程及配置……………………………………………………… 342
12.4 TIM4相關暫存器簡介……………………………………………………………… 343
12.4.1 TIM4_CR1控制暫存器1 …………………………………………………… 344
12.4.2 TIM4_IER中斷使能暫存器…………………………………………………… 346
12.4.3 TIM4_SR狀態暫存器………………………………………………………… 346
12.4.4 TIM4_EGR事件產生暫存器………………………………………………… 347
12.4.5 TIM4_CNTR計數器………………………………………………………… 348
12.4.6 TIM4_PSCR預分頻暫存器…………………………………………………… 348
12.4.7 TIM4_ARR自動重裝載暫存器……………………………………………… 349
12.5 基礎項目A 自定義1Hz信號輸出實驗…………………………………………… 349
第13章 “多才多藝,功能王者”16位高級型定時/計數器TIM1 ………………………… 353
第14章 “搖身一變睡美人兒”電源模式管理及系統功耗控制…………………………… 451
第15章 “嗶啵嗶啵~滴滴~”蜂鳴器激勵信號產生與控制……………………………… 477
第16章 “系統狀態監察/執行官”獨立/視窗看門狗配置及套用………………………… 496
第17章 “你來我往,烽火傳信”串列數據通信及UART套用…………………………… 522
第18章 “通信神功,腳踏獨木橋”1-Wire單匯流排器件編程及套用……………………… 613
第19章 “擊鼓聲響,雙向傳花”串列外設接口SPI配置及套用…………………………… 648
第20章 “大老爺升堂,威武!”串列匯流排接口I2C配置及套用…………………………… 713
第21章 “對內翻譯官”A/D 模數轉換器原理及套用……………………………………… 764