J1939中也有自己的通讯单帧、多帧通讯和诊断。其中他以比较全的方式,规定了所有CANID的定义。
UDS有几个有限的CANID,毕竟他的作用主要是用来做诊断的,其中的CANID一般为18DA0010或者18DB0010,其中00为目标地址,10为源地址。一般我们用的是UDS中的诊断,和他的通讯方式,多帧和单帧的通讯方式。理解诊断的意思是:比如程序下载,和参数标定都是诊断的过程。比如我们发送的CANID+数据,其中数据中包括内容为服务号和子功能,服务号就有2E刷写,等等,当然下位机也会做响应的,回复7E是肯定响应。
DM1是属于J1939的内容,一个控制器需要符合J1939协议,那么它就需要在总线上发出自己的DM1报文,can数据是一直在总线上发哦,让主机厂在仪表上显示。
通常我们在仪表上看到的是DM1报文中FIM码,当然这个是和相应的报文对应,同时也有对应的FIM码的故障解释,有的车把故障解释显示在仪表的显示屏上了,有的则只显示FIM码。
DTC是属于UDS范畴,它的服务号是19h,一般显示在诊断仪上,和诊断仪匹配的上位机也是属于诊断仪的一部分,所以上位机上显示的一般也是DTC。
一般情况下UDS做诊断,J1939做CANID的全部定义;
通常符合UDS,是用的UDS诊断的功能,其过程一般是发送服务号和子功能号,发送请求,底层应答;
符合J1939,是查看can总线上是否发出了符合J1939协议的can报文,其中can报文是一直在发送的,发送的报文具体的canID和对应的数据内容是符合J1939中定义的数据内容;CANID中有PGN,数据中有SPN;
目前大部分用到的是UDS和J1939结合的方式。J1939管can总线的数据(在线监测);UDS管诊断功能(程序刷写,参数标定,故障读取)
UDS和J1939的区别
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...