前言
第1章 STM32基本原理
1.1 STM32性能和结构
1.1.1 总体性能
1.1.2 系统结构分析
1.1.3 芯片封装和引脚概述
1.2 Cortex M3处理器
1.2.1 Cortex M3的定位和应用
1.2.2 Cortex M3处理器结构
1.2.3 Cortex M3寄存器
1.2.4 堆栈
1.3 STM32储存地址映射
1.4 引脚功能描述
1.5 电源连接
1.6 复位和时钟控制(RCC)
1.6.1 复位
1.6.2 时钟源
1.6.3 时钟管理寄存器
1.7 输入/输出端口
1.7.1 常规输入/输出GPIO
1.7.2 GPIO复用
1.8 模数转换器和数模转换器
1.8.1 模数转换器
1.8.2 数模转换器
1.9 中断
1.9.1 STM32的中断通道和中断向量处理
1.9.2 STM32的外部中断
1.9.3 STM32的中断优先级分组
1.10 DMA
1.10.1 DMA解析
1.10.2 DMA通道和请求
1.11 定时器
1.11.1 系统滴答定时器(SysTick)
1.11.2 STM32常规定时器
1.12 同步串行口SPI和I2C
1.12.1 SPI
1.12.2 I2C
1.13 同步异步收发器
1.14 灵活的FSMC
1.14.1 FSMC概述
1.14.2 FSMC控制液晶控制器
习题
第2章 硬件设计
2.1 STM32主板设计
2.1.1 MCU及其周围电路设计
2.1.2 USB转串口电路设计
2.1.3 TTL转RS232电路设计
2.1.4 网络端口电路
2.1.5 SPIFLASH端口电路
2.1.6 I2C端口电路
2.1.7 TF卡端口电路
2.1.8 按键、LED显示电路和其他端口
2.2 液晶屏与触摸屏控制板设计
2.2.1 带触摸TFT液晶屏
2.2.2 TFTLCD屏的时序
2.2.3 触摸屏
2.2.4 TFTLCD的背光LED
2.2.5 TFTLCD控制器RA
2.2.6 TFT液晶控制板具体设计
习题
第3章 STM32软件开发
3.1 STM32软件开发环境
3.1.1 MDKKeil开发环境
3.1.2 串口编程软件ISP
3.1.3 JLINK
3.2 使用固件库开发我的第一个工程
3.2.1 获得和理解固件库
3.2.2 我的第一个工程
3.3 操作GPIO和管理中断
3.3.1 GPIO寄存器
3.3.2 GPIO库函数
3.3.3 嵌套向量中断控制器NVIC库函数
3.3.4 外部中断/事件管理库函数
3.3.5 带按键控制的流水灯实验
3.4 串口通信和DMA编程
3.4.1 串行异步通信USART库函数
3.4.2 一个串口发送和中断接收例程的实现
3.4.3 DMA库函数
3.4.4 使用DMA和双缓冲乒乓操作实现串口接收、发送
3.5 SPI与I2C编程
3.5.1 SPI库函数
3.5.2 SPIFLASH原理
3.5.3 SPIFLASH编程实验
3.5.4 TF卡编程
3.5.5 I2C编程及实例
3.6 液晶屏及触摸屏编程
3.6.1 FSMC端口配置和简单图形显示
3.6.2 触摸屏编程
3.6.3 汉字输出
3.6.4 图片显示和操作
3.7 定时器编程
3.7.1 SysTick编程实验
3.7.2 定时器库函数
3.7.3 定时器编程实验
3.8 DAC和ADC编程
3.8.1 DAC库函数
3.8.2 DAC编程
3.8.3 ADC库函数
3.8.4 DMA方式ADC采集实验
3.9 网络编程
3.9.1 网络端口芯片ENC28J60驱动
3.9.2 uIP编程
3.9.3 使用uIP实现Ping响应
3.9.4 AD采集和网络UDP传输
3.9.5 TCP接收和发送实验
习题
第4章 工程项目实例
4.1 需求分析
4.1.1 需求
4.1.2 分析
4.2 工程设计
4.2.1 整体设计
4.2.2 从机硬件端口设计
4.2.3 从机软件设计
4.3 软件开发
4.3.1 宏和变量定义
4.3.2 主程序编程
设计题
附录
附录A 亮点STM32开发板资源
附录B 实验教学安排
^ 收 起