第1章 绪论
1.1 概述
1.2 典型STM32处理器简介
1.3 STM32系列MCu的优点
1.4 STM32应用领域
1.5 STM32学习方法
习题与思考题
第2章 STM32内核架构
2.1 概述
2.2 内部功能结构
2.2.1 总体结构及功能模块概述
2.2.2 总线结构
2.2.3 流水线
2.3 寄存器组及CPU运行模式
2.3.1 寄存器组
2.3.2 CPU运行模式
2.4 存储器和存储空间
2.4.1 存储空间映射
2.4.2 存储器的各种访问属性
2.4.3 位带技术
2.5 独特的Thumb一2指令集
2.5.1 指令集开发
2.5.2 Thumb一2指令集体系结构
2.6 中断和异常
2.6.1 NVIC概览
2.6.2 中断的进入与退出
2.6.3 中断嵌套
2.6.4 尾链技术
2.6.5 晚到异常
2.7 调试支持
习题与思考题
第3章 STM32硬件基础
3.1 概述
3.2 STM32芯片的引脚选型和配置
3.2.1 STM32芯片的命名规则和选型
3.2.2 STM32芯片的引脚配置
3.3 STM32最小应用系统设计
3.3.1 电源电路设计
3.3.2 复位电路设计
3.3.3 时钟电路设计
3.3.4 JTAG接口电路设计
3.3.5 外部存储器扩展
3.4 外设板硬件资源设计
3.4.1 串行通信接口
3.4.2 串行外设接口
3.4.3 LJSB接口
3.4.4 CAN总线控制器接口
3.4.5 键盘接口电路
3.4.6 数码管显示电路
3.4.7 L,CI)及其接口电路
3.4.8 步进电机
3.4.9 SD卡接口
3.4.10 其他外设资源
习题与思考题
第4章 软件开发基础
4.1 概述
4.2 集成开发环境及其应用
4.2.1 开发工具简介
4.2.2 固件库简介
4.2.3 Keil MDK的安装
4.2.4 J—LINK驱动安装
4.3 sTM32应用程序开发调试实例
4.3.1 STM32工程建立
4.3.2 LED闪烁代码编写及分析
4.3.3 配置J—LINK硬件调试
4.3.4 STM32程序下载
习题与思考题
第5章 库函数及应用
5.1 概述
5.2 库函数简介
5.3 库函数应用实例
5.4 深入剖析LED闪烁例程
5.4.1 LED闪烁例程说明
5.4.2 LED闪烁例程分析与实验
5.4.3 程序分析
习题与思考题
第6章 基本模块及其应用开发
6.1 概述
6.2 通用数字输入/输出模块
6.2.1 GPIO模块结构与工作原理
6.2.2 GPIO模块寄存器说明
6.2.3 实验部分
6.3 NVIC与中断控制
6.3.1 STM32中断优先级
6.3.2 中断的使能与除能
6.3.3 中断的挂起与清除
6.3.4 中断建立全过程的演示
6.3.5 实验部分
6.4 显示与键盘模块
6.4.1 数码管显示
6.4.2 LCD显示与键盘模块
6.5 ADC模块
6.5.1 ADC模块结构及其工作原理
6.5.2 ADC模块寄存器
6.5.3 实验部分
6.6 DMA控制器模块
6.6.1 DMA模块结构及其工作原理
6.6.2 DMA模块寄存器
6.6.3 实验部分
习题与思考题
第7章 时间模块及其应用开发
7.1 概述
7.2 SysTick定时器
7.2.1 SysTick时钟源结构图
7.2.2 SysTick定时器工作分析
7.2.3 SysTick控制寄存器
7.2.4 实验部分
7.3 RTC实时时钟
7.3.1 RTC模块结构
7.3.2 UNIx时间戳
7.3.3 实验部分
7.4 通用定时器模块
7.4.1 定时器模块结构与工作原理
7.4.2 定时器寄存器
7.4.3 实验部分
7.5 定时器脉冲宽度调制
7.5.1 定时器脉冲宽度调制输出工作原理
7.5.2 定时器寄存器
7.5.3 实验部分
7.6 高级定时器
7.6.1 高级定时器死区原理
7.6.2 刹车和死区寄存器(TIMx BDTR)
7.6.3 实验部分
习题与思考题
第8章 通信外设模块及其应用开发
8.1 概述
8.2 USART通信模块
8.2.1 串行通信模块的结构与工作原理
8.2.2 串行通信模块的寄存器
8.2.3 实验部分
8.3 SPI通信模块
8.3.1 SPI模块的结构与工作原理
8.3.2 SPI模块的寄存器
8.3.3 实验部分
8.4 12C通信模块
8.4.1 STM32的12C模块简介
8.4.2 12C协议简介
8.4.3 12C模块的寄存器
8.4.4 实验部分
8.5 局域网控制器
8.5.1 CAN协议简介
8.5.2 STM32的CAN特性及架构
8.5.3 实验部分
8.6 可变静态存储控制器
8.6.1 FSMC模块的结构与工作原理
8.6.2 FSMC的寄存器
8.6.3 实验部分
习题与思考题
第9章 ARM在自平衡小车中的应用
9.1 两轮自平衡小车控制系统
9.1.1 控制原理
9.1.2 控制系统组成结构
9.2 两轮自平衡小车控制系统硬件设计
9.2.1 控制系统硬件结构
9.2.2 控制系统硬件原理
9.2.3 引脚配置说明
9.3 两轮自平衡小车控制系统软件设计
9.3.1 软件总体设计
9.3.2