出版社:电子工业出版社
年代:2010
定价:65.0
本书系统深入地介绍了ARM Cortex-M3基础应用与综合开发的流程、方法和技巧。全书共计17章,第1、2章简要介绍了Cortex-M3架构及指令系统、ARM Real View MDK 开发环境;第3~13章结合实例详细介绍了I/O端口、A/D、D/A、LCD、数码管显示、SPI、I2C、USB、以太网控制器、NOR Flash、SD的开发原理和实际应用;第14~17章介绍了数据传输存储显示、永磁电机驱动控制、卡车辆智能终端导航及RFID+ZIBEE无线物联网技术4个综合开发项目。
第1章 Cortex-M3及ST微处理器概述
1.1 Cortex-M3处理器特点
1.1.1 高性能
1.1.2 采用Thumb-2指令集具有更高的效率和性能
1.1.3 先进的中断处理功能
1.1.4 总线矩阵和接口的应用
1.1.5 调试支持
1.1.6 低成本低功耗、易于使用
1.2 Cortex-M3内核结构
1.2.1 Cortex-M3的基本结构
1.2.2 寄存器组
1.2.3 处理器工作模式和状态
1.2.4 异常和中断
1.2.5 向量表
1.2.6 堆栈实现与双堆栈机制
1.3 Cortex-M3的指令集
1.4 STM32F系列微控制器简介
1.4.1 STM32F微控制器的主要特点
1.4.2 系统架构
1.4.3 存储器组织
1.4.4 STM32F处理器的启动配置
1.4.5 STM32F微控制器的应用
第2章 RealView MDK开发工具
2.1 RealView MDK概述
2.2 µVision4集成开发环境简介
2.3 µVision4软件开发流程
2.3.1 使用项目
2.3.2 源文件
2.4 μVison4编译器选项
2.5 项目编译和生成
2.5.1 编译项目
2.5.2 项目生成
2.6 对目标设备编程(Flash编程器)
2.6.1 Flash编程器功能简介
2.6.2 Flash编程器工具配置
2.7 调试程序(Debug)
2.7.1 µVision4调试器简介
2.7.2 µVision4调试器的使用
2.8 简易入门实例
2.8.1 编辑Hello.C
2.8.2 编译、链接Hello例程
2.8.3 测试程序
2.9 工具集的使用技巧和窍门
2.9.1 启动代码的图形化配置
2.9.2 仿真I/O端口
2.9.3 仿真中断和时钟中断
2.9.4 为PC的COM端口分配串行I/O
2.9.5 向文件中写入调试输出信息
第3章 I/O端口应用
3.1 通用I/O端口(GPIO)功能描述
3.1.1 单独的位设置或位清除
3.1.2 外部中断/唤醒线
3.1.3 复用功能(AF)
3.1.4 软件重新映射I/O复用功能
3.1.5 GPIO锁定机制
3.1.6 输入配置
3.1.7 输出配置
3.1.8 复用功能配置
3.1.9 模拟输入配置
3.1.10 外设的GPIO配置
3.2 GPIO相关寄存器描述
3.2.1 端口配置低寄存器(GPIOx_CRL)(x=A...G)
3.2.2 端口配置高寄存器(GPIOx_CRH)(x=A...G)
3.2.3 端口输入数据寄存器(GPIOx_IDR)(x=A...G)
3.2.4 端口输出数据寄存器(GPIOx_ODR)(x=A...G)
3.2.5 端口位设置/清除寄存器(GPIOx_BSRR)(x=A...G)
3.2.6 端口位清除寄存器(GPIOx_BRR)(x=A...G)
3.2.7 端口配置锁定寄存器(GPIOx_LCKR)(x=A...G)
3.3 应用实例--按键控制驱动LED
3.3.1 设计要求
3.3.2 硬件电路设计
3.3.3 应用程序流程图设计
3.3.4 应用程序代码设计
3.3.5 程序运行追踪
3.3.6 实例注意事项总结
第4章 A/D转换
4.1 A/D转换器(ADC)介绍
4.1.1 A/D转换器功能描述
4.1.2 校准
4.1.3 数据对齐
4.1.4 可编程的通道采样时间
4.1.5 外部触发转换
4.1.6 DMA请求
4.1.7 双ADC模式
4.1.8 ADC中断
4.2 ADC相关寄存器设置及功能说明
4.2.1 ADC状态寄存器(ADC_SR)
4.2.2 ADC控制寄存器1(ADC_CR1)
4.2.3 ADC控制寄存器2(ADC_CR2)
4.2.4 ADC采样时间寄存器1(ADC_SMPR1)
4.2.5 ADC采样时间寄存器2(ADC_SMPR2)
4.2.6 ADC注入通道数据偏移寄存器x(ADC_JOFRx)(x=1...4)
4.2.7 ADC看门狗高阈值寄存器(ADC_HTR)
4.2.8 ADC看门狗低阈值寄存器(ADC_LRT)
4.2.9 ADC规则序列寄存器1(ADC_SQR1)
4.2.10 ADC规则序列寄存器2(ADC_SQR2)
4.2.11 ADC规则序列寄存器3(ADC_SQR3)
4.2.12 ADC注入序列寄存器(ADC_JSQR)
4.2.13 ADC 注入数据寄存器x(ADC_JDRx)(x= 1...4)
4.2.14 ADC规则数据寄存器(ADC_DR)
4.3 应用实例--压力传感器A/D转换
4.3.1 设计要求
4.3.2 硬件电路设计
4.3.3 硬件原理图及说明
4.3.4 软件程序设计流程
4.3.5 程序代码与注释
4.3.6 程序运行追踪
4.3.7 实例注意事项总结
第5章 D/A转换
5.1 DAC转换器介绍
5.1.1 DAC转换器功能描述
5.1.2 双DAC通道转换
5.2 DAC相关寄存器功能说明
5.2.1 DAC控制寄存器(DAC_CR)
5.2.2 DAC软件触发寄存器(DAC_SWTRIGR)
5.2.3 DAC通道1的12位右对齐数据保持寄存器(DAC_DHR12R1)
5.2.4 DAC通道1的12位左对齐数据保持寄存器(DAC_DHR12L1)
5.2.5 DAC通道1的8位右对齐数据保持寄存器(DAC_DHR8R1)
5.2.6 DAC通道2的12位右对齐数据保持寄存器(DAC_DHR12R2)
5.2.7 DAC通道2的12位左对齐数据保持寄存器(DAC_DHR12L2)
5.2.8 DAC通道2的8位右对齐数据保持寄存器(DAC_DHR8R2)
5.2.9 双DAC的12位右对齐数据保持寄存器(DAC_DHR12RD)
5.2.10 双DAC的12位左对齐数据保持寄存器(DAC_DHR12LD)
5.2.11 双DAC的8位右对齐数据保持寄存器(DAC_DHR8RD)
5.2.12 DAC通道1数据输出寄存器(DAC_DOR1)
5.2.13 DAC通道2数据输出寄存器(DAC_DOR2)
5.3 DAC应用实例--产生三角波电压并输出
5.3.1 硬件电路设计
5.3.2 软件程序设计流程
5.3.3 程序代码设计
5.3.4 程序运行监测
5.3.5 实例注意事项总结
第6章 LCD/触摸屏接口
6.1 LCD概述
6.1.1 LCD工作原理
6.1.2 LCD 分类
6.1.3 如何显示
6.1.4 液晶显示模块的控制
6.2 触摸屏概述
6.2.1 电阻触摸屏工作原理
6.2.2 触摸屏电路控制
6.3 应用实例--LCD/触摸屏显示
6.3.1 设计要求
6.3.2 硬件电路设计
6.3.3 软件程序设计流程
6.3.4 程序代码与注释
6.3.5 程序运行追踪
6.3.6 实例注意事项总结
第7章 数码管显示接口应用
7.1 数码管概述
7.1.1 数码管工作原理
7.1.2 如何驱动数码管
7.2 应用实例--7段数码管驱动
7.2.1 设计要求
7.2.2 硬件电路设计
7.2.3 数码管驱动程序流程图分析
7.2.4 数码管驱动应用程序源代码设计
7.2.5 程序运行实时监测
7.2.6 实例注意事项总结
第8章 SPI接口
8.1 串行外设(SPI)接口介绍
8.1.1 串行外设接口功能描述
8.1.2 配置SPI为从模式
8.1.3 配置SPI为主模式
8.1.4 配置SPI为单工通信
8.1.5 数据发送与接收过程
8.1.6 CRC计算
8.1.7 状态标志
8.1.8 关闭SPI
8.1.9 利用DMA的SPI通信
8.1.10 错误标志
8.1.11 SPI中断
8.2 微处理器SPI接口相关寄存器功能说明
8.2.1 SPI控制寄存器1(SPI_CR1)
8.2.2 SPI控制寄存器2(SPI_CR2)
8.2.3 SPI 状态寄存器(SPI_SR)
8.2.4 SPI 数据寄存器(SPI_DR)
8.2.5 SPI CRC多项式寄存器(SPI_CRCPR)
8.2.6 SPI Rx CRC寄存器(SPI_RXCRCR)
8.2.7 SPI Tx CRC寄存器(SPI_TXCRCR)
8.3 应用实例--利用SPI接口访问串行Flash
8.3.1 设计要求
8.3.2 硬件电路设计
8.3.3 硬件电路原理图说明
8.3.4 应用程序流程图及时序分析
8.3.5 应用程序代码设计
8.3.6 程序运行实时监测
8.3.7 实例注意事项总结
第9章 I2C接口
9.1 I2C接口简介
9.1.1 I2C 接口功能描述
9.1.2 I2C中断请求
9.1.3 SMBus
9.1.4 I2C调试模式
9.2 微处理器I2C接口相关寄存器功能
9.2.1 I2C控制寄存器1(I2C_CR1)
9.2.2 I2C控制寄存器 2(I2C_CR2)
9.2.3 I2C自身地址寄存器 1(I2C_OAR1)
9.2.4 I2C自身地址寄存器2(I2C_OAR2)
9.2.5 I2C数据寄存器(I2C_DR)
9.2.6 I2C状态寄存器 1(I2C_SR1)
9.2.7 I2C状态寄存器 2(I2C_SR2)
9.2.8 I2C时钟控制寄存器(I2C_CCR)
9.2.9 I2C TRISE寄存器(I2C_TRISE)
9.3 应用实例--实现温度传感器读写
9.3.1 设计要求
9.3.2 硬件电路设计
9.3.3 温度传感器硬件原理图说明
9.3.4 应用程序流程图分析
9.3.5 应用程序代码设计
9.3.6 程序运行实时追踪
9.3.7 实例注意事项总结
第10章 全速USB接口
10.1 USB接口简介
10.1.1 USB功能描述
10.1.2 USB功能模块的组成
10.1.3 USB接口编程中需要考虑的问题
10.2 USB接口相关寄存器描述符说明
10.2.1 通用寄存器
10.2.2 端点寄存器
10.2.3 缓冲区描述表
10.3 应用实例--USB音频设备设计
10.3.1 设计要求
10.3.2 硬件电路设计
10.3.3 硬件电路原理图说明
10.3.4 USB音频设备编程介绍
10.3.5 应用程序流程图分析
10.3.6 应用程序代码设计
10.3.7 程序运行实时追踪
10.3.8 实例注意事项总结
第11章 以太网控制器模块设计
11.1 以太网接口介绍
11.1.1 以太网模块主要功能
11.1.2 以太网模块引脚和内部信号
11.1.3 以太网模块功能描述:SMI、MII和RMII
11.2 以太网寄存器描述
11.2.1 MAC寄存器描述
11.2.2 MMC寄存器描述
11.2.3 IEEE 1588时间戳寄存器描述
11.2.4 DMA寄存器描述
11.3 应用实例--实现与收发器DP83848C的以太网通信
11.3.1 设计要求
11.3.2 硬件电路设计
11.3.3 硬件电路原理设计
11.3.4 应用程序流程图分析
11.3.5 应用程序代码设计
11.3.7 程序运行实时追踪
11.3.8 实例注意事项总结
第12章 NOR Flash应用
12.1 FSMC接口功能描述
12.1.1 外部设备地址映像
12.1.2 NOR和PSRAM地址映像
12.1.3 NOR闪存和PSRAM的非对齐访问支持
12.1.4 NAND和PC卡地址映像
12.2 AHB总线接口简介
12.2.1 支持的存储器和操作
12.2.2 配置寄存器
12.3 NOR闪存和PSRAM控制器
12.3.1 外部存储器接口信号
12.3.2 NOR闪存和PSRAM控制器支持的存储器类型及其操作方式
12.3.3 NOR闪存和PSRAM控制器时序图
12.4 NOR闪存和PSRAM控制器寄存器功能
12.4.1 SRAM/NOR闪存片选控制寄存器 1~4(FSMC_BCR1~4)
12.4.2 SRAM/NOR闪存片选时序寄存器 1~4(FSMC_BTR1~4)
12.4.3 SRAM/NOR闪存写时序寄存器 1~4(FSMC_BWTR1~4)
12.5 应用实例--实现存储器M29W128FL读/写
12.5.1 硬件设计
12.5.2 硬件电路原理图说明
12.5.3 应用程序流程图
12.5.4 NOR闪存应用程序代码设计
12.5.5 调试程序及程序运行实时追踪
12.5.6 实例注意事项总结
第13章 SD/MMC应用
13.1 SDIO接口概述
13.1.1 SDIO的主要功能
13.1.2 SDIO总线拓扑
13.2 SDIO接口功能描述
13.2.1 SDIO适配器
13.2.2 SDIO AHB接口
13.3 SDIO接口卡介绍
13.3.1 卡状态寄存器
13.3.2 SD状态寄存器
13.3.3 SD的I/O功能模式
13.3.4 命令集简介
13.3.5 命令响应格式简介
13.4 SDIO接口寄存器功能描述
13.4.1 SDIO电源控制寄存器(SDIO_POWER)
13.4.2 SDIO时钟控制寄存器(SDIO_CLKCR)
13.4.3 SDIO参数寄存器(SDIO_ARG)
13.4.4 SDIO命令寄存器(SDIO_CMD)
13.4.5 SDIO命令响应寄存器(SDIO_RESPCMD)
13.4.6 SDIO响应 1...4 寄存器(SDIO_RESPx)
13.4.7 SDIO数据定时器寄存器(SDIO_DTIMER)
13.4.8 SDIO数据长度寄存器(SDIO_DLEN)
13.4.9 SDIO数据控制寄存器(SDIO_DCTRL)
13.4.10 SDIO数据计数器寄存器(SDIO_DCOUNT)
13.4.11 SDIO状态寄存器(SDIO_STA)
13.4.12 SDIO清除中断寄存器(SDIO_ICR)
13.4.13 SDIO中断屏蔽寄存器(SDIO_MASK)
13.4.14 SDIO FIFO计数器寄存器(SDIO_FIFOCNT)
13.4.15 SDIO FIFO数据寄存器(SDIO_FIFO)
13.5 应用实例--实现SD/MMC存储卡的读/写
13.5.1 设计要求
13.5.2 硬件电路设计
13.5.3 硬件电路原理图说明
13.5.4 应用程序流程图分析
13.5.5 应用程序代码设计
13.5.6 程序运行实时追踪
13.5.7 实例注意事项总结
第14章 无线数据传输综合应用项目
14.1 嵌入式图形用户界面μC/GUI移植
14.2 无线数据传输应用实例
14.2.1 设计要求
14.2.2 主要器件介绍
14.2.3 芯片nRF24L01增强型ShockBurst模式配置与编程
14.2.4 硬件电路设计
14.2.5 应用程序设计流程图
14.2.6 程序代码设计
14.3 实例注意事项总结
第15章 永磁同步电机控制综合应用项目
15.1 永磁同步电机概述
15.1.1 永磁同步电机的工作原理
15.1.2 电机伺服系统的基本结构
15.1.3 功率驱动控制单元
15.1.4 磁场定向控制(FOC)
15.2 永磁同步电机控制应用实例设计
15.2.1 设计要求
15.2.2 硬件电路设计
15.2.3 应用程序设计流程图
15.2.4 程序代码设计
15.3 程序运行实时追踪
15.4 实例注意事项总结
第16章 车载GPS移动导航应用项目
16.1 GPS系统概述
16.1.1 GPS系统工作原理
16.1.2 GPS数据格式
16.2 车载GPS移动导航应用实例
16.2.1 设计要求
16.2.2 硬件电路设计
16.2.3 应用程序设计流程图
16.2.4 软件代码设计
16.3 实例注意事项总结
第17章 RFID+GPRS基于物联网技术 的综合应用
17.1 μC/OS-II概述
17.1.1 μC/OS-II简介
17.1.2 μC/OS-II的特点
17.2 μC/OS-II内核介绍
17.2.1 μC/OS-II内核结构
17.2.2 任务管理
17.2.3 时间管理
17.2.4 任务之间的通信与同步
17.2.5 内存管理
17.3 μC/OS-II移植
17.3.1 μC/OS-II文件体系结构
17.3.2 移植μC/OS-II满足的条件
17.3.3 移植要点
17.4 综合实例--RFID+GPRS基于物联网技术的应用
17.4.1 硬件电路设计
17.4.2 μC/OS-II软件设计
17.4.3 程序运行实例说明
17.5 实例注意事项总结
《ARM Cortex-M3应用开发实例详解》针对市场上新型热门的ARM芯片SAM3U Cortex-M3系列,通过大量工程案例,系统深入地介绍了ARM Cortex-M3基础应用与综合开发的流程、方法和技巧。全书共计17章,第1、2章简要介绍了Cortex-M3架构及指令系统、ARM Real View MDK 开发环境;第3~13章结合实例详细介绍了I/O端口、A/D、D/A、LCD、数码管显示、SPI、I2C、USB、以太网控制器、NOR Flash、SD的开发原理和实际应用;第14~17章介绍了数据传输存储显示、永磁电机驱动控制、卡车辆智能终端导航及RFID+ZIBEE无线物联网技术4个综合开发项目。全书层次清晰、技术先进;实例丰富、典型,从基础应用到综合实例,覆盖范围广,实践指导性强,深入展示了ARM Cortex-M3处理器的应用开发技术与经验。同时书中实例均系作者原创,通用性和可移植性强,方便读者举一反三,并能快速地学以致用。
读者对象:本书适合高校计算机、电子、通信、自动控制等相关专业的大学生,以及从事ARM嵌入式开发的科研工程师使用,是读者学习ARM Cortex-M3应用的理想参考书。
(英) 姚文详, 著
刘波文, 编著
刘同法, 张琴艳, 肖志刚, 编著
刘同法, 肖志刚, 编著
张永辉, 主编
杨东轩, 王嵩, 编著
王永虹, 徐玮, 郝立平, 编著
廖义奎, 编著
温子祺, 编著