STM32外设驱动开发完全手册
📚 共计 30 章节
01
STM32开发环境搭建
Keil MDK安装与破解 · STM32CubeMX安装 · ST-Link驱动 · 第一个LED工程
环境
入门
LED
02
GPIO基础与寄存器映射
GPIO工作模式 · 寄存器结构体映射 · 位带操作 · 寄存器点亮LED
寄存器
位带
GPIO
03
HAL库GPIO驱动开发
HAL_GPIO_Init · WritePin/ReadPin · 按键消抖 · 按键控制LED
HAL
按键
中断
04
系统时钟配置
时钟树详解 · HSE/LSE/HSI/LSI · CubeMX配置 · HAL_RCC_GetSysClockFreq
时钟
CubeMX
RCC
05
中断系统与NVIC
NVIC优先级分组 · 中断向量表 · EXTI配置 · HAL_GPIO_EXTI_Callback
NVIC
EXTI
中断
06
定时器基础
定时器分类 · 时基单元 · 定时器中断 · HAL_TIM_Base_Start_IT 精确延时
定时器
中断
延时
07
PWM输出
PWM原理 · 占空比/频率 · 定时器PWM · HAL_TIM_PWM_Start · 呼吸灯
PWM
呼吸灯
输出
08
输入捕获
输入捕获原理 · 脉冲宽度测量 · HAL_TIM_IC_Start_IT · 超声波测距
捕获
超声波
测量
09
编码器接口
正交编码器 · 编码器模式 · 位置/速度读取 · 电机测速实战
编码器
电机
测速
10
UART串口通信
UART协议 · 异步帧格式 · HAL_UART_Transmit/Receive · printf重定向
UART
串口
printf
11
串口中断与DMA
UART中断接收 · 环形缓冲区 · HAL_UART_Receive_DMA · 空闲中断不定长
DMA
环形缓冲
中断
12
I2C通信
I2C时序 · 主从模式 · HAL_I2C_Master_Transmit/Receive · AT24C02 EEPROM
I2C
EEPROM
AT24C02
13
SPI通信
SPI四种模式 · 全双工 · HAL_SPI_TransmitReceive · W25Q64 Flash
SPI
Flash
W25Q64
14
ADC采集
ADC特性 · 单次/连续/扫描 · HAL_ADC_Start · 内部温度传感器
ADC
温度
采集
15
DAC输出
DAC原理 · HAL_DAC_SetValue · 正弦波/三角波 · DMA波形传输
DAC
波形
DMA
16
DMA控制器
传输模式 · 通道映射 · HAL_DMA_Start_IT · 内存拷贝加速
DMA
内存
加速
17
RTC实时时钟
时钟源选择 · HAL_RTC_SetTime/GetTime · 闹钟中断 · 备份寄存器BKP
RTC
闹钟
BKP
18
独立看门狗IWDG
IWDG原理 · 预分频/重装载 · HAL_IWDG_Refresh · 防止程序跑飞
IWDG
看门狗
可靠性
19
窗口看门狗WWDG
WWDG与IWDG区别 · 窗口上下限 · HAL_WWDG_Refresh · 早期唤醒中断
WWDG
窗口
中断
20
Flash操作与IAP
Flash结构 · HAL_FLASH_Program/Erase · 读写保护 · IAP升级Bootloader
Flash
IAP
Bootloader
21
SDIO与FatFS
SD卡协议 · SDIO四线 · HAL_SD_Init/ReadBlocks · FatFS移植 · 文件读写
SDIO
FatFS
文件系统
22
USB虚拟串口
USB CDC类 · HAL_PCD_Init · 设备枚举 · 虚拟串口收发
USB
CDC
虚拟串口
23
CAN总线通信
CAN帧格式 · 过滤器配置 · HAL_CAN_AddTxMessage/GetRxMessage · 调试技巧
CAN
总线
过滤器
24
FreeRTOS移植
任务创建/删除 · 优先级调度 · HAL库结合 · 临界区与互斥量
FreeRTOS
任务
互斥
25
FreeRTOS队列与信号量
队列创建/收发 · 二值/计数信号量 · 任务同步 · 生产者消费者
队列
信号量
同步
26
低功耗模式
睡眠/停止/待机 · WFI/WFE · RTC唤醒 · LPUART低功耗串口
低功耗
LPUART
唤醒
27
DCMI摄像头接口
DCMI时序 · OV2640配置 · HAL_DCMI_Start_DMA · JPEG采集
DCMI
摄像头
OV2640
28
FSMC与LCD驱动
FSMC地址映射 · 8080并口 · HAL_SRAM_Init · ILI9341驱动 · 显示图片文字
FSMC
LCD
ILI9341
29
触摸屏驱动
电阻触摸原理 · XPT2046 SPI读取 · 触摸校准 · 手势识别基础
触摸
XPT2046
校准
30
综合项目实战
智能小车/数据采集器/示波器 · GPIO/定时器/ADC/UART/DMA · 系统架构
实战
综合
项目