本书介绍如何使用基于Arm Cortex-M0内核的Kinetis KL25Z单片机进行嵌入式系统搭建,内容覆盖CPU、中断系统、外设与编程,全部使用C语言实现;介绍了CPU上的多任务实现,其目的是提高响应能力和软件模块化,同时减少CPU的开销;探讨了中断、外设和调度程序的相互作用。全书共9章,第1章使用实例介绍嵌入式系统的各个部分,之后章节分别讲解输入/输出端口、并行、中断、C语言基础、模拟接口、定时器、串行通信和直接内存访问等内容。
本书可作为高等院校计算机、电子工程等专业的教材,也可作为嵌入式系统开发人员的参考书。
亚历山大·狄恩博士自2000年以来一直担任北卡罗来纳州立大学(NCSU)电子与计算机工程系的教师。1991年从美国麦迪逊的威斯康星大学获得学士学位,1994年和2000年分别从卡耐基-梅隆大学获得硕士和博士学位。
狄恩博士开设了四门课程,从基础到架构,从设计到优化均有涉猎,其研究领域包括使用编译器、操作系统、实时系统技术,通过降低时钟速度、能量和内存要求,在嵌入式系统中获得商品单片机的性能提升。狄恩博士工作于联合技术研究中心,致力于发展嵌入式系统和通信网络架构。他在此领域持有三项专利。
7.3.1 SysTick定时器 151
7.3.2 Kinetis KL25Z正确操作计算机看门狗定时器 153
7.3.3 Kinetis KL25Z定时器/脉冲宽度调制模块 157
7.4 总结 168
7.5 练习 169
08 串行通信
8.1 综述 171
8.2 概念 171
8.2.1 背景 171
8.2.2 使用方法 172
8.2.3 开发工具 174
8.2.4 通信软件结构 175
8.3 串行通信协议与外设 180
8.3.1 同步串行通信 180
8.3.2 异步串行通信 186
8.3.3 内部集成电路(Inter-Integrated Circuit,I2C)总线 194
8.4 总结 204
8.5 练习 204
09 直接内存访问
9.1 综述 207
9.2 概念 207
9.3 KL25Z DMA控制器和多路复用器外设 208
9.3.1 DMA多路复用器和触发源 209
9.3.2 DMA控制器 210
9.3.3 基本DMA配置和使用 211
9.3.4 实例 211
9.4 总结 218
9.5 练习 218
FL 测量FRDM-KL25Z的电流、功率和能量
A.1 综述 220
A.2 FRDM-KL25Z的供电系统架构 220
A.2.1 电源输入 220
A.2.2 稳压 221
A.2.3 电源域 221
A.3 电流测量和功率计算 221
A.3.1 测量目标MCU电流 222
A.3.2 测量OpenSDA调试电路电流 222
A.3.3 测量稳压器输出电流 222
A.4 功率降低 222
A.4.1 断开OpenSDA调试MCU供电与重启线 222
A.4.2 断开稳压器U1 223
A.5 电能测量 223
A.5.1 基于电容测量 223
A.5.2 实现 224
A.6 电路改造总结 224
词汇表 226
参考文献 232