欢迎光临
我们一直在努力

【CANdelaStudio-从入门到深入到实战】31 诊断刷写(一):0x34请求下载——如何优雅地“敲门”让ECU开门收数据

开篇故事:一次“门都没敲开”的刷写灾难

去年冬天,我帮一个客户调试OTA刷写流程。他们的测试车在产线上刷写Bootloader时,总是卡在“请求下载”这一步——ECU返回0x7F 0x34 0x78(请求正确接收-待处理),然后就没下文了。

工程师们反复检查Seed&Key算法,确认密钥没错;检查会话切换,也切到了扩展会话。

最后发现,问题出在0x34服务的内存地址参数上——他们填的起始地址是0x08000000(STM32的Flash起始地址),但ECU的刷写驱动只接受0x08020000之后的地址。ECU收到地址后,默默地把请求挂起,直到超时也没处理。

你看,0x34服务不是“告诉ECU我要写数据”那么简单,它是整个刷写流程的“敲门砖”——敲对了门开,敲错了门直接锁死。

今天我们就来拆解这块砖该怎么烧。

痛点拆解:90%的人把0x34当“声明”用,其实它是“谈判”

常见错误实现

很多人写刷写工具时,以为0x34就是“我要写数据了,准备接收”,然后随便填个地址和长度就发出去。比如:

# 错误示例:把0x34当“打招呼”
def request_download_wr

赞(0)
未经允许不得转载:171主机测评 » 【CANdelaStudio-从入门到深入到实战】31 诊断刷写(一):0x34请求下载——如何优雅地“敲门”让ECU开门收数据
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址