《嵌入式技术基础与实践(第3版):ARM Cortex-M0+Kinetis L系列微控》是一部出版的图书,作者是王宜怀、朱仕浪、郭芸。
基本介绍
- 书名:嵌入式技术基础与实践(第3版):ARM Cortex-M0+Kinetis L系列微控
- 又名:ARM Cortex-M0+Kinetis L系列微控
- 作者:王宜怀、朱仕浪、郭芸
- ISBN:9787302333661
- 定价:44.50
- 出版社:清华大学出版社
- 出版时间:2013.08.01
- 印次:3-6
- 印刷日期:2015.03.19
内容简介
本书以飞思卡尔(Freescale)的ARM CortexM0+核心的Kinetis L系列微控制器为蓝本阐述嵌入式系统的软体与硬体设计。全书共14章,其中第1章为概述,简要阐述嵌入式系统的知识体系、学习误区与学习建议。第2章和第3章给出ARM CortexM0+简介及KL25硬体最小系统。第4章给出第一个样例程式及CW开发环境下的工程组织方法,完成第一个KL25工程的入门任务。第5章阐述构件化开发方法与底层驱动构件封装规範。第6章阐述串列通信接口UART,并给出第一个带中断的实例。第1~6章囊括了学习一个新的MCU入门环节的完整要素。第7~13章分别给出了Systick、TPM、PIT、LPTMR、RTC、GPIO的套用实例(键盘、LED与LCD)、Flash线上编程、A/D、D/A、比较器、SPI、I2C、TSI及KL25其他模组等。
图书目录
第1章概述
1.1嵌入式系统定义、由来及特点
1.1.1嵌入式系统的定义
1.1.2嵌入式系统的由来及其与微控制器的关係
1.1.3嵌入式系统的特点
1.2嵌入式系统的知识体系、学习误区及学习建议
1.2.1嵌入式系统的知识体系
1.2.2嵌入式系统的学习误区
1.2.3基础阶段的学习建议
1.3嵌入式系统常用术语
1.3.1与硬体相关的术语
1.3.2与通信相关的术语
1.3.3与功能模组及软体相关的术语
1.4嵌入式系统常用的C语言基本语法概要
1.5本章小结
习 题 1
第2章ARM CortexM0+处理器
2.1ARM处理器套用概述
2.2ARM CortexM0+处理器简介
2.2.1ARM CortexM0+处理器特点与结构图
2.2.2ARM CortexM0+处理器存储器映像
2.2.3ARM CortexM0+处理器的暂存器
2.3ARM CortexM0+处理器的指令系统
2.3.1ARM CortexM0+指令简表与定址方式
2.3.2数据传送类指令
2.3.3数据操作类指令
2.3.4跳转控制类指令
2.3.5其他指令
2.4ARM CortexM0+彙编语言的基本语法
2.4.1彙编语言格式
2.4.2伪指令
2.5本章小结
习题2
第3章KL25简介与硬体最小系统
3.1飞思卡尔Kinetis系列微控制器简介
3.2KL系列MCU概述与体系结构
3.2.1KL系列MCU概述
3.2.2KL系列MCU体系结构
3.3KL25系列存储映像
3.4KL25的引脚功能
3.5KL25硬体最小系统原理图
3.6实践硬体: SDFSLKL25EVB
3.6.1SDFSLKL25EVB硬体系统简介
3.6.2硬体系统的测试
3.7本章小结
习题3
第4章第一个样例程式及工程组织
4.1通用I/O接口基本概念及连线方法
4.2连线埠控制模组与GPIO模组的编程结构
4.2.1连线埠控制模组
4.2.2GPIO模组
4.2.3GPIO基本编程步骤与举例
4.3GPIO驱动构件封装方法与驱动构件封装规範
4.3.1製作GPIO驱动构件的必要性及GPIO驱动构件封装要点分析
4.3.2底层驱动构件封装规範概要与构件封装的前期準备
4.3.3KL25的GPIO驱动构件及解析
4.4第一个C语言工程: 控制小灯闪烁
4.4.1Light构件设计与测试工程主程式
4.4.2Codewarrior开发环境简介及简明操作
4.5工程档案组织框架与第一个C语言工程分析
4.5.1CW10.3开发环境下工程档案组织框架
4.5.2连结档案
4.5.3机器码档案
4.5.4其他相关档案功能简介
4.5.5晶片内电启动执行过程
4.6第一个彙编语言工程: 控制小灯闪烁
4.6.1彙编工程档案的组织
4.6.2Light构件彙编程式light.s
4.6.3Light测试工程主程式及彙编工程执行过程
4.7本章小结
习题4
第5章构件化开发方法与底层驱动构件封装规範
5.1嵌入式硬体构件与底层软体构件
5.1.1嵌入式硬体构件的概念
5.1.2嵌入式底层驱动构件的概念
5.2基于硬体构件的嵌入式系统硬体电路设计
5.2.1设计时需要考虑的基本问题
5.2.2硬体构件化电路原理图绘製的简明规则
5.2.3实验PCB设计的简明规则
5.3基于硬体构件的嵌入式底层软体构件的编程方法
5.3.1嵌入式硬体构件和软体构件的层次模型
5.3.2底层构件的实现方法与编程思想
5.3.3硬体构件及底层软体构件的重用与移植方法
5.4底层驱动构件封装规範
5.4.1构件设计的基本原则
5.4.2编码风格基本规範
5.4.3公共要素档案
5.4.4头档案的设计规範
5.4.5源档案的设计规範
5.5本章小结
习题5
第6章串列通信模组及第一个中断程式结构
6.1异步串列通信的通用基础知识
6.1.1串列通信的基本概念
6.1.2RS232汇流排标準
6.1.3TTL电平到RS232电平转换电路
6.1.4串列通信编程模型
6.2UART模组功能概述及编程结构
6.2.1UART模组功能概述
6.2.2UART模组编程结构
6.3UART驱动构件封装
6.3.1UART驱动构件封装要点分析
6.3.2UART驱动构件头档案及源程式
6.4KL25的中断机制及UART接收中断程式实例
6.4.1KL25中断基本概念
6.4.2KL25中断向量表档案
6.4.3KL25的中断服务程式及其“注册”
6.4.4ARM CortexM0+非核心模组中断编程结构
6.4.5UART接收中断程式实例
6.5进一步讨论
6.6本章小结
习 题 6
习题6
第7章定时器相关模组
7.1计数器/定时器的工作原理
7.2ARMCortexM0+核心时钟
7.2.1SysTick模组的编程结构
7.2.2SysTick构件设计及测试工程
7.3定时器/PWM模组功能概述及编程结构
7.3.1TPM模组功能概述
7.3.2TPM模组概要与编程要点
7.3.3TPM构件设计及测试工程
7.3.4PWM构件设计及测试工程
7.3.5定时器模组的输入捕捉功能
7.3.6定时器模组的输出比较功能
7.4周期性中断定时器
7.4.1PIT模组功能概述
7.4.2PIT模组概要与编程要点
7.4.3PIT构件设计及测试实例
7.5低功耗定时器
7.5.1LPTMR模组功能概述
7.5.2LPTMR模组编程结构
7.5.3LPTMR构件设计及测试实例
7.6实时时钟模组
7.6.1RTC模组功能概述
7.6.2RTC模组概要与编程要点
7.6.3RTC构件设计及测试工程
7.7本章小结
习题7
第8章GPIO套用——键盘、LED与LCD
8.1键盘模组概论与驱动构件设计
8.1.1键盘模型及接口
8.1.2键盘编程的基本问题及键盘扫描编程原理
8.1.3键盘构件设计
8.2LED模组概论与驱动构件设计
8.2.1LED基础知识
8.2.2LED构件设计
8.3LCD模组概论与驱动构件设计
8.3.1LCD的特点和分类
8.3.2点阵字元型液晶显示模组
8.3.3HD44780
8.3.4LCD构件设计
8.4LED、LCD键盘驱动构件测试实例
8.5本章小结
习题8
第9章Flash线上编程
9.1Flash通用基础知识
9.2KL25晶片Flash模组特点及编程结构
9.3Flash线上编程构件设计与测试
9.3.1Flash存储器线上编程基本方法
9.3.2Flash驱动构件封装要点分析
9.3.3Flash驱动构件头档案及源程式
9.3.4Flash驱动构件测试工程主函式
9.4Flash模组的保护与加密
9.5本章小结
第10章ADC、DAC与CMP模组
10.1A/D转换通用知识
10.1.1A/D转换的基本问题
10.1.2A/D转换器类型
10.1.3A/D转换常用感测器简介
10.1.4电阻型感测器採样电路设计
10.2KL25的16位ADC模组功能概述
10.3KL25的A/D转换模组暂存器
10.4A/D模组基本编程方法与驱动构件封装
10.4.1基本编程方法
10.4.2ADC驱动构件封装
10.512位DAC模组功能概述
10.612位DAC模组暂存器
10.7DAC模组基本编程方法与驱动构件封装
10.8CMP模组功能概述
10.8.1CMP基础知识
10.8.2CMP模组的工作原理
10.9CMP模组暂存器
10.10CMP模组基本编程方法与驱动构件封装
10.11本章小结
习题10
第11章SPI、I2C与TSI模组
11.1串列外设接口SPI
11.1.1串列外设接口SPI的基础知识
11.1.2KL25的SPI模组概述
11.1.3SPI模组暂存器
11.1.4SPI驱动构件封装
11.2I2C模组
11.2.1I2C汇流排的基础知识
11.2.2KL25的I2C模组概要与编程要点
11.2.3I2C暂存器
11.2.4I2C驱动构件封装
11.3触摸感应接口TSI模组
11.3.1触摸感应接口TSI基础知识
11.3.2KL25的TSI的基本工作原理
11.3.3存储器映射和暂存器定义
11.3.4TSI驱动构件封装
11.4本章小结
习题11
第12章USB2.0编程
12.1USB基本概念及硬体特性
12.1.1USB概述
12.1.2USB相关基本概念
12.1.3USB的物理特性
12.2USB的通信协定
12.2.1USB基本通信单元:包
12.2.2USB通信中的事务处理
12.2.3从设备的枚举看USB数据传输
12.3KL25的USB模组概述
12.3.1KL25的USB模组功能简介
12.3.2KL25的USB模组主要暂存器介绍
12.4KL25作为USB从机的开发方法
12.4.1KL25作为USB从机的构件化设计
12.4.2KL25的USB模组测试实例
12.5PC方USB设备驱动程式的设计
12.5.1USB设备驱动的基本原理
12.5.2PC作为USB主机的程式设计
12.6KL25作为USB主机的开发方法
12.6.1KL25作为USB主机的基本功能
12.6.2USB主机与CDC类USB设备通信
12.6.3USB主机与MassStorage类USB设备通信
12.7本章小结
习题12
第13章系统时钟与其他功能模组
13.1时钟系统
13.1.1时钟系统概述
13.1.2时钟模组概要与编程要点
13.1.3时钟模组测试实例
13.2电源模组
13.2.1电源模式控制
13.2.2电源模式转换
13.3低漏唤醒单元
13.4位带操作
13.5看门狗
13.6复位模组
13.6.1上电复位
13.6.2系统复位源
13.6.3调试复位
13.7本章小结
习题13
第14章进一步学习指导
14.1关于更为详细的技术资料
14.2关于实时作业系统RTOS
14.3关于嵌入式系统稳定性问题
附录AMKL25Z128VLK4引脚功能分配
附录BKL25硬体最小系统原理图
参考文献397