图书目录

第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 CortexM0+处理器

2.1ARM处理器应用概述

2.2ARM CortexM0+处理器简介

2.2.1ARM CortexM0+处理器特点与结构图

2.2.2ARM CortexM0+处理器存储器映像

2.2.3ARM CortexM0+处理器的寄存器

2.3ARM CortexM0+处理器的指令系统

2.3.1ARM CortexM0+指令简表与寻址方式

2.3.2数据传送类指令

2.3.3数据操作类指令

2.3.4跳转控制类指令

2.3.5其他指令

2.4ARM CortexM0+汇编语言的基本语法

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实践硬件: SDFSLKL25EVB

3.6.1SDFSLKL25EVB硬件系统简介

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.2RS232总线标准

6.1.3TTL电平到RS232电平转换电路

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 CortexM0+非内核模块中断编程结构

6.4.5UART接收中断程序实例

6.5进一步讨论

6.6本章小结

习 题 6

第7章定时器相关模块

7.1计数器/定时器的工作原理

7.2ARM CortexM0+内核时钟

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章USB 2.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