什么是车规级
AUTOSAR标准简介
功能安全ISO 26262基础
开发环境全景图
Linux发行版选择 (Ubuntu 20.04/22.04)
虚拟机与双系统抉择
基础开发工具链 (gcc/gdb/make/cmake)
ARM GCC安装与配置
环境变量设置
测试交叉编译Hello World
J-Link / ULINK / Lauterbach Trace32
驱动安装与固件更新
连接目标板验证
Eclipse + CDT配置
VS Code + Cortex-Debug
IAR EW / Keil MDK对比
Git基础操作
GitLab/GitHub工作流
代码审查流程 / .gitignore规范
CMake基础语法
ARM交叉编译Toolchain文件
Makefile编写实战
复位向量
启动文件(startup.s)分析
堆栈初始化 / 跳转到main()
内存布局定义
段(text/data/bss)分配
链接脚本编写与调试
寄存器映射
GPIO初始化与控制
位带操作技巧 / 逻辑分析仪验证
轮询模式与中断模式
波特率配置 / 环形缓冲区
串口调试工具使用
SysTick定时器
通用定时器配置 / PWM输出
占空比调节 / 示波器测量
ADC初始化
单次/连续转换 / DMA传输
数据滤波算法
SPI协议时序
主从模式配置
Flash/传感器驱动 / 逻辑分析仪抓包
I2C协议时序
7位/10位地址 / EEPROM读写
总线仲裁与时钟拉伸
CAN协议帧格式
CAN控制器初始化 / 报文收发
CAN分析仪使用
CAN FD新特性
TTCAN时间触发通信
兼容性设计
DMA传输模式
内存到外设/内存到内存
DMA中断与完成回调
NVIC配置 / 中断优先级分组
中断嵌套与抢占
中断延迟优化
FreeRTOS移植
任务创建与调度
临界区与同步 / 内存管理
信号量/队列驱动设计
中断与任务通信
驱动分层架构
独立看门狗(IWDG)
窗口看门狗(WWDG)
安全复位处理 / 故障注入测试
睡眠/停止/待机模式
唤醒源配置 / 功耗测量优化
RTOS Tickless模式
双区启动设计
固件校验(CRC/SHA)
固件升级流程 / 回滚机制
JTAG/SWD调试原理
断点与Watchpoint / Trace与ETM
RTT日志输出
代码执行时间测量 (DWT计数器)
Profiling工具 / 栈使用分析
Cache优化
Unity/CMock测试框架
模拟硬件依赖
持续集成中的自动化测试
ISO 26262 ASIL等级
安全机制 (ECC/CRC/双核锁步)
故障覆盖率分析
MCAL架构 / EB Tresos工具
CAN/SPI MCAL模块配置
RTE生成
从零搭建车规级驱动工程
集成所有外设驱动
功能安全验证 / 最终调试与交付