
| 以应用和实践为核心,ARM开发技术与实际案例紧密结合,边讲边练,实战价值高;同时提供了系统设计的详细思路与流程,对实例程序代码做了详细注释,利用读者理解和巩固知识点。 本书配有光盘一张,包含了全书所有实例的硬件原理图和程序源代码,方便读者学习和使用,同时读者只需对其稍加修改,便可应用于自己的工作中或完成自己课题,物超所值。 |
| 基 础 篇 第1章 ARM 处理器概述1 1.1 ARM 公司简介1 1.2 ARM特点与应用领域2 1.2.1 ARM特点2 1.2.2 ARM应用领域2 1.3 ARM处理器系列3 1.4 ARM主流芯片介绍7 1.4.1 ATMEL公司带ARM核的芯片7 1.4.2 ADMtek公司带ARM核的芯片12 1.4.3 Cirrus Logic公司带ARM核的芯片13 1.4.4 Intel公司带ARM核的芯片14 1.4.5 LinkUp公司带ARM核的芯片16 1.4.6 NetSilicon公司带ARM核的芯片17 1.4.7 SAMSUNG公司带ARM核的芯片21 1.4.8 TI公司带ARM核的芯片23 1.4.9 Triscend公司带ARM核的芯片24 1.5 本章总结26 第2章 ARM的系统结构27 2.1 ARM内核基本结构27 2.1.1 ARM内核27 2.1.2 ARM扩展功能块28 2.1.3 ARM启动方式30 2.2 ARM处理器运行模式31 2.3 ARM寄存器31 2.3.1 通用寄存器32 2.3.2 程序状态寄存器33 2.3.3 ARM状态下的寄存器35 2.3.4 Thumb状态下的寄存器36 2.4 ARM存储系统37 2.4.1 ARM存储方法37 2.4.2 存储空间管理单元MMU37 2.5 ARM流水线与时序39 2.5.1 ARM流水线39 2.5.2 ARM时序40 2.6 ARM中断与异常41 2.6.1 ARM异常类型41 2.6.2 异常的响应及返回42 2.6.3 异常的描述42 2.6.4 异常的处理44 2.7 ARM的总线接口45 2.7.1 ARM的存储器接口45 2.7.2 ARM的协处理器接口55 2.7.3 AMBA接口60 2.8 本章总结64 第3章 ARM 指令系统与编程65 3.1 ARM 32位指令系统65 3.1.1 ARM指令系统概述65 3.1.2 ARM定点指令集68 3.1.3 ARM浮点指令集89 3.2 ARM 16位Thumb指令系统93 3.2.1 Thumb指令系统概述93 3.2.2 Thumb指令集94 3.3 ARM汇编语言设计105 3.3.1 ARM汇编器所支持的伪指令105 3.3.2 汇编语言的语句格式112 3.3.3 汇编语言的程序结构115 3.4 ARM C语言设计117 3.4.1 ARM C/C++编程设计117 3.4.2 ARM C/C++与汇编混合编程127 3.4.3 ARM C/C++编译器136 3.4.4 C语言优化编程141 3.5 本章总结146 第4章 ARM开发环境与工具147 4.1 ADS开发环境147 4.1.1 CodeWarrior的使用147 4.1.2 AXD的使用152 4.2 SDT开发环境154 4.2.1 SDT开发环境及特点154 4.2.2 SDT调试环境154 4.2.3 利用SDT软件编程实例154 4.3 Linux的GNU编译工具157 4.3.1 Linux基础知识157 4.3.2 GNU汇编器gas159 4.3.3 GNU编译器gcc160 4.3.4 GNU Make工具162 4.3.5 GNU链接器ld169 4.3.6 GNU应用实例170 4.4 本章总结171 第5章 ARM的系统调试172 5.1 ARM调试方法概述172 5.2 AXD平台仿真器调试173 5.2.1 初始化存储器173 5.2.2 在线仿真174 5.2.3 常见问题175 5.3 基于Angel的调试系统175 5.3.1 基于Angel的调试系统概述176 5.3.2 使用Angel开发应用程序178 5.3.3 Angel执行的操作182 5.3.4 将Angel移植到特定的目标系统184 5.4 基于JTAG的调试系统201 5.4.1 调试接口JTAG介绍201 5.4.2 基于JTAG的调试系统的特点203 5.4.3 基于JTAG的调试系统结构204 5.4.4 目标系统中的调试功能扩展部件205 5.4.5 基于JTAG的调试过程206 5.5 本章总结206 提 高 篇 第6章 μC/OS-Ⅱ移植与应用设计207 6.1 μC/OS-Ⅱ概述207 6.1.1 μC/OS-II简介207 6.1.2 μC/OS-II的特点208 6.2 μC/OS-Ⅱ移植过程209 6.2.1 准备内容说明209 6.2.2 μC/OS-II文件体系结构209 6.2.3 μC/OS-II移植条件209 6.2.4 μC/OS-II在S3C44B0X上的移植210 6.3 μC/OS-Ⅱ软件设计实例211 6.4 实例总结213 第7章 ARM嵌入式Linux的应用开发214 7.1 嵌入式Linux开发的一般流程214 7.2 ARM嵌入式Linux开发环境构造215 7.3 BOOT LOADER的安装217 7.4 Linux系统移植原理与过程228 7.4.1 Linux系统移植原理228 7.4.2 ARM Linux的移植过程230 7.5 Linux根文件系统的原理与创建237 7.5.1 根文件系统原理237 7.5.2 根文件创建过程240 7.5.3 相关总结246 7.6 Linux下的GUI系统配置与移植246 7.6.1 GUI系统原理246 7.6.2 不同GUI平台的移植配置249 7.6.3 GUI图形显示的实现251 7.7 编写嵌入式Linux的设备驱动程序254 7.8 Linux应用开发实例:GPIO设备程序开发256 7.8.1 实例说明256 7.8.2 GPIO设备驱动原理257 7.8.3 GPIO设备程序开发258 7.9 本章小结259 第8章 ARM外围设备的编程开发260 8.1 ARM外围设备编程原理261 8.1.1 Flash的工作原理与编程261 8.1.2 SDRAM的工作原理与编程268 8.1.3 串口、以太网口的设计272 8.1.4 电源模块273 8.1.5 液晶显示模块LCD274 8.1.6 键盘模块275 8.2 ARM外围设备设计实例1——USB设备模块设计276 8.2.1 实例说明276 8.2.2 设计思路分析276 8.2.3 硬件电路设计279 8.2.4 软件设计282 8.2.5 实例小结286 8.3 ARM外围设备设计实例2——I2C总线接口设计286 8.3.1 实例说明286 8.3.2 I2C设计原理286 8.3.3 I2C硬件电路设计287 8.3.4 软件设计289 8.3.5 实例小结298 8.4 本章小结298 实 战 篇 第9章 ARM嵌入式系统组成与开发流程299 9.1 ARM嵌入式系统的组成299 9.2 ARM嵌入式系统体系结构299 9.2.1 硬件体系结构300 9.2.2 软件体系结构301 9.3 ARM嵌入式硬件平台实现方法302 9.3.1 硬件电路板设计302 9.3.2 ARM硬件设计原则303 9.4 ARM嵌入式软件的开发方法304 9.4.1 软件开发流程304 9.4.2 软件开发环境构建306 9.5 本章总结306 第10章 远程控制用印系统设计(基于μC/OS-II系统)307 10.1 实例说明307 10.2 设计思路分析308 10.2.1 远程用印系统实现方案308 10.2.2 用印系统的扩展应用实现方案308 10.3 硬件电路设计308 10.3.1 总体电路设计308 10.3.2 步进电机驱动模块309 10.3.3 LCD数据显示模块310 10.4 软件设计312 10.4.1 步进电机的S曲线实现312 10.4.2 程序代码与注释313 10.5 实例总结330 第11章 基于ARM无线的无纸化排队叫号系统331 11.1 系统说明331 11.2 系统实现方案332 11.3 硬件电路设计333 11.3.1 CC1100芯片333 11.3.2 接口电路335 11.3.3 SPI 介绍337 11.3.4 LPC2132的SPI控制寄存器介绍339 11.4 软件设计339 11.5 程序代码与注释345 11.6 实例总结370 第12章 基于GPSOne的CDMA车辆报警器设计371 12.1 系统说明371 12.1.1 系统构成371 12.1.2 报警器构成372 12.2 系统方案设计372 12.2.1 传统设计思路372 12.2.2 采用GPSOne的设计思路373 12.3 硬件电路设计374 12.3.1 DTGS-800介绍374 12.3.2 电源电路375 12.3.3 DTGS-800接口以及其与LPC2132通信接口376 12.3.4 UIM卡的接口电路377 12.3.5 工作指示灯、模块忙信号指示灯电路及按键电路377 12.3.6 模块复位、蜂鸣器和震动传感器电路378 12.3.7 I2C及串行EEPROM电路378 12.3.8 系统总体电路379 12.4 软件设计380 12.4.1 DTGS-800支持的AT指令380 12.4.2 软件工作流程383 12.5 代码说明与注释384 12.5.1 系统初始化384 12.5.2 主函数处理的任务389 12.5.3 中断处理和数据接收判断392 12.5.4 源程序附录(主要程序)394 12.6 实例总结408 |
商品评论(0条)