嵌入式系统原理——基于Arm Cortex-M微控制器体系

基于ARM Cortex-M微控制器的嵌入式系统基础
分享 推荐 2 收藏 19 阅读 1.4K
[美] 亚历山大 G. 狄恩(Alexander G. Dean) (著) 刘雯 陈炜 姜铁增 (译者)

关于本书的内容有任何问题,请联系 祝贺

使用结构化的教学模式将碎片式的嵌入式系统知识串起来。
使用实践的方法调动读者的学习积极性。
使用外设硬件代替软件来提升系统性能。
以汇编语言实现了C语言代码。

内容摘要

本书介绍如何使用基于Arm Cortex-M0内核的Kinetis KL25Z单片机进行嵌入式系统搭建,内容覆盖CPU、中断系统、外设与编程,全部使用C语言实现;介绍了CPU上的多任务实现,其目的是提高响应能力和软件模块化,同时减少CPU的开销;探讨了中断、外设和调度程序的相互作用。全书共9章,第1章使用实例介绍嵌入式系统的各个部分,之后章节分别讲解输入/输出端口、并行、中断、C语言基础、模拟接口、定时器、串行通信和直接内存访问等内容。
本书可作为高等院校计算机、电子工程等专业的教材,也可作为嵌入式系统开发人员的参考书。

详细信息

目录

01 绪论
1.1 综述 2
1.2 概念 2
 1.2.1 控制系统的意义 2
 1.2.2 使用电子设备和嵌入式计算机的原因 3
 1.2.3 计算机嵌入的方式 4
 1.2.4 嵌入式系统案例 5
 1.2.5 典型的嵌入式系统软件操作 8
 1.2.6 嵌入式系统属性 8
1.3 应用平台 12
 1.3.1 概述 12
 1.3.2 处理器 13
 1.3.3 MCU 14
 1.3.4 开发板 14
1.4 总结 15
1.5 练习 15
02 通用输入/输出接口
2.1 综述 18
2.2 MCU外部:0和1,电压和电流 18
 2.2.1 输入信号 19
 2.2.2 输出信号 19
 2.2.3 与开关和LED灯交互 20
2.3 MCU内部 21
 2.3.1 准备:控制寄存器和C代码 21
 2.3.2 配置I/O路径 24
 2.3.3 GPIO外围设备 27
 2.3.4 将C代码组合起来 30
 2.3.5 更多接口实例 31
 2.3.6 其他引脚配置选项 34
2.4 总结 36
2.5 练习 36
03 软件并行基础
3.1 综述 38
3.2 概念 38
 3.2.1 初始程序 39
 3.2.2 任务的创建与使用 41
3.3 提高响应 45
 3.3.1 中断和事件触发 46
 3.3.2 通过有限状态机减少任务执行次数 50
 3.3.3 使用硬件节省CPU时间 54
3.4 高级调度问题 57
 3.4.1 等待 58
 3.4.2 任务优先级 59
 3.4.3 任务抢占 60
 3.4.4 实时系统 61
3.5 总结 61
3.6 练习 61
04 Arm Cortex-M0+处理器内核和中断
4.1 综述 65
4.2 CPU内核 65
 4.2.1 概念 65
 4.2.2 架构 67
4.3 异常和中断 77
 4.3.1 CPU异常处理 77
 4.3.2 中断与异常硬件 79
 4.3.3 中断软件 86
4.4 总结 92
4.5 练习 93
05 C汇编语言
5.1 综述 95
5.2 背景 95
5.3 软件开发工具 95
 5.3.1 程序构建工具 96
 5.3.2 编程器 99
 5.3.3 调试器 99
5.4 C语言基础 100
 5.4.1 程序与函数 100
 5.4.2 启动代码 101
 5.4.3 存储器类型 101
 5.4.4 一个程序的存储器需求 101
5.5 构建函数 102
 5.5.1 寄存器使用规范 103
 5.5.2 程序首部与程序尾部 104
 5.5.3 异常处理程序 106
5.6 控制程序流程 107
 5.6.1 条件结构 107
 5.6.2 循环结构 110
 5.6.3 调用子函数 113
5.7 访问内存中的数据 114
 5.7.1 静态分配内存 114
 5.7.2 自动分配内存 115
 5.7.3 动态分配内存和指针 116
 5.7.4 数组元素 117
5.8 总结 119
5.9 练习 120
06 模拟接口
6.1 综述 122
6.2 简介 122
 6.2.1 背景 122
 6.2.2 概念 122
 6.2.3 采样与量化 123
6.3 数模转换器 125
 6.3.1 概念 125
 6.3.2 转换器结构 126
 6.3.3 Kinetis KL25Z DAC 126
 6.3.4 应用实例:波形发生器 127
6.4 模拟比较器 128
 6.4.1 概念 128
 6.4.2 Kinetis KL25Z 比较器 129
 6.4.3 应用实例:电压转换监视器 131
6.5 模数转换器 132
 6.5.1 概念 132
 6.5.2 Kinetis KL25Z ADC 134
 6.5.3 应用实例 138
6.6 总结 145
6.7 练习 146
07 定时器
7.1 综述 148
7.2 概念 148
 7.2.1 定时器硬件电路 148
 7.2.2 定时器应用实例 149
7.3 定时器外设 151
 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

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

亚历山大·狄恩博士自2000年以来一直担任北卡罗来纳州立大学(NCSU)电子与计算机工程系的教师。1991年从美国麦迪逊的威斯康星大学获得学士学位,1994年和2000年分别从卡耐基-梅隆大学获得硕士和博士学位。
狄恩博士开设了四门课程,从基础到架构,从设计到优化均有涉猎,其研究领域包括使用编译器、操作系统、实时系统技术,通过降低时钟速度、能量和内存要求,在嵌入式系统中获得商品单片机的性能提升。狄恩博士工作于联合技术研究中心,致力于发展嵌入式系统和通信网络架构。他在此领域持有三项专利。

推荐用户

相关图书

斗地主游戏基本规则 江西多乐彩开奖结果今天一 贵州11选5下期推荐 四川金7乐历史开奖结果 湖北30选5 天津快乐十分中奖 股票配资平台哪家安全 快乐彩12选5奖金查询表 幸运赛车选号技巧心得 河北11选5预测专家推荐 极速赛车在哪个网站 北京11选5分布走势图 黑龙江快乐十分前30期分布走势图 3G配资 吉林快3开奖快结果遗漏 陕西十一选五一定牛走势图 3d杀码专区天中图库