🚗 CAN Bootloader 刷写实战
30章
· 从入门到项目
01
CAN Bootloader概述
Bootloader定义
OTA概念
刷写基础
什么是Bootloader
开始 →
02
CAN总线基础回顾
CAN 2.0帧
ID仲裁
网络拓扑
帧结构
开始 →
03
刷写协议标准
UDS on CAN
ISO 14229-1
15765-2
传输层
开始 →
04
Bootloader架构设计
分区规划
启动流程
跳转逻辑
Boot/App/备份
开始 →
05
刷写会话管理
默认会话
扩展会话
编程会话
安全切换
开始 →
06
安全访问机制
Seed & Key
安全等级
防刷写
算法原理
开始 →
07
诊断服务基础
10服务
27服务
22服务
会话控制
开始 →
08
刷写核心服务
34服务
36服务
37服务
请求下载
开始 →
09
数据传输机制
多帧传输
流控制帧
块大小
FF/CF/FC
开始 →
10
内存擦除与编程
31服务
34/36编程
校验确认
例程控制
开始 →
11
刷写文件格式
S19记录
HEX格式
Bin转换
解析工具
开始 →
12
刷写流程实战
预编程
编程
后编程
三阶段
开始 →
13
预编程阶段
检查条件
禁用DTC
保持通信
刷写准备
开始 →
14
编程阶段 (上)
身份验证
擦除内存
写入App
核心写入
开始 →
15
编程阶段 (下)
写入Bootloader
校验完整性
复位
完整性检查
开始 →
16
后编程阶段
启用DTC
清除故障码
确认App
恢复运行
开始 →
17
错误处理与容错
超时处理
重传机制
中断恢复
容错策略
开始 →
18
CRC校验与完整性
CRC32原理
刷写应用
校验失败
数据完整
开始 →
19
多节点刷写
网络唤醒
并行刷写
地址管理
节点策略
开始 →
20
刷写工具链
CANape/CANoe
PC工具开发
配置思路
开始 →
21
Bootloader开发环境
MCU选型
编译器
链接脚本
环境搭建
开始 →
22
Bootloader启动代码
汇编启动
中断向量表
堆栈初始化
底层启动
开始 →
23
CAN驱动移植
控制器初始化
中断接收
发送缓冲
驱动适配
开始 →
24
Flash驱动开发
擦除/写入API
扇区管理
磨损均衡
底层驱动
开始 →
25
状态机实现
IDLE→WAIT
PROGRAM→VERIFY
COMPLETE
刷写状态机
开始 →
26
App与Bootloader交互
版本上报
刷写请求
跳转条件
交互协议
开始 →
27
测试与验证
单元测试
集成测试
压力/异常
质量保障
开始 →
28
刷写性能优化
波特率
块大小
流水线刷写
提速技巧
开始 →
29
功能安全考虑
ECC保护
看门狗
安全状态
安全机制
开始 →
30
实战项目
从零搭建
CAN Bootloader
源码框架
完整系统
开始 →