ARM嵌入式开发实例

出版社:电子工业出版社
出版日期:2013-4
ISBN:9787121200533
作者:肖广兵 编
页数:427页

作者简介

《ARM嵌入式开发实例:基于STM32的系统设计》共8章,按内容讲解的难度不同划分为3篇:基础篇主要介绍有关车载ARM嵌入式系统的基础知识,包括STM32F103XX芯片的系统资源、工作平台、基本语法指令等内容。提高篇主要介绍ARM嵌入式系统在实际工程项目中的初步应用,从GPIO接口模块、ADC模数转换模块、TIMER定时器等方面进行详细介绍,并着重分析了ARM嵌入式系统硬件资源的使用。

书籍目录

目 录 基础篇 第1章 初识ARM嵌入式系统 1.1 ARM嵌入式系统简介 1.1.1 ARM嵌入式的发展历程及其应用 1.1.2 ARM嵌入式的性能特性 1.1.3 ARM嵌入式系统的开发要点 1.1.4 常用车载ARM嵌入式芯片STM32F103XX 1.2 ARM嵌入式系统的开发环境 1.2.1 Keil MDK简介 1.2.2 Keil MDK开发步骤 1.3 ARM嵌入式系统的硬件构成 1.3.1 ARM嵌入式处理器结构 1.3.2 ARM嵌入式处理器中的指令 1.3.3 ARM硬件配置 1.4 ARM嵌入式系统开发实例——车载嵌入式芯片STM32F103XX 1.4.1 系统资源与性能参数 1.4.2 系统硬件设计 1.4.3 系统外围接口 第2章 ARM指令系统 2.1 ARM指令系统简介 2.1.1 ARM汇编语言的基本语法 2.1.2 ARM汇编指令中的后缀 2.1.3 ARM汇编指令的书写格式 2.2 ARM指令集的基本概念 2.2.1 ARM指令的基本格式 2.2.2 ARM指令中的条件执行 2.2.3 ARM指令中的S标志 2.3 ARM指令集的类型 2.3.1 跳转指令 2.3.2 算术运算指令 2.3.3 逻辑运算指令 2.3.4 存储器访问指令 2.3.5 数据传送指令 2.3.6 协处理器指令 2.3.7 异常中断产生指令 2.3.8 ARM指令小结 2.4 Thumb指令集 2.4.1 Thumb指令的基本概念 2.4.2 Thumb指令集的结构 2.4.3 Thumb状态下的寄存器 2.4.4 Thumb指令集的类型 2.4.5 Thumb指令小结 第3章 STM32技术基础 3.1 STM32F103XX系统简介 3.1.1 STM32F103XX系列处理器芯片 3.1.2 STM32F103XX器件信息 3.2 STM32F103XX引脚信息 3.3 STM32F103XX的内部结构 3.3.1 STM32F103XX芯片总体结构 3.3.2 STM32F103XX片上Flash程序存储器 3.3.3 STM32F103XX片内静态RAM 3.4 STM32F103XX存储器映射 3.4.1 存储系统中的大/小端配置 3.4.2 系统存储器的映射 3.4.3 系统存储器的访问属性 3.4.4 系统存储器的地址重映射 3.4.5 系统存储中止的异常 3.5 STM32F103XX的系统控制模块 3.5.1 晶体振荡器 3.5.2 外部中断输入 3.5.3 系统的启动模式 3.5.4 系统锁相环PLL 3.5.5 系统休眠与低功耗 3.5.6 系统复位 3.5.7 系统时钟分频 3.5.8 系统掉电检测与控制 3.6 STM32F103XX向量中断控制器 3.6.1 中断的概念与类型 3.6.2 外部中断/事件控制器的特点与结构 3.6.3 EXTI的寄存器 3.6.4 中断的处理过程 提高篇 第4章 STM32F103XX程序设计 4.1 STM32F103XX处理器的汇编程序开发框架 4.1.1 ARM汇编语言中的代码程序段 4.1.2 ARM汇编语言中的数据程序段 4.1.3 ARM汇编语言中的宏定义 4.1.4 ARM汇编语言中的符号数据 4.2 STM32F103XX处理器的数据操作 4.2.1 C语言中的数据类型 4.2.2 C语言中数据的输入/输出格式 4.2.3 C语言中变量和常量 4.2.4 C语言中的整型数据 4.2.5 C语言中的实型数据 4.2.6 C语言中的字符型数据 4.2.7 C语言中的字符串常量 4.2.8 不同类型数据之间的混合运算 4.3 STM32F103XX处理器的数据运算 4.3.1 ARM程序代码中的算术运算符 4.3.2 算术运算符的优先级和结合性 4.3.3 数据类型的强制转换 4.3.4 自增与自减操作 4.3.5 赋值运算符和赋值表达式 4.3.6 逗号运算符 4.4 STM32F103XX的流程控制语句 4.4.1 ARM中的if条件判断语句 4.4.2 ARM中的switch分支选择语句 4.4.3 ARM中的循环控制语句 第5章 STM32F103XX功能模块(1) 5.1 ARM处理器的选型与功能模块 5.1.1 ARM处理器的性能参数 5.1.2 ARM处理器的外部接口 5.1.3 ARM处理器的芯片封装 5.1.4 STM32F103XX系列ARM处理器 5.2 GPIO接口模块 5.2.1 GPIO引脚特性 5.2.2 GPIO引脚描述 5.2.3 GPIO引脚函数库 5.2.4 GPIO的硬件电路 5.2.5 基础实验一:汽车安全带报警指示灯与蜂鸣器实验 5.3 ADC(模数转换)模块 5.3.1 ADC特性 5.3.2 ADC引脚的描述 5.3.3 ADC库函数 5.3.4 ADC硬件电路 5.3.5 基础实验二:汽车发动机水温测量系统实验 5.4 EXTI中断模块 5.4.1 外部中断/事件的分类 5.4.2 外部中断/事件的结构 5.4.3 外部中断/事件的执行顺序与嵌套 5.4.4 外部中断/事件的选择 5.4.5 外部中断/事件库函数 5.4.6 外部中断/事件硬件电路 5.4.7 基础实验三:汽车紧急制动实验 5.5 高级控制定时器TIM1 5.5.1 TIM1的结构特性 5.5.2 TIM1的功能 5.5.3 TIM1的控制寄存器 5.5.4 TIM1库函数的功能说明 5.5.5 基础实验四:PWM驱动汽车灯光照明实验 5.6 通用定时器TIMx 5.6.1 TIMx的结构特性 5.6.2 TIMx的功能 5.6.3 TIMx的控制寄存器 5.6.4 基础实验五:汽车轮胎压力检测实验 第6章 STM32F103XX功能模块 6.1 实时时钟模块 6.1.1 RTC实时时钟的功能特性 6.1.2 RTC实时时钟的结构 6.1.3 RTC寄存器的操作方式 6.1.4 RTC实时时钟的寄存器 6.1.5 RTC实时时钟的库函数 6.1.6 基础实验一:车载时钟与电子日历 6.2 看门狗WatchDog模块 6.2.1 STM32系列处理器中的看门狗 6.2.2 独立看门狗的功能特性 6.2.3 独立看门狗的寄存器 6.2.4 独立看门狗的库函数 6.2.5 窗口看门狗的功能特性 6.2.6 窗口看门狗的寄存器 6.2.7 窗口看门狗的库函数 6.2.8 基础实验二:基于秒中断的新能源汽车电池SOC值的检测实验 6.3 USART串口通信模块 6.3.1 USART的功能特性 6.3.2 USART的字符描述 6.3.3 USART的发送器 6.3.4 USART的接收器 6.3.5 USART的中断请求 6.3.6 USART的寄存器 6.3.7 USART的库函数 6.3.8 基础实验三:汽车轮速检测实验 6.4 CAN通信模块 6.4.1 CAN的功能结构 6.4.2 CAN的运行模式 6.4.3 CAN的功能描述 6.4.4 CAN的寄存器 6.4.5 CAN的库函数 6.4.6 基础实验四:基于CAN通信的车载电动机冷控实验 综合篇 第7章 STM32F103XX内部资源的C编程实例 7.1 基于STM32F103XX的车载温/湿度检测仪的设计 7.1.1 项目内容的概述 7.1.2 项目需求分析 7.2 系统硬件电路设计 7.2.1 系统电源设计 7.2.2 传感电路及运放电路的设计 7.2.3 DS18B20数字式温度传感器的电路设计 7.2.4 SHTXX数字式湿度传感器的电路设计 7.2.5 串口通信与BOOT启动电路的设计 7.2.6 人机交互界面 7.3 系统软件工程的设计 第8章 STM32F103XX外部接口的C编程实例 8.1 基于TFT触摸屏的汽车故障在线检测诊断教学平台设计 8.1.1 项目内容概述 8.1.2 项目需求分析 8.2 系统硬件电路设计 8.2.1 系统电源设计 8.2.2 系统逻辑控制电路设计 8.2.3 TFT LCD触摸屏电路设计 8.2.4 串口通信电路与JTAG电路 8.3 系统软件工程设计

