本書(shū)以TMS320F28335(簡(jiǎn)稱(chēng)F28335)的工程應用為主線(xiàn),從電力電子產(chǎn)品的嵌入式應用角度出發(fā),介紹了其軟硬件的開(kāi)發(fā)方法;例程內容力求涵蓋電力電子技術(shù)中所有的控制、算法、邏輯等操作.本書(shū)以提高讀者的DSP應用水平為目的,本著(zhù)循序漸進(jìn)的原則,前半部分基礎簡(jiǎn)單,后半部分難度較高,詳細介紹了浮點(diǎn)算法開(kāi)發(fā)、程序固化、FLASH 片上升級優(yōu)化、用戶(hù)自定義BootLoader等內容.本書(shū)例程不僅調試通過(guò)而且其基本思想均應用于目前主流電力電子產(chǎn)品中,具有很高的參考和實(shí)用價(jià)值.
本書(shū)摒棄以往翻譯TI數據手冊的弊端,結構更加嚴謹,內容更加注重理論與實(shí)際的結合,可作為自動(dòng)化專(zhuān)業(yè)、電氣工程專(zhuān)業(yè)研究生和工程技術(shù)人員的參考用書(shū).
第1章 緒 論………………………………………………………………………… 1
1.1 數字信號處理………………………………………………………………… 1
1.1.1 模擬和數字信號的處理方式…………………………………………… 1
1.1.2 數字信號處理的優(yōu)缺點(diǎn)………………………………………………… 2
1.2 DSP的發(fā)展及特點(diǎn)…………………………………………………………… 3
1.3 DSP產(chǎn)品簡(jiǎn)介………………………………………………………………… 5
1.3.1 TI公司的DSP產(chǎn)品…………………………………………………… 5
1.3.2 TMS320C28x產(chǎn)品簡(jiǎn)介………………………………………………… 6
第2章 F28335的結構原理………………………………………………………… 8
2.1 F28335的內部結構…………………………………………………………… 8
2.2 F28335的CPU ……………………………………………………………… 10
2.2.1 CPU 運算單元………………………………………………………… 10
2.2.2 CPU 寄存器組………………………………………………………… 12
2.2.3 輔助寄存器算術(shù)單元ARAU ………………………………………… 14
2.2.4 FPU 浮點(diǎn)運算單元…………………………………………………… 15
2.3 F28335的存儲器及應用…………………………………………………… 15
2.3.1 SARAM 存儲器………………………………………………………… 17
2.3.2 FLASH 及使用詳解…………………………………………………… 17
2.3.3 BootROM ……………………………………………………………… 22
2.3.4 CSM 代碼安全模塊及使用詳解……………………………………… 24
2.3.5 OTP存儲器…………………………………………………………… 31
2.3.6 外設幀…………………………………………………………………… 31
2.3.7 外部存儲器接口………………………………………………………… 32
2.4 外設及引腳功能……………………………………………………………… 33
2.5 F28335的時(shí)鐘及控制……………………………………………………… 36
2.5.1 系統時(shí)鐘的產(chǎn)生………………………………………………………… 36
2.5.2 系統時(shí)鐘的分配………………………………………………………… 37
2.5.3 F28335的低功耗模式及相關(guān)寄存器………………………………… 42
2.5.4 F28335的看門(mén)狗模塊………………………………………………… 44
2.6 F28335的CPU 定時(shí)器……………………………………………………… 47
2.6.1 定時(shí)器結構……………………………………………………………… 47
2.6.2 定時(shí)器中斷申請………………………………………………………… 48
2.6.3 定時(shí)器寄存器及位域結構體定義……………………………………… 48
2.6.4 定時(shí)器應用例程———如何記錄函數的運行時(shí)間……………………… 51
第3章 集成開(kāi)發(fā)環(huán)境及程序開(kāi)發(fā)語(yǔ)言…………………………………………… 53
3.1 CCS集成開(kāi)發(fā)環(huán)境………………………………………………………… 53
3.1.1 CCS集成的工具軟件………………………………………………… 53
3.1.2 CCSv5.4安裝及基本配置…………………………………………… 55
3.1.3 ControlSuite簡(jiǎn)介……………………………………………………… 59
3.1.4 在CCSv5.4下運行工程項目………………………………………… 59
3.1.5 CCSv3.3到CCSv5.4的項目遷移…………………………………… 66
3.1.6 在CCSv5.4下新建一個(gè)工程文件…………………………………… 68
3.2 F28335匯編語(yǔ)言概述……………………………………………………… 74
3.2.1 F28335匯編指令描述………………………………………………… 75
3.2.2 尋址方式及常用匯編指令……………………………………………… 76
3.2.3 CMD文件及匯編程序示例…………………………………………… 80
3.2.4 匯編語(yǔ)言應用例程……………………………………………………… 82
3.3 F28335的C語(yǔ)言編程基礎………………………………………………… 83
3.3.1 F28335的C語(yǔ)言數據類(lèi)型…………………………………………… 84
3.3.2 C語(yǔ)言的重要關(guān)鍵字…………………………………………………… 85
3.3.3 C語(yǔ)言CMD文件的編寫(xiě)……………………………………………… 86
第4章 F28335的通用I/O 口…………………………………………………… 90
4.1 GPIO的功能結構…………………………………………………………… 90
4.2 GPIO寄存器及傳統定義方法示例………………………………………… 92
4.2.1 GPIO控制類(lèi)寄存器…………………………………………………… 92
4.2.2 GPIO數據類(lèi)寄存器…………………………………………………… 94
4.2.3 傳統寄存器定義方法示例……………………………………………… 95
4.3 寄存器的位域結構方法示例………………………………………………… 96
4.3.1 GPIO寄存器組類(lèi)型定義……………………………………………… 96
4.3.2 定義存放寄存器組的存儲器段……………………………………… 101
4.3.3 寄存器組的存儲器段地址定位……………………………………… 102
4.3.4 寄存器位結構定義的使用…………………………………………… 102
4.4 GPIO應用例程…………………………………………………………… 103
第5章 F28335的中斷系統……………………………………………………… 104
5.1 中斷系統的結構…………………………………………………………… 104
5.1.1 中斷管理機制………………………………………………………… 104
5.1.2 中斷處理及響應過(guò)程………………………………………………… 106
5.1.3 CPU 中斷向量………………………………………………………… 106
5.1.4 CPU 級中斷相關(guān)寄存器……………………………………………… 108
5.2 PIE外設中斷擴展模塊…………………………………………………… 109
5.2.1 PIE模塊的結構……………………………………………………… 109
5.2.2 PIE中斷向量表映射………………………………………………… 110
5.2.3 PIE模塊相關(guān)寄存器………………………………………………… 117
5.2.4 PIE模塊寄存器的程序操作………………………………………… 119
5.3 非屏蔽中斷………………………………………………………………… 123
5.3.1 軟件中斷……………………………………………………………… 123
5.3.2 非法指令中斷………………………………………………………… 124
5.3.3 硬件NMI中斷……………………………………………………… 124
5.3.4 硬件復位中斷XRS…………………………………………………… 125
5.4 中斷應用實(shí)例———如何創(chuàng )建中斷嵌套服務(wù)程序………………………… 125
第6章 模/數轉換單元ADC …………………………………………………… 127
6.1 ADC模塊概述……………………………………………………………… 127
6.1.1 ADC模塊構成及原理………………………………………………… 127
6.1.2 時(shí)鐘及采樣頻率……………………………………………………… 130
6.1.3 ADC采樣工作方式…………………………………………………… 131
6.2 ADC模塊校準功能及使用詳解…………………………………………… 134
6.3 ADC模塊寄存器…………………………………………………………… 136
6.4 ADC性能實(shí)驗分析………………………………………………………… 143
6.5 ADC模塊的應用———如何進(jìn)行數據處理及程序校準…………………… 146
第7章 F28335片上控制外設…………………………………………………… 148
7.1 增強型脈寬調制模塊ePWM ……………………………………………… 148
7.1.1 時(shí)間基準子模塊TB原理及應用…………………………………… 150
7.1.2 計數器比較子模塊CC原理及應用………………………………… 155
7.1.3 動(dòng)作限定子模塊AQ 原理及應用…………………………………… 157
7.1.4 死區控制子模塊DB原理及應用…………………………………… 163
7.1.5 錯誤控制子模塊TZ原理及應用…………………………………… 165
7.1.6 事件觸發(fā)子模塊ET原理及應用…………………………………… 169
7.2 增強型捕獲模塊eCAP …………………………………………………… 174
7.2.1 eCAP工作模式……………………………………………………… 174
7.2.2 捕獲模塊寄存器……………………………………………………… 177
7.2.3 eCAP程序例程———如何捕獲外部脈沖信號……………………… 183
第8章 F28335的片上串行通信單元…………………………………………… 185
8.1 串行通信的基本概念……………………………………………………… 185
8.1.1 異步通信和同步通信………………………………………………… 185
8.1.2 串行通信的傳輸方向………………………………………………… 186
8.1.3 串行通信的錯誤校驗………………………………………………… 186
8.2 SCI通信模塊及應用……………………………………………………… 187
8.2.1 SCI通信模塊簡(jiǎn)介…………………………………………………… 187
8.2.2 SCI工作原理………………………………………………………… 188
8.2.3 SCI基本數據格式…………………………………………………… 188
8.2.4 多處理器通信方式…………………………………………………… 190
8.2.5 SCI相關(guān)寄存器……………………………………………………… 191
8.2.6 SCI應用實(shí)例———如何實(shí)現異步通信數據的收發(fā)………………… 194
8.3 SPI通信模塊及應用……………………………………………………… 195
8.3.1 SPI模塊簡(jiǎn)介………………………………………………………… 195
8.3.2 SPI工作原理………………………………………………………… 196
8.3.3 SPI的時(shí)鐘與波特率………………………………………………… 198
8.3.4 SPI相關(guān)寄存器……………………………………………………… 198
8.3.5 SPI模塊應用實(shí)例———如何建立有效的全雙工數據通信………… 202
8.4 McBSP模塊及應用………………………………………………………… 203
8.4.1 McBSP數據收發(fā)原理………………………………………………… 204
8.4.2 數據的壓縮和擴展…………………………………………………… 205
8.4.3 McBSP數據幀………………………………………………………… 205
8.4.4 時(shí)鐘及采樣率發(fā)生器………………………………………………… 207
8.4.5 McBSP工作模式簡(jiǎn)介………………………………………………… 210
8.4.6 McBSP相關(guān)寄存器…………………………………………………… 210
8.4.7 McBSP的應用———如何實(shí)現在SPI模式下的數據收發(fā)…………… 218
8.5 I2C通信模塊及應用……………………………………………………… 220
8.5.1 I2C總線(xiàn)基礎………………………………………………………… 220
8.5.2 I2C相關(guān)寄存器……………………………………………………… 223
8.5.3 I2C應用實(shí)例———EEPROM 數據的讀/寫(xiě)………………………… 227
8.5.4 I2C真實(shí)波形數據格式分析………………………………………… 229
8.6 CAN 通信模塊……………………………………………………………… 232
8.6.1 CAN 模塊簡(jiǎn)介………………………………………………………… 232
8.6.2 CAN 相應寄存器……………………………………………………… 233
8.6.3 CAN 應用注意事項及數據收發(fā)程序詳解…………………………… 239
第9章 浮點(diǎn)運算單元……………………………………………………………… 245
9.1 浮點(diǎn)單元簡(jiǎn)介……………………………………………………………… 245
9.1.1 C28x+FPU 的特點(diǎn)…………………………………………………… 245
9.1.2 浮點(diǎn)指令流水線(xiàn)結構………………………………………………… 246
9.1.3 IEEE754單精度浮點(diǎn)格式…………………………………………… 247
9.2 FPU 的寄存器……………………………………………………………… 248
9.3 浮點(diǎn)匯編指令詳解………………………………………………………… 250
9.3.1 移動(dòng)指令……………………………………………………………… 251
9.3.2 浮點(diǎn)算術(shù)運算指令…………………………………………………… 259
9.3.3 寄存器數據傳遞指令………………………………………………… 272
9.3.4 特殊運算指令………………………………………………………… 275
9.3.5 寄存器清0指令……………………………………………………… 276
9.4 F28335庫函數使用詳解…………………………………………………… 277
9.4.1 FPUFastRTS庫簡(jiǎn)介……………………………………………… 278
9.4.2 FPUFastRTS庫使用方法………………………………………… 279
9.4.3 FPUFastRTS庫軟件優(yōu)化………………………………………… 280
9.4.4 FPU 軟件應用實(shí)例…………………………………………………… 281
第10章 BootLoader原理及應用………………………………………………… 283
10.1 BootLoader基本工作流程……………………………………………… 283
10.1.1 F2833x片內引導過(guò)程……………………………………………… 284
10.1.2 基本工作流程代碼解析……………………………………………… 285
10.2 BootLoader基本數據傳輸協(xié)議………………………………………… 289
10.2.1 16位數據流結構…………………………………………………… 289
10.2.2 8位數據流結構……………………………………………………… 290
10.2.3 數據引導裝載過(guò)程…………………………………………………… 291
10.2.4 數據格式轉換………………………………………………………… 292
10.3 引導模式之跳轉模式……………………………………………………… 294
10.3.1 FLASH 上電復位跳轉模式及代碼解析…………………………… 294
10.3.2 片上其他跳轉模式…………………………………………………… 296
10.4 引導模式之加載模式……………………………………………………… 297
第11章 打開(kāi)FLASH 升級的“潘多拉”盒子…………………………………… 299
11.1 F2833xFLASH 燒錄基礎……………………………………………… 299
11.1.1 FLASH 燒錄的一般要求…………………………………………… 299
11.1.2 FLASH 燒錄步驟…………………………………………………… 300
11.2 CCS插件升級方式……………………………………………………… 300
11.2.1 CCSv3.3版本下的FLASH 升級………………………………… 300
11.2.2 CCSv5.4版本下的FLASH 升級………………………………… 301
11.3 SDFLASH 插件操作方式………………………………………………… 305
11.3.1 SDFLASH 的串行升級基本操作…………………………………… 305
11.3.2 如何更改串行升級文件……………………………………………… 310
11.4 用戶(hù)自定義升級方式……………………………………………………… 311
11.4.1 FLASH API的應用解析…………………………………………… 311
11.4.2 基于SCI總線(xiàn)的遠程FLASH 加載方案………………………… 315
第12章 基于F28335的電力電子應用案例分析……………………………… 323
附錄A CRC數據表……………………………………………………………… 402
附錄B SCIBoot參考代碼………………………………………………………… 404
參考文獻……………………………………………………………………………… 407