ECU刷写,两组CAN线,一组诊断,一组刷写,怎么跳线?

2022-11-04 04:53发布

ECU上电后,先进入bootLoader确定application程序是否有问题,如果没有问题则跳转至application,如果application出现问题

ECU上电后,先进入bootLoader确定application程序是否有问题,如果没有问题则跳转至application,如果application出现问题
4条回答
2022-11-04 05:54
ECU上电后,先进入bootLoader确定application程序是否有问题,如果没有问题则跳转至application,如果application出现问题,程序会停留在bootloader中,等待刷写命令。软件刷写主要分为三部分:

1、pre-programming step

2、programming step

3、post-programming step

pre-programming step
从名字可以看出,该步骤主要是下载程序前的一些操作,包括唤醒ECU、读取特定的DID、通信管理等,详细的操作见图1。

图1 pre-programming step
其中:

1、唤醒ECU,唤醒的方法和策略由汽车制造商制定;

2、为了关闭DTC存储和运行0x28服务关闭相关的通信,需运行0x10服务跳转至extendedDiagnosticSession,

3、进入extendedDiagnosticSession后,汽车制造商可以进一步进行特定数据链路的初始化;

4、运行0x31服务对刷写条件进行检查,例如低压电是否在正常范围内;

5、为了防止刷写过程中出现异常误触发DTC存储,运行0x85服务关闭DTC的存储;

6、该步骤提供给汽车制造商一个接口,可以通过0x31服务启动或关闭ECU的故障安全响应(failsafe reaction);

7、为了提高刷写速度,降低刷写程序时总线负载率,通过运行0x28服务关闭无关报文,比如应用报文和网络管理报文;

8、在关闭部分通信之后,通过0x22服务读取被刷ECU的状态(应用软件和数据)、软件指纹信息等;

9、为了减少刷写的时间,可以通过0x87服务提高CAN总线的波特率。

programming step
该步骤用于将软件或者数据下载到被刷ECU中,主要包括进入特定的安全等级、写入指纹信息、下载软件和数据等,如图2所示。

图2 programming step
其中:

1、运行0x10服务进入programmingSession;

2、运行0x27服务进入特定的安全等级;

3、运行0x2E服务将指纹信息写入ECU;

4、运行0x34、0x36、0x37服务将永久存储区写入默认值;

5、运行0x31服务检查步骤4是否成功,另外一种方法是通过0x37的响应确定是否成功;

6、运行0x31服务对特定的Flash进行擦除;

7、分别运行0x34、0x36、0x37服务将Flash driver下载至内存中;

8、运行0x31服务检查Flash driver下载是否成功;

9、分别运行0x34、0x36、0x37服务将软件和数据下载至ECU的flash中;

10、运行0x31服务检查步骤9是否下载成功;

11、运行0x31服务验证程序是否能正常运行,例如checksum、标志位等;

12、在下载完软件和数据后,汽车制造产商需要一些特定的操作,比如写入VIN码等。

post-programming step
该步骤主要通过0x11服务对ECU进行复位或者通过0x10服务将session切换至defaultSession,如图3所示,如果在pre-programming step中调整了波特率,须通过特定的操作将波特率调整至正常值。通常操作是运行0x11服务使ECU复位,回到正常状态。

图3 post-programming step
该刷写流程是14229标准中提到的,不同的OEM有不同的标准,但是主体的步骤与14229应该还是相同的。

随着进入国四、国五,以及国六的到来,车上的通讯线也随之改变,从之前的K,单组can线,到现在的2组、3组、更甚至4组can以上。通讯线的增多给我们修车诊断带来了很大的挑战与不便,修个车资料针脚图都得查半天,每天在后台咨询怎么跳线,找针脚图的师傅更是数不胜数。今天,就带给大家一个神操作,测神A70站长版诊断仪扫描诊断功能,再也不用为跳线发愁!

首先,我们先了解一下ECU有哪些通讯协议,为什么会无法通讯,电脑板上电异常?

01什么是标准的OBD针脚定义

02通讯协议种类

1

