📘 STM32F4 · FreeRTOS & MCAL 联合调试

🎯 30章 实战目录
01课程导论
为什么需要联合调试?FreeRTOS与MCAL协同模式,课程目标与前置知识。
02开发环境搭建
Keil MDK & STM32CubeMX配置,GCC工具链与J-Link/ST-Link驱动安装。
03STM32F4 HAL库基础
GPIO、UART、定时器基础配置与中断处理。
04MCAL架构入门
AUTOSAR MCAL分层结构,Microcontroller Abstraction Layer核心模块。
05MCAL GPIO驱动
Port与Dio模块配置与API调用,结合HAL库实现LED控制。
06MCAL UART驱动
Lin与Uart模块配置,实现串口打印与数据收发。
07MCAL SPI/I2C驱动
Spi与Iic模块配置,驱动外部传感器(如MPU6050)。
08MCAL ADC驱动
Adc模块配置,实现多通道模拟量采集。
09MCAL PWM与定时器
Pwm与Icu模块配置,生成精确PWM波形。
10FreeRTOS内核移植
在STM32F4上移植FreeRTOS,配置系统时钟与中断优先级。
11FreeRTOS任务管理
任务创建、删除、挂起与恢复,优先级与调度策略。
12队列与信号量
队列、二值信号量、计数信号量使用场景与API。
13互斥量与事件组
互斥量解决优先级反转,事件组实现多任务同步。
14软件定时器
软件定时器创建、启动与回调函数编写。
15FreeRTOS内存管理
heap_1~heap_5选择,动态内存分配与碎片问题。
16MCAL与FreeRTOS集成
MCAL中断与FreeRTOS嵌套中断管理,临界区保护。
17联合调试基础
使用J-Link RTT与SEGGER SystemView实时追踪。
18调试工具链
Keil Debugger、Ozone、STM32CubeMonitor配置与使用。
19任务栈溢出检测
FreeRTOS栈溢出钩子函数,MCAL驱动栈使用分析。
20中断延迟分析
测量MCAL中断响应时间,优化FreeRTOS中断嵌套策略。
21资源竞争与死锁
FreeRTOS追踪器定位死锁,MCAL资源互斥访问设计。
22低功耗调试
MCAL EcuM与Wdg模块,FreeRTOS Tickless模式联合调试。
23多核调试(可选)
STM32F4双核架构下MCAL与FreeRTOS协同调试。
24Bootloader联合调试
MCAL Flash驱动与FreeRTOS任务结合的Bootloader设计。
25CAN通信调试
MCAL Can模块配置,FreeRTOS任务中实现CAN报文收发。
26文件系统集成
MCAL存储驱动(Fee/Nvm)与FreeRTOS任务结合,数据记录。
27性能优化
使用MCAL DMA模块,减少FreeRTOS任务切换开销。
28故障注入测试
模拟MCAL驱动错误,验证FreeRTOS错误处理机制。
29实战项目
基于MCAL与FreeRTOS的智能传感器节点(数据采集+无线传输)。
30课程总结与进阶
常见问题FAQ,AUTOSAR CP与AP演进,学习资源推荐。