嵌入式應用技術
王宜懷、黃河、王佳、王進、錢瑛
相關主題
商品描述
目錄大綱
目錄
第1章概述1
1.1初識嵌入式系統1
1.1.1運行硬件系統1
1.1.2實踐體系簡介3
1.1.3編譯、下載與運行第一個嵌入式程序4
1.2嵌入式系統的定義、發展簡史、分類及特點5
1.2.1嵌入式系統的定義5
1.2.2嵌入式系統的由來及發展簡史6
1.2.3嵌入式系統的分類7
1.2.4嵌入式系統的特點8
1.3嵌入式系統的入門問題、知識體系及學習建議9
1.3.1嵌入式系統的入門問題9
1.3.2嵌入式系統的知識體系12
1.3.3基礎階段的學習建議13
1.4微控制器與應用處理器簡介14
1.4.1MCU簡介14
1.4.2以MCU為核心的嵌入式測控產品的基本組成15
1.4.3MAP簡介16
1.5嵌入式系統常用術語17
1.5.1與硬件相關的術語17
1.5.2與通信相關的術語18
1.5.3與功能模塊相關的術語19
1.6C語言概要20
1.6.1運算符20
1.6.2數據類型22
1.6.3流程控制28
1.6.4函數30嵌入式應用技術——基於TI的MSPM0L1306微控制器1.6.5編譯預處理30
本章小結31
習題32
第2章ARM CortexM0+微處理器33
2.1ARM CortexM0+微處理器概述33
2.1.1ARM CortexM0+微處理器內部結構概要33
2.1.2ARM CortexM0+微處理器的內部寄存器35
2.2尋址方式與機器碼的獲取方法36
2.2.1指令保留字簡表與尋址方式36
2.2.2指令的機器碼38
2.3基本指令分類解析39
2.3.1數據傳送類指令39
2.3.2數據操作類指令42
2.3.3跳轉控制類指令45
2.3.4其他指令46
2.4匯編語言的基本語法48
2.4.1匯編語言的格式48
2.4.2常用偽指令簡介50
本章小結51
習題52
第3章存儲器映像、中斷源與硬件最小系統53
3.1MSPM0系列MCU概述53
3.1.1MSPM0系列MCU命名規則53
3.1.2MSPM0存儲器映像54
3.1.3MSPM0中斷源55
3.2MSPM0L的引腳圖與硬件最小系統56
3.2.1MSPM0L的引腳圖56
3.2.2MSPM0L硬件最小系統原理圖58
3.3由MCU構建通用嵌入式電腦59
3.3.1嵌入式終端開發方式存在的問題與解決辦法59
3.3.2提出GEC概念的時機及GEC的定義與特點60
3.3.3由MSPM0L1306構成的GEC61
本章小結64
習題65
第4章GPIO及程序框架66
4.1GPIO通用基礎知識66
4.1.1GPIO概念66
4.1.2輸出引腳的基本接法66
4.1.3上拉下拉電阻與輸入引腳的基本接法67
4.2軟件乾預硬件的方法67
4.2.1GPIO構件API67
4.2.2GPIO構件的輸出測試方法70
4.3認識工程框架71
4.3.1工程框架及所含文件簡介71
4.3.2機器碼文件及芯片執行流程簡析73
4.4GPIO構件的製作過程75
4.4.1埠與GPIO模塊——對外引腳與內部寄存器76
4.4.2通過GPIO基本編程步驟點亮一盞小燈77
4.4.3GPIO構件的設計78
4.5第一個匯編語言工程: 控制小燈閃爍82
4.5.1匯編工程文件的組織82
4.5.2匯編語言小燈測試工程主程序83
4.6實驗一熟悉實驗開發環境及GPIO編程86
本章小結89
習題90
第5章嵌入式硬件構件與底層驅動構件基本規範91
5.1嵌入式硬件構件91
5.1.1嵌入式硬件構件概念與嵌入式硬件構件分類91
5.1.2基於嵌入式硬件構件的電路原理圖設計簡明規則92
5.2嵌入式底層驅動構件的概念與層次模型95
5.2.1嵌入式底層驅動構件的概念95
5.2.2嵌入式硬件構件與軟件構件結合的層次模型96
5.2.3嵌入式軟件構件分類96
5.2.4基礎構件的基本特徵與表現形式97
5.3底層驅動構件的封裝規範99
5.3.1基礎構件設計的基本原則99
5.3.2編碼風格基本規範100
5.3.3頭文件的設計規範103
5.3.4源程序文件的設計規範105
5.4硬件構件及其驅動構件的復用與移植方法106
5.4.1硬件構件的復用與移植106
5.4.2驅動構件的移植106
本章小結108
習題109
第6章串行通信模塊及第一個中斷程序結構110
6.1異步串行通信的通用基礎知識110
6.1.1串行通信的基本概念110
6.1.2RS232和RS485總線標準112
6.1.3TTLUSB串口113
6.1.4串行通信編程模型114
6.2基於構件的串行通信編程方法115
6.2.1MSPM0L1306芯片UART對外引腳115
6.2.2UART構件API115
6.2.3UART構件API的發送測試方法116
6.2.4printf的設置方法與使用117
6.3UART構件的製作過程118
6.3.1UART寄存器概述118
6.3.2利用直接地址操作的串口發送打通程序118
6.3.3UART構件設計120
6.4中斷機制及中斷編程步驟124
6.4.1中斷基本概念及處理過程124
6.4.2ARM CortexM0+非內核模塊中斷編程結構126
6.4.3MSPM0L1306中斷編程步驟——以串口接收中斷為例129
6.5實驗二串口通信及中斷實驗131
本章小結133
習題134
第7章定時器相關模塊135
7.1定時器通用基礎知識135
7.2MSPM0L1306中的定時器136
7.2.1ARM CortexM0+內核定時器SysTick136
7.2.2Timer模塊的基本定時功能141
7.3脈寬調制143
7.3.1脈寬調制通用基礎知識143
7.3.2基於構件的PWM編程方法145
7.4輸入捕捉與輸出比較148
7.4.1輸入捕捉與輸出比較通用基礎知識149
7.4.2基於構件的輸入捕捉和輸出比較編程方法149
7.5實驗三定時器及PWM實驗154
本章小結155
習題156
第8章Flash在線編程、ADC與DAC157
8.1Flash在線編程157
8.1.1Flash在線編程的通用基礎知識157
8.1.2基於構件的Flash在線編程方法158
8.1.3Flash構件的製作過程161
8.2ADC165
8.2.1ADC的通用基礎知識165
8.2.2基於構件的ADC編程方法169
8.2.3ADC構件的製作過程172
8.3DAC175
8.3.1DAC的通用基礎知識175
8.3.2基於構件的DAC編程方法176
8.4實驗四ADC實驗177
本章小結178
習題179
第9章SPI、I2C與DMA180
9.1串行外設接口模塊180
9.1.1串行外設接口的通用基礎知識180
9.1.2基於構件的SPI通信編程方法183
9.2集成電路互聯總線模塊188
9.2.1集成電路互聯總線的通用基礎知識188
9.2.2基於構件的I2C通信編程方法193
9.3直接存儲器存取198
9.3.1DMA的通用基礎知識198
9.3.2基於構件的DMA編程方法199
9.4實驗五SPI通信實驗201
本章小結202
習題203
第10章系統時鐘與其他功能模塊204
10.1時鐘系統204
10.1.1時鐘系統概述204
10.1.2時鐘模塊寄存器及編程實例206
10.2復位與看門狗模塊209
10.2.1復位209
10.2.2看門狗211
10.3電源控制模塊與CRC校驗模塊211
10.3.1電源控制模塊211
10.3.2CRC校驗模塊213
10.4比較器與運算放大器模塊215
10.4.1比較器215
10.4.2運算放大器216
10.5實驗六綜合實驗217
本章小結218
習題218
第11章實時操作系統初步219
11.1無操作系統與實時操作系統219
11.1.1無操作系統時的程序運行路線219
11.1.2實時操作系統下的程序運行路線220
11.1.3實時操作系統與非實時操作系統220
11.2RTOS中的常用基本概念及線程的三要素221
11.2.1與線程相關的基本概念221
11.2.2線程的三要素及四種狀態222
11.2.3線程的三種基本形式225
11.3RTOS下編程框架227
11.3.1RTThread下基本要素模板列表227
11.3.2第一個樣例程序功能及運行228
11.3.3RTThread工程框架229
11.4RTOS中同步與通信的編程方法233
11.4.1RTOS中同步與通信基本概念234
11.4.2事件235
11.4.3消息隊列240
11.4.4信號量246
11.4.5互斥量250
本章小結254
習題255
第12章進一步學習指導256
12.1關於更為詳細的技術資料256
12.2關於嵌入式系統穩定性問題256
參考文獻258