KWP2000协议:K线通讯

1.判断标准:一根信号线,该信号线电压一般为车身电压的80%,低于车身电压1V左右,比如车身电压为24,此信号线电压约为23V左右。

2.应用举例:博世系统国三系列;德尔福系统;部分日本电装系统;摩托罗拉系统等。

3.诊断接头配线方式:电源、地线、信号线,请注意信号与电源的区别。

2

标准J1939协议:CAN.BUS通讯

1.判断标准:CAN.bus通讯采用两条线:CAN-H 高端和 CAN-L低端。

CAN-H 高端:电压高于2.5V(一般为2.6V)

CAN-L 低端:电压低于2.5V(一般为2.4V)

电阻:关闭钥匙量取信号线(CAN_H与CAN_L)之间电阻为120欧姆,若车辆上有其他Can网络则可能为60欧姆;检测前请确保信号线能正常通信。

2.应用实例:康明斯全系列都是CAN.BUS通讯;南岳单体泵系列基本都是;玉柴德尔福单体泵系列;部分日本电装系统等。

3

RS232协议:RS232协议通讯

1.判断标准:采用两条线通讯

RS232-RD接收端:该线电压为-9V至-5V之间,注意红表线笔接信号线,黑表笔打铁。

RS232-TD发射端:该线电压为0.1V,基本和地线电压一样,所以注意和地线的区分,在诊断座上面这两根线是靠在一起的。

2.应用举例:成都威特系统全系列(注意:玉柴自主研发威特单体泵系统使用CAN通讯);潍柴OH1天然气系统;部分工程机械车用这种通讯。

4

485协议:J1708协议

1.判断标准:采用两条线通讯

J1708-A发射端:该线电压为4.8V

J1708-B接收端:该线电压为0.1V,注意与地线的区分。

2.应用举例:潍柴OH2天然气发动机

5

K线L线协议:KL通讯

1.判断标准:K线电压为4.8V左右,L线电压为4.3左右。

2.应用举例:玉柴ECI天然气系列发动机

03ECU上电和跳线

了解OBD针脚定义和通讯协议,我们就以EDC17C55为例解读下ECU上电和跳线:

1、 EDC17C55上电受主继电器控制,在钥匙开关不动的情况下(即钥匙开关在LOCK档位),红 {MOD}的线表示有12V电压,其中50号线的12V电压是从继电器85(86)端过来的;

2、 钥匙开关打到“ON”档位时,T15线路接通,71号针脚接收到电源过来的12V电压,告诉电脑版我需要上电了;

3、 当ECU检测到71号针脚有12V电压时,它接收到上电信号,就会控制50号针脚拉低信号(相当于内部搭铁),主继电器的控制电路接通;

4、 主继电器的控制电路接通后,主继电器吸合,ECU的供电电路接通,ECU上电完成。

从上述可以了解到,71号针脚的12V电压就是为了拉低50号针脚信号电压,拉低50号针脚电压就是就是为了吸合主继电器,给4号和6号针脚供电。那么我直接给4号和6号针脚供12V电压,1号和2号针脚接地,ECU是否上电呢?

这时候ECU是没有上电的,因为ECU上电不仅检测4号和6号针脚的电压,更要检测71号针脚是否有12V电压(有些车型还会检测主继电器是否吸合)。如果71号针脚没有12V电压,即使给4号和6号针脚接12V电压,ECU也是没电的。

如果要单独给板子上电,需要给04/06接12V电源,01/02接电源负,只接这两个还是不够的,还需要T15线接上一个12V电源。

通过上述的讲解,大家应该对ECU的通讯协议和跳线有了一定的认识,要想快速正确的进到ECU系统还真是挺麻烦,下面见证奇迹的时刻就到了!

2、 根据车辆或者ECU信息选择适合系统。

3、直接点击扫描诊断,系统会自动的进行CAN节点配对,自动进入系统。

总结

1、车身应用越来越多,ECU跳线虽然麻烦,但是只要有神器(测神A70)扫描诊断功能,再也不用为跳线发愁。