UDS和J1939的区别

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管诊断功能(程序刷写,参数标定,故障读取)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容