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