#1:34服务 #2:dataFormatIdentifier,一般使用默认值00;高四位表示Compression Method,第四位表示Encryping Method;一般都未使用,使用默认值 #3:addressAndLengthFormatIdentifier,高四位代表memory Address长度;第四位表示memorySize的长度。 #4:memoryAddress,开始刷写(下载)的起始位置地址 #5:memorySize,从开始刷写到...
Q:图中的烧写顺序是34-36-34-36-34-36-37,但另一些材料中的顺序是34-36-36-36-37。 A:这个问题这样理解,34-36-36-36-37的前提是你要下载的数据是连续的数据,每个36所使用的地址信息,都是34中包含的地址信息再加上一定的偏移量。如果需要下载不连续的数据,就需要重新进行34服务或31(擦除)-34服务。
UDS刷写流程包括三部分,预编程阶段、主编程阶段、后编程阶段,如下图所示,其中,白色框步骤为功能寻址,蓝色框步骤为物理寻址。各家主机厂OEM会根据实际情况对方案进行微调。其中Client为升级客户端,往往由诊断仪或FOTA master担任。Server指的是升级控制器端。 一、1)预编程阶段 此阶段是刷写前的网络准备工作,主要内...
0x13 :36服务传输字节大于maxNumberOfBlockLength时0x22 :当目标ECU正在接受数据,发送S34服务请求,ECU应该响应CNC(0x22)0x31 :请求参数中,参数不对0x33 :没有进入指定的安全会话0x70: 没事先擦除内存会报这个NRC TransferData (0x36) service 刷写过程,即Tester向ECU中下载数据的过程叫downloadTeser向ECU...
刷写设备使用 36 传输数据服务向 ECU 内存区域中传输刷写的数据,一个数据块通常需要多条传输数据服务传输。 36 数据块顺序计数器 数据 2.8 请求传输退出 (37) 37 服务退出当前连续内存区域的刷写,将在肯定响应中携带校验和,校验最近的一条请求下载请求服务指定的内存区域。
5.下载flash驱动程序,34 36 37服务。因为bootloader里是不带驱动程序的,防止意外操作导致flash改变,程序出现异常,所以只在刷写的时候才允许操作flash。下载完成后一般还需要例程控制31服务进行完整性检查(CRC32校验)和依赖性检查(ecu指定,DID为FF01-14229-1规定)(该步骤暂时不做) ...
下图是数据下载的简略过程,用到了 34,36,37 这三个服务,如果是上传的话,34 服务被 35 服务替换,数据传输方向变一下,就可以了。 Tester 向 ECU 刷写数据的大概过程 RequestDownload (0x34) ): : 0x34 服务用于启动下载传输,作用是告知 ECU 准备接受数据,ECU 则通过 0x74 response 告诉诊断仪自己是否允许传...
OTA功能的其中一环就需要使用UDS服务进行软件刷写,同样地,也使用到了10服务,27服务,31服务,34服务...
绝大多数情况下应用在刷写ECU的过程中,即在预编程条件下执行28服务功能寻址便可以抑制总线应用报文与...
1、 基于UDS协议的汽车控制器刷写软件设计 唐恒飞 王效金摘要:基于某整车厂提供的控制器和刷写程序(hex文件),利用实验室研发的汽车诊断仪,设计了一款上位机刷写软件。该软件是利用C#语言中的WinForm界面和基于CAN总线的UDS协议进行编写,并且遵循软件设计V型开发流程,主要内容是刷写方案的设计,以及研究上位机软件与...