顾名思义,就是驻留在ECU非易失性存储器中的一段程序加载代码,每次ECU复位后,都会运行bootloader。它会检查是否有来自通信总线的远程程序加载请求,如果有,则进入bootloader模式,建立与程序下载端(通常为PC上位机)的总线通信并接收通信总线下载的应用程序、解析其地址和数据代码,运行NVM(None Valitale Momory–非易失性存储器)驱动程序,将其编程到NVM中,并校验其完整性,从而完成应用程序更新。如果没有来自通信总线的远程程序加载请求,则直接跳转到应用程序复位入口函数。
10 03 在扩展会话下通过功能寻址来发给所有ECU
31 01 xx xx ,重编程条件检查,比如车速、电压、挡位是否在p档
85 02 禁DTC
28 03 03 禁止非诊断报文的发送和接收(85和28服务顺序不能反,不然报DTC丢失了)
22读数据 ECU相关信息 软硬件版本号,bootloader版本号
10 02 外部请求刷新标志位
27 安全访问
34 36 37服务 请求下载,传输数据,请求传输退出
31 01 +FF01 检查刷新完整性 CRC32
全部通过物理寻址操作
28 80 03 恢复ECU NM报文和APP报文收发
11 01 硬复位
10 03 扩展会话
14 FF FF FF清故障码
85 服务使能DTC
Boot自刷新:https://blog.csdn.net/weixin_40137252/article/details/111054011
CB Customer boot
SB start boot
P-flash:
program flash 主flash 存放代码
D-flash EEPROM备份以及Dataflash
刷写时外置EEP(按字节)不会被擦除,flash需要擦除(按sector)才能写入。
Flash驱动(flash内存擦除和写入)
Flash数据下载:寻址、擦除、编程条件检查
memlay 分配flash的空间
Bootctrl
EcuSecu 安全启动
Secureboot:通过逐级验证启动镜像,实现固件可信加载的技术
https://zhuanlan.zhihu.com/p/536007837
IFX&JDP 芯片对安全启动Secureboot的支持方式
uboot:启动操作系统内核
CB 架构