ARM嵌入式系统应用开发基础

ARM嵌入式系统应用开发基础 教材名称: ARM嵌入式系统应用开发基础
ISBN号: 978-7-89436-187-5 作者: 严海颖、赵宇枫
字数: 328千字 规格: 16开
印制时间: 2013-03-13 出版日期: 2013-03-01
定价: 39.80 元 样章下载: 978-7-89436-187-5ARM嵌入式系统应用开发基础样章(加水印).pdf
购买地址:

        本教材简要地介绍了32位嵌入式ARM7 TDMI内核体系结构;以NXP公司的LPC2114芯片为核心,深入浅出地讲述了各种常用外设接口编程技术,并以项目案例的方式介绍了嵌入式应用系统的基本设计方法。
        在教材内容的组织上充分考虑了高职教育的特点,立足于应用,把相关知识与技能点合理穿插在实训项目案例的教学过程中。在实训环节上,我们采用了“基础实训”和“综合实训”相结合的形式,一系列实训项目不是简单地对知识点的重复,而是指向明确的技能目标,难度循序渐进,并按照“有利于课堂讲授、有利于实践操作、有利于方案创新、有利于自学提高”的原则进行安排。
        本教材可以作为高等院校嵌入式技术、应用电子、自动化等相关专业嵌入式系统基础课程的教材,也可供嵌入式应用开发工程师参考。
 
第1章嵌入式系统概论1
 
1.1嵌入式系统的概念1
 
1.1.1我们身边的嵌入式系统1
 
1.1.2嵌入式系统的定义2
 
1.1.3嵌入式系统的特点3
1.1.4嵌入式系统的应用3
 
1.2嵌入式系统的基本组成4
 
1.2.1嵌入式系统硬件平台5
 
1.2.2嵌入式系统的软件结构7
 
1.3嵌入式系统的发展趋势8
 
1.4嵌入式系统学习的指南9
 
1.5本章小结10
 
1.6强化练习10
第2章ARM7体系结构与指令系统简介11
 
2.1ARM简介11
 
2.1.1ARM公司与ARM微处理器11
 
2.1.2ARM体系结构发展12
 
2.1.3ARM微处理器系列14
 
2.2ARM7的体系结构17
 
2.2.1ARM7 TDMI功能框图17
 
2.2.2ARM处理器的工作状态18
 
2.2.3ARM处理器的工作模式19
 
2.2.4ARM内部寄存器19
2.2.5指令长度及数据类型23
2.2.6存储器格式24
2.2.7三级流水线25
2.2.8异常处理25
 
2.3ARM指令系统简介29
2.3.1ARM指令系统概述29
2.3.2ARM处理器的寻址方式32
2.3.3ARM 指令分类及功能一览表33
 
2.4本章小结34
 
2.5强化练习34
第3章ARM微处理器硬件结构35
 
3.1LPC2000系列微处理器简介35
3.1.1处理器的特性35
3.1.2处理器内部结构框图36
3.1.3处理器的外部引脚37
 
3.2存储器管理41
3.2.1片内存储器41
3.2.2片外存储器41
3.2.3存储器映射42
3.2.4存储器重映射与引导块43
 
3.3本章小结44
 
3.4强化练习44
第4章ARM应用程序开发和电路仿真环境45
 
4.1嵌入式系统的开发流程和开发环境45
4.1.1嵌入式系统开发流程45
4.1.2嵌入式系统的硬件和软件开发46
 
4.2基于ARM的应用程序开发套件RealView MDK47
4.2.1RealView MDK开发套件简介47
4.2.2Keil μVision集成开发环境的使用步骤48
 
 
4.2.3基础实训(1)ARM C程序的编译连接53
 
4.3嵌入式系统电路设计与仿真软件Proteus57
4.3.1Proteus电路仿真软件简介57
4.3.2基础实训(2)Proteus电路设计与仿真快速入门58
 
4.4本章小结61
 
4.5强化练习61
第5章GPIO模块及其应用62
 
5.1输入/输出设备与片内外设62
5.1.1概述62
5.1.2通用输入/输出端口GPIO62
 
5.2LPC2114的引脚功能连接模块63
5.2.1引脚功能连接模块的作用63
5.2.2引脚功能连接模块的相关寄存器63
5.2.3引脚功能连接模块的应用编程65
 
5.3LPC2114的通用输入/输出模块GPIO65
 
5.3.1GPIO端口的基本结构和工作原理65
 
5.3.2GPIO相关寄存器的详细说明66
5.3.3GPIO输出控制编程67
5.3.4基础实训(1)蜂鸣器输出控制69
5.3.5GPIO输入检测编程71
5.3.6基础实训(2)单个LED显示单个按键的状态71
 