编辑推荐

《ARM嵌入式开发实例:基于STM32的系统设计》以STM32F103XX芯片硬件资源环境和Keil Vision for ARM为依托,介绍了车载ARM嵌入式系统的设计方法,包括ARM芯片的体系结构、ARM指令系统、ARM内部资源、程序设计方法,以及各个功能模块的使用和综合应用系统的开发方法和实例。

章节摘录

版权页:   插图:   6.1 实时时钟模块 在STM32F103XX系列ARM处理器中,芯片集成了实时时钟RTC和相应的后备寄存器。实时时钟RTC和后备寄存器通过同一个电源开关供电,在系统电源VDD有效时开关选通VDD供电,否则电源开关会选通VBAT引脚进行供电。 需要说明的是,实时时钟RTC的后备寄存器由10个16位的寄存器组成,可以用于在系统关闭VDD供电时保存20字节的用户应用数据。一般情况下,实时时钟RTC和后备寄存器之中的数据不会被系统复位或电源复位而清除。同样,当处理器从待机模式被唤醒时,寄存器中的数据仍然不会被复位。 与定时器/计数器的基本工作原理类似,实时时钟RTC具有一组可以连续运行的计数器。甚至,用户还可以通过适当的软件方式获得日历时钟功能,包括闹钟中断和阶段性中断功能。 通常情况下,在STM32F103XX系列ARM处理器中,实时时钟RTC的驱动时钟建议使用的是32.768kHz的外部晶体振荡器。除此之外,用户还可以使用芯片内部低功耗RC振荡器或对高速外部时钟进行128分频。通常而言,采用32.768kHz的外部晶体振荡器作为实时时钟RTC的驱动时钟,可以得到较高的时钟准确度。采用内部RC振荡器或外部分频时钟则在时钟精度上有所缺失。由于内部低功耗RC振荡器的典型频率为40kHz,为了补偿时钟精度上的误差,用户需要通过输出一个512Hz的时钟信号对RTC实时时钟进行校准。 RTC实时时钟具有一个32位的可编程计数器,用户可以通过使用比较寄存器进行长时间的测量。在STM32F103XX系列ARM处理器中,芯片集成了一个20位的预分频器用于时基时钟。在默认情况下,用户使用32.768kHz的时钟信号进行驱动时,将产生一个1s长的时间基准。 6.1.1 RTC实时时钟的功能特性 在STM32F103XX系列ARM处理器中,实时时钟RTC是一个独立的定时器,且RTC模块具有一组可以连续计数的计数器。用户可以使用相应的软件配置,实现RTC的时钟日历功能。同样,用户也可以通过修改实时时钟计数器的数值,以重新设置系统当前的时间和日期。 RTC模块和时钟配置系统,即RCC_BDCR寄存器处于实时时钟的后备区域。在系统复位或芯片从待机模式唤醒后,RTC的基本参数设置和时间参数均保持不变。需要提醒用户注意的是,在系统发生复位操作后,系统对实时时钟RTC的后备寄存器和RTC的访问将被禁止。这样可以防止用户对后备区域(BKP)数据的意外写操作。用户需要通过以下操作实现对后备寄存器和RTC时钟的访问。


 ARM嵌入式开发实例下载



发布书评

 
 


精彩短评 (总计3条)

  •     不打算看这书了,擦,学校叫订的教材,老师却压根不用,期末考试还说明不要看这本书了。白费了我五十块大洋,学校那些指定教材的XX领导们,你们收了作者多少好处啊!!!
  •     此书大部分抄李宁的基于MDK的stm32应用内容。自己关于汽车电子控制内容却一带而过。作者太不负责任了!
  •     这是一本非常一般的书,如果它能买到40的话那么固件库就能买到20
 

农业基础科学,时尚,美术/书法,绘画,软件工程/开发项目管理,研究生/本专科,爱情/情感,动漫学堂PDF下载,。 PDF下载网 

PDF下载网 @ 2024