本書以恩智浦公司(NXP)的LPC1114芯片為例,詳細討論了ARM CortextM0處理器的開發過程。主要講述了開發環境MDKARM的配置及LPC1114內部各個組成模塊的結構及使用方法,包含GPIO端口、時鐘源、NVIC中斷系統、系統定時器、定時器/計數器、串口、A/D轉換、I2C接口、SPI接口、看門狗、功耗管理及Flash編程固件等內容。全書以應用為主,針對LPC1114開發中可能遇到的問題都進行了詳細的討論。書中所有代碼無須任何修改就可直接使用,所有程序代碼均在MDKARM4.22a環境下調試通過。本書可作為高校及相關培訓機構的教材,也可作為愛好者自學使用的書籍,還可作為嵌入式系統工程開發人員的參考手冊。
1、利用傳統單片機的學習方式講解ARM Cortex-M0處理器,更容易上手。2、杜絕死板翻譯手冊,深入講解原版英文文檔。3、對程序代碼都進行詳細注解,讓讀者理解每一行代碼的意思。4、把寄存器的學習放到實例中,有效避免了學習寄存器的枯燥。5、使用主流開發環境MDK-ARM,學習資源豐富。
目錄
第1章LPC1114及其開發環境簡介1
1.1LPC1114及其主要特性1
1.2MDK開發環境及其配置4
1.3習題9第2章時鐘配置與仿真10
2.1LPC1114的時鐘及其配置10
2.2LPC1114的時鐘仿真21
2.3LPC1114的時鐘輸出端口測試25
2.4習題30第3章程序的編譯與下載31
3.1編譯程序31
3.2下載程序32
3.2.1Flash Magic32
3.2.2ULINK233
3.3習題36第4章通用輸入輸出端口及應用37
4.1實例引入37
4.2頭文件解析41
4.2.1預定義分析41
4.2.2頭文件應用50
4.3GPIO應用詳解54
4.3.1GPIO端口操作分析54
4.3.2GPIO端口寄存器60
4.3.3GPIO引腳配置65
4.4GPIO編程實踐72
4.5習題73第5章異常和中斷系統及應用74
5.1異常74
5.1.1異常及向量地址74
5.1.2優先級75
5.1.3異常處理75
5.2中斷系統80
5.2.1NVIC80
5.2.2寄存器及其映射81
5.2.3中斷觸發與處理86
5.2.4中斷操作函數86
5.3外部中斷88
5.3.1LPC1114外部中斷88
5.3.2外部中斷入口函數89
5.4外部中斷編程實踐90
5.5習題91第6章SysTick定時器及應用92
6.1SysTick定時器功能分析92
6.1.1內部結構92
6.1.2寄存器及其映射93
6.1.3初始值設置95
6.2SysTick定時器編程實踐96
6.3習題97第7章通用定時器及應用98
7.1通用定時器概述98
7.1.1內部結構98
7.1.2寄存器及其映射98
7.2定時功能分析101
7.2.1寄存器配置101
7.2.2定時功能編程實踐106
7.3計數功能分析108
7.3.1寄存器配置108
7.3.2計數功能編程實踐109
7.4輸入捕獲功能分析112
7.4.1寄存器配置113
7.4.2輸入捕獲功能編程實踐114
7.5PWM功能分析117
7.5.1寄存器配置117
7.5.2PWM功能編程實踐122
7.6通用定時器綜合實踐124
7.6.1驅動LCD1602液晶屏124
7.6.2紅外解碼129
7.7習題136第8章通用串行口及應用137
8.1UART功能分析137
8.1.1內部結構137
8.1.2寄存器及其映射137
8.1.3寄存器配置140
8.2UART綜合實踐150
8.2.1接收中斷150
8.2.2發送端口狀態157
8.2.3選擇性啟動159
8.3習題164第9章A/D轉換及應用165
9.1A/D轉換功能分析165
9.1.1A/D轉換器的特性165
9.1.2寄存器及其映射165
9.1.3寄存器配置167
9.1.4注意事項172
9.2A/D轉換編程實踐173
9.3習題178第10章I2C接口及應用179
10.1I2C接口功能分析179
10.1.1I2C總線179
10.1.2I2C接口的特性180
10.1.3寄存器及其映射181
10.1.4寄存器配置183
10.2I2C接口編程實踐190
10.3習題199第11章SPI接口及應用200
11.1SPI接口功能分析200
11.1.1SPI接口特性200
11.1.2寄存器及其映射200
11.1.3寄存器配置202
11.2SPI接口編程實踐210
11.3習題218第12章看門狗及應用219
12.1看門狗功能分析219
12.1.1內部結構及特性219
12.1.2寄存器及其映射220
12.1.3寄存器配置221
12.1.4注意事項226
12.2看門狗編程實踐227
12.3習題229第13章功耗管理及應用230
13.1功耗管理230
13.1.1PMU230
13.1.2SCR寄存器233
13.1.3節能模式235
13.2功耗管理編程實踐242
13.3習題246第14章復位與SWD技術247
14.1復位247
14.1.1復位源247
14.1.2上電復位249
14.1.3外部引腳復位250
14.1.4掉電檢測復位251
14.2SWD調試252
14.2.1調試接口252
14.2.2連接方式254
14.3習題254第15章Flash編程固件255
15.1BootLoader256
15.2IAP258
15.3代碼讀保護268
15.4Flash糾錯270
15.5IAP編程實踐270
15.6習題280第16章電子時鐘實例281
16.1實例描述281
16.2電路原理圖281
16.3實例分析282
16.3.1電路分析282
16.3.2功能分析282
16.4程序代碼282
16.5代碼說明299
16.5.1狀態機編程299
16.5.2靜態局部變量302
16.5.3其他說明302
16.6習題302附錄AI2C總線接口標準狀態碼303附錄B標準ASCII碼表311
參考文獻313