5.4本章小结73
 
5.5强化练习73
第6章GPIO的应用——显示接口设计74
 
6.1嵌入式系统的人机接口74
6.1.1什么是人机接口74
 
6.1.2嵌入式系统常用的人机输入/输出设备74
 
6.2LED显示器74
6.2.18段LED数码管的结构和原理75
6.2.2字符显示的控制75
 
6.3数码LED显示输出系统的设计76
6.3.1基础实训(1)单个数码LED的显示输出系统设计(1)76
6.3.2基础实训(2)单个数码LED的显示输出系统设计(2)78
 
6.3.3基础实训(3)两个LED显示二位数(静态显示)79
 
6.3.4基础实训(4)两个LED显示二位数(动态显示)82
 
6.4本章小结85
 
6.5强化练习85
第7章GPIO的应用——键盘接口设计86
 
7.1嵌入式系统的人机输入设备86
7.2.1按键86
7.2.2键盘86
 
7.2按键和键盘的类型87
7.2.1点式按键87
7.2.2独立式键盘88
7.2.3矩阵式键盘89
 
7.3键盘输入系统的设计91
7.3.1基础实训(1)单个按键的输入系统设计(1)91
7.3.2基础实训(2)单个按键的输入系统设计(2)93
7.3.3基础实训(3)独立式键盘的输入系统设计95
7.3.4基础实训(4)矩阵式键盘的输入系统设计97
 
7.4完整人机接口系统的设计99
7.4.1系统组成99
7.4.2系统功能99
7.4.3软件系统任务概要100
7.4.4系统的核心问题100
 
7.5完整人机接口系统的软件设计101
7.5.1基础实训(5)4×4矩阵键盘和2路LED显示系统(1)101
7.5.2基础实训(6)4×4矩阵键盘和2路LED显示系统(2)103
 
7.6本章小结105
 
7.7强化练习105
第8章综合实训(1)简单计算器106
 
8.1计算器的电路设计和功能定义106
 
8.2计算器的工作过程分析107
8.2.1工作的基本流程107
8.2.2程序的基本架构107
 
8.3计算器系统的设计108
8.3.1一位数计算器设计108
8.3.2两位数计算器设计114
 
8.4本章小结122
 
8.5强化练习122
第9章中断系统与VIC123
 
9.1中断123
9.1.1中断的基本概念123
9.1.2中断处理过程124
 
9.2向量中断控制器(VIC)125
9.2.1概述125
9.2.2程序状态寄存器CPSR与VIC的关系125
9.2.3中断源125
9.2.4中断分类127
9.2.5VIC的主要管理功能127
 
9.3VIC的结构、功能及相关寄存器127
9.3.1控制寄存器129
9.3.2参数设置寄存器130
9.3.3状态寄存器132
9.3.4保护使能寄存器132
9.3.5IRQ中断过程实例分析132
9.3.6VIC基本使用方法 133
9.3.7VIC编程要点小结134
 
9.4应用编程举例135
9.4.1快速中断FIQ 135
9.4.2向量IRQ 136
9.4.3非向量IRQ 136
9.4.4多个中断设置137
 
9.5本章小结137
 
9.6强化练习137
第10章外部中断138
 
10.1外部中断概述138
10.1.1外部中断源138
10.1.2LPC2124的外部中断触发信号139
10.1.3边沿触发中断139
10.1.4电平触发中断139
 
10.2外部中断的相关寄存器140
10.2.1相关寄存器汇总140
10.2.2外部中断标志寄存器(EXTINT)140
10.2.3外部中断唤醒寄存器(EXTWAKE)140
10.2.4外部中断方式控制寄存器(EXTMODE)141
10.2.5外部中断极性控制寄存器(EXTPOLAR)141
10.2.6外部中断引脚设置141
10.2.7注意要点142
 
10.3外部中断与VIC142
10.3.1外部中断与VIC的关系142
10.3.2外部中断的设置143
 
10.4实例分析144
10.4.1基础实训(1)一个外部中断(按键)控制单个LED144
10.4.2基础实训(2)两个外部中断控制两个LED状态146
10.4.3基础实训(3)三个外部中断控制按键计数148
 
10.5本章小结151
 
10.6强化练习151
第11章定时计数器152
 
11.1定时计数器0/1152
11.1.1特性152
11.1.2定时器结构及工作原理152
11.1.3功能简介153
 
11.2定时计数器的相关寄存器154
11.2.1分频器结构描述155
11.2.2控制寄存器TCR155
11.2.3中断标志寄存器IR156
11.2.4匹配功能寄存器描述156
11.2.5捕获功能寄存器描述159
 
11.3定时器与中断系统161
11.3.1定时器与VIC的关系161
11.3.2匹配中断161
11.3.3捕获中断161
11.3.4使用定时器的注意要点162
 
