ARM Cortex-M0 20天自學(xué)教程
定 價:58 元
- 作者:楊奎武、趙儉、單征編
- 出版時間:2017/1/1
- ISBN:9787118111361
- 出 版 社:國防工業(yè)出版社
- 中圖法分類:TP332
- 頁碼:
- 紙張:膠版紙
- 版次:1
- 開本:16開
楊奎武、趙儉、單征編*的《ARM Cortex-M020
天自學(xué)教程--LPC1114開發(fā)入門》從學(xué)習(xí)者的視角向讀者展示了當(dāng)前流行的ARM Cortex-M0內(nèi)核芯片 LPC1114的開發(fā)學(xué)習(xí)過程,深入講解了ARM
Cortex M0內(nèi)核結(jié)構(gòu)、LPC1114微處理器開發(fā)以及嵌入式
uC/OS-Ⅱ操作系統(tǒng)移植等內(nèi)容。
遵照科學(xué)的學(xué)習(xí)規(guī)律,本書為初學(xué)者設(shè)定了20天的學(xué)習(xí)內(nèi)容,包括LPC1114芯片架構(gòu)、開發(fā)板及電路、Keil
MDK開發(fā)環(huán)境、CMSIS標(biāo)準(zhǔn)化軟件接口、啟動過程分析、時鐘設(shè)置、GPIO接口、中斷程序設(shè)計、串口、RS485接口、定時器、看門狗、I2C總線、SPI總線、低功耗設(shè)計、LCD驅(qū)動設(shè)計以及uC/OS-Ⅱ操作系統(tǒng)裁剪和移植等,確保初學(xué)者能夠全方位地了解和掌握ARM
Cortex-MO內(nèi)核芯片特性,尤其是LPc1114的開發(fā)理論和技術(shù)。
本書側(cè)重理論與實踐的緊密結(jié)合,有著豐富的實例和超級詳細(xì)的代碼分析。通過淺顯、風(fēng)趣的語言讓讀者能夠快速接受和把握學(xué)習(xí)內(nèi)容,短、平、快
地完成內(nèi)容學(xué)習(xí)。讀者可以在出版社網(wǎng)站上下載全部的實例程序。同時本書作者也設(shè)定了微信號碼,方便與讀者交流。
本書可作為電子通信、軟件工程、自動控制、智能儀器和物聯(lián)網(wǎng)相關(guān)專業(yè)的高年級本科生或研究生學(xué)習(xí)嵌入式系統(tǒng)開發(fā)的教材,也可作為嵌入式系統(tǒng)愛好者和開發(fā)人員的參考用書。
第1天 為什么要學(xué)Cortex-MO,Cortex-MO什么樣?
1.1 物聯(lián)網(wǎng)時代請拋棄51單片機(jī)
1.1.1 物聯(lián)網(wǎng)時代電子設(shè)備發(fā)展趨勢
1.1.2 放棄51,學(xué)點新東西
1.1.3 本書主要內(nèi)容、學(xué)習(xí)方法和準(zhǔn)備資料
1.2 ARMCorrex-MO簡介
1.2.1 ARM和ARM處理器
1.2.2 ARMCortex-MO處理器簡介
1.2.3 ARMCortex-MO體系結(jié)構(gòu)
1.3 程序映像和啟動流程
1.4 Correx微控制器軟件接口標(biāo)準(zhǔn)(CMSIS)
1.5 指令集
1.6 小結(jié)
第2天 NXPLPC1114親密接觸
2.1 為什么選NXPLPC1114
2.1.1 NXPCortex-MO系列微控制器
2.1.2 NuMicro及其他系列微控制器
2.1.3 為什么選擇LPC1114
2.2 NXPLPc1114體系架構(gòu)
2.2.1 NXPLPC114概述
2.2.2 NXPLPC1114微控制器結(jié)構(gòu)
2.2.3 NXPLPC1114存儲器映射
2.3 LPC1114I/O配置(IOCONFIG)
2.4 LPC1114通用目的輸入輸出口(GPIO)
2.5 LPC1114其他寄存器
第3天 認(rèn)識開發(fā)板并拋棄開發(fā)板
3.1 開發(fā)板簡介
3.2 開發(fā)板原理圖分析
3.2.1 LPC1114核心電路
3.2.2 LED驅(qū)動電路
3.2.3 RS485通信電路
3.2.4 ISP電路(串口轉(zhuǎn)USB電路)
3.2.5 E2PROM電路(I2C總線電路)
3.2.6 按鍵電路
3.2.7 SWD(JTAG)接口電路
3.2.8 熱敏電阻(ADC)電路
3.2.9 Flash讀寫接口電路(SPIO接口電路)
3.2.10 SD卡接口電路
3.2.11 主板與液晶板接口電路
3.2.12 觸摸屏控制器(XPT2046)電路
3.2.13 TFT-LCD液晶屏模塊接口電路
3.2.14 電源接口電路
3.3 拋棄開發(fā)板
第4天 KeilMDK開發(fā)利器
4.1 KeilMDK4.70a安裝
4.1.1 KeilMDK集成開發(fā)環(huán)境簡介
4.1.2 KeilMDK4.70a安裝
4.2 新建一個LPC1114工程
4.3 生成HEX文件
4.4 程序下載到開發(fā)板
4.4.1 程序下載方式簡介
4.4.2 串口程序自動下載
4.4.3 JTAG程序下載(JLINKV8)
第5天 CMSIS標(biāo)準(zhǔn)化軟件接口
5.1 Correx微控制器軟件接口標(biāo)準(zhǔn)(CMSIS)介紹
5.1.1 CMSIS簡介
5.1.2 CMSIS組織結(jié)構(gòu)
5.1.3 CMSIS中的文件
5.2 CMSIS重要庫文件分析
5.2.1 stdint.h文件分析
5.2.2 lpcllxx.h文件分析
5.2.3 cote-cmO.h文件分析
5.2.4 core_cmInstr.h文件分析
5.2.5 core-cmFunc.h文件分析
5.2.6 system_lpcllxx.h文件分析
5.2.7 system_lpcllxx.c文件分析
第6天 程序啟動過程深度分析
6.1 工程入口點
6.2 startup-lpcllxx.s詳解
6.3 啟動過程分析
第7天 最重要的系統(tǒng)時鐘設(shè)置
7.1 時鐘設(shè)置原理
7.1.1 系統(tǒng)PLL及主時鐘配置
7.1.2 系統(tǒng)時鐘配置
7.1.3 其他重要設(shè)備時鐘配置
7.2 system_lpcIlxx.c程序詳解
7.3 基于KeilMDK的快速主頻設(shè)置
7.4 實例:看門狗振蕩器作為主時鐘輸入
第8天 靈活的GPIO接口
8.1 GPIO復(fù)習(xí)
8.2 GPIO接口控制寄存器復(fù)習(xí)
8.3 LED跑馬燈程序設(shè)計及詳解
8.4 按鍵檢測程序設(shè)計及詳解
第9天 效率的源泉中斷程序設(shè)計
9.1 一個簡單的按鍵中斷程序
9.2 中斷程序設(shè)計原理及流程
9.3 NVIC中斷系統(tǒng)
第10天 系統(tǒng)滴答定時器SysTick
10.1 系統(tǒng)滴答定時器工作原理
10.1.1 系統(tǒng)滴答定時器結(jié)構(gòu)及寄存器
10.1.2 系統(tǒng)滴答定時器計數(shù)初值計算
10.2 系統(tǒng)滴答定時器實例詳解
10.3 基于滴答定時器的精確延時函數(shù)設(shè)計
第11天 串口及Rs485程序設(shè)計
11.1 LPC1114串口工作原理
11.1.1 串口電路簡介
11.1.2 串口通信數(shù)據(jù)格式
11.1.3 串口通信速率
11.1.4 LPC1114串口通信寄存器介紹
11.2 查詢方式串口收發(fā)數(shù)據(jù)程序設(shè)計及詳細(xì)分析
11.3 中斷方式串口數(shù)據(jù)接收程序設(shè)計及詳細(xì)分析
11.4 串口程序測試方法
11.5 RS485程序設(shè)計
11.5.1 RS485簡介
11.5.2 RS485的幾種模式
11.5.3 LPc1114中RS485相關(guān)寄存器
11.5.4 RS485程序設(shè)計
第12天 時間規(guī)劃師通用定時器/計數(shù)器
12.11 6位通用定時器結(jié)構(gòu)及工作原理
12.1.1 16位通用定時器簡介
12.1.2 16位通用定時器引腳及寄存器
12.2 16位定時器基本定時功能程序設(shè)計及詳細(xì)分析
12.3 16位定時器基本計數(shù)功能程序設(shè)計及詳細(xì)分析
12.4 基于捕獲中斷的16位定時器頻率檢測程序設(shè)計及詳細(xì)分析
12.5 PWM輸出程序設(shè)計
第13天 忠實的看門狗
13.1 看門狗電路工作原理
13.1.1 看門狗簡介
13.1.2 LPC1114看門狗定時器工作原理
13.2 看門狗定時器相關(guān)寄存器
13.3 看門狗基本程序設(shè)計及詳細(xì)分析
13.4 窗口看門狗程序設(shè)計
第14天 用ADC感知與度量
14.1 LPC1114ADC介紹
14.1.1 LPC1114ADC簡介
14.1.2 LPC1114ADC的轉(zhuǎn)換模式
14.1.3 LPC1114ADC寄存器
14.2 基于sTART標(biāo)志位的轉(zhuǎn)換控制程序設(shè)計及詳細(xì)分析
14.3 cAP引腳中斷觸發(fā)轉(zhuǎn)換程序設(shè)計及詳細(xì)分析
14.4 MAT觸發(fā)轉(zhuǎn)換程序設(shè)計及詳細(xì)分析
14.5 多通道硬件掃描模式轉(zhuǎn)換程序設(shè)計與詳細(xì)分析
第15天 I2C總線讀寫AT24C02
15.1 I2C總線基本原理
15.1.1 I2C總線簡介
15.1.2 I2C總線信號類型與數(shù)據(jù)傳輸過程
15.1.3 I2C總線競爭的仲裁
15.2 At24C02芯片介紹
15.3 LPC1114I2C接口及寄存器
15.4 I2C讀寫AT24C02程序及詳解
第16天 有用的SPI總線
16.1 SPI總線基本原理
16.1.1 SPI總線簡介
16.1.2 LPC1114SPI接口引腳及時序
16.2 W25Q16芯片介紹
16.2.1 W25Q16芯片概述
16.2.2 W25Q16SPI接口運行方式及訪問控制
16.2.3 W25Q16控制和狀態(tài)寄存器
16.2.4 W25Q16操作命令
16.3 LPC1114SPI接口寄存器(SSP寄存器)
16.4 基于SPI接口的W25Q16讀寫程序設(shè)計
16.4.1 W25Q16原理圖
16.4.2 W25Q16讀寫程序
第17天 點亮絢麗的LCD世界
17.1 TFTLCD液晶顯示原理
17.2 TFTLCD液晶控制電路說明
17.2.1 ILI9325液晶驅(qū)動芯片介紹
17.2.2 微處理器與ILI9325接口電路說明
17.2.3 ILI9325液晶驅(qū)動芯片控制簡介
17.3 LCD英文顯示程序設(shè)計及詳細(xì)分析
第18天 節(jié)能大招
18.1 LPC1114低功耗模式簡介
18.1.1 睡眠模式
18.1.2 深度睡眠模式
18.1.3 深度掉電模式
18.1.4 LPC1114低功耗模式注意事項
18.2 LPC1114低功耗模式相關(guān)寄存器
18.3 睡眠模式程序設(shè)計與詳細(xì)分析
18.4 深度睡眠模式程序設(shè)計與詳細(xì)分析
18.5 深度掉電模式程序設(shè)計與詳細(xì)分析
第19天 高大上的uC/OS-II操作系統(tǒng)
19.1 uC/OS一Ⅱ操作系統(tǒng)簡介
19.2 uC/OS一Ⅱ系統(tǒng)文件結(jié)構(gòu)及功能簡介
19.2.1 uC/OS-Ⅱ系統(tǒng)文件
19.2.2 uC/OS-Ⅱ功能簡介
19.3 uC/OS-Ⅱ系統(tǒng)任務(wù)
19.4 uC/OS-Ⅱ信號量與互斥信號量
19.5 uC/OS-Ⅱ消息郵箱與消息隊列
19.6 uC/OS-Ⅱ事件標(biāo)志組
第20天 LPC1114上的uC/OS-II裁剪與移植
20.1 源程序下載
20.2 uC/OS-Ⅱ系統(tǒng)裁剪配置文件os_cfg,h詳解
20.3 LPCIll4上uC/OS-Ⅱ的移植
20.3.1 第1步:KeilMDK下新建工程
20.3.2 第2步:修改3個接口文件
20.3.3 第3步:撰寫includes,h、app_cfg.h以及main.c文件
20.3.4 第4步:配置文件OS_Cfg.h設(shè)置
20.4 裁剪和移植總結(jié)
附錄A ILI9325指令表
附錄B 軟件接口標(biāo)準(zhǔn)(CMSIS)快速參考
參考文獻(xiàn)