11.4定时器操作示例162
11.4.1操作流程162
11.4.2示例1——定时器0初始化162
11.4.3示例2——用定时器测量脉冲宽度163
11.4.4示例3——匹配输出163
11.4.5示例4——定时器捕获163
 
11.5案例设计164
 
11.5.1基础实训(1)使用定时器0实现1s IRQ定时中断控制LED闪烁164
 
11.5.2基础实训(2)使用定时器1实现比较匹配输出控制LED闪烁166
11.5.3基础实训(3)定时器控制的流水灯168
 
11.6本章小结170
 
11.7强化练习170
第12章综合实训(2)电子钟171
 
12.1电子钟的功能定义与电路设计171
 
12.2电子钟的工作过程分析171
12.2.1工作的基本流程171
12.2.2程序的基本架构171
 
12.3电子钟系统的程序设计173
 
12.4本章小结177
 
12.5强化练习177
第13章A/D转换器178
 
13.1A/D转换器的基本概念178
 
13.2LPC2114/2124的A/D转换器178
13.2.1特性178
 
13.2.2A/D转换器描述179
13.2.3A/D转换器内部结构179
 
13.3A/D转换器寄存器描述179
13.3.1控制寄存器ADCR180
 
13.3.2数据寄存器ADDR182
 
13.4ADC与中断183
 
13.4.1ADC中断与VIC的关系183
13.4.2ADC中断说明183
13.4.3使用A/D转换器的注意要点183
 
13.5A/D转换器操作示例184
13.5.1操作流程184
 
13.5.2应用举例184
 
13.6基础实训 单路模拟信号采集184
 
13.7本章小结187
 
13.8强化练习187
第14章综合实训(3)数字电压表188
 
14.1数字直流电压表的功能定义188
 
14.2数字直流电压表电路设计188
 
14.3数字直流电压表系统的软件设计188
 
14.4本章小结192
 
14.5强化练习192
第15章UART串行通信口及应用193
 
15.1串行通信基本知识193
15.1.1串行通信基本概念193
15.1.2串行通信基本通信方式194
 
15.2LPC2000系列的UART195
15.2.1基本特性195
15.2.2UART结构与原理195
 
15.3UART0寄存器描述196
15.3.1UART0接收器缓存寄存器(U0RBR)197
15.3.2UART0发送器保持寄存器(U0THR)197
15.3.3UART0除数锁存LSB寄存器(U0DLL)197
15.3.4UART0除数锁存MSB寄存器(U0DLM)197
15.3.5UART0线控制寄存器(U0LCR)198
15.3.6UART0线状态寄存器(U0LSR)198
15.3.7UART0 FIFO控制寄存器(U0FCR)199
 
15.4UART应用示例200
15.4.1连接方式200
15.4.2操作流程200
15.4.3UART0初始化编程201
15.4.4UART0收发数据编程202
 
15.5UART0应用编程举例 202
 
15.6应用实例 203
15.6.1基础实训(1)LPC2000处理器与PC之间的通信203
15.6.2基础实训(2)基于UART串口通信的多路数据采集系统206
 
15.7本章小结210
 
15.8强化练习210
第16章SPI同步串口模块211
 
16.1SPI接口211
16.1.1SPI总线211
16.1.2LPC2000系列的SPI接口212
16.1.3SPI数据传输213
 
16.2SPI寄存器描述 214
16.2.1SPI控制寄存器(S0SPCR,S1SPCR)215
16.2.2SPI状态寄存器(S0SPSR,S1SPSR)215
16.2.3SPI数据寄存器(S0SPDR,S1SPDR)216
16.2.4SPI时钟计数寄存器(S0SPCCR,S1SPCCR)216
16.2.5SPI中断寄存器(S0SPINT,S1SPINT)216
 
16.3SPI操作模式217
16.3.1主机操作 217
16.3.2从机操作 219
16.3.3异常状况 221
 
16.4基础实训 主机模式SPI接口发送数据222
 
16.5本章小结224
 

 

(1)针对高职学生的认知特点,学习过程中更为强调动手能力的培养,课程的实验实训学时通常要达到总学时的50%以上,所以实验实训项目的设计必须细化,而且是丰富多样的。LPC2114芯片本身及其基于μCOS操作系统的编程,都有仿真软件平台(Proteus和Keil uVision )支持,教师可以“零成本”进行实验设计和实训项目开发,学生对实验实训项目也有创新的余地和二次开发的空间。
(2)使用本教材几乎不受任何实验设备条件限制,只要有计算机和仿真软件便能完成书上所有的实验。(当然,对于有实验设备的学校来说,也完全可以在相应的开发板上完成本教材实验。)