目录

问题背景

结论及分析

一、 传输效率可能会降低——具体的取决于将此DID应用在哪个诊断服务中

二、相关的工具是否支持——需要一一确认

三、替代方案——现有的“动态定义DID”是否能满足需求?


问题背景

交流群的小伙伴有人问“UDS里定义DID长度为2个Byte,客户来问我DID能不能做成3个Byte,拿不出资料跟他解释"。

这时候,只是单纯的觉得,协议这种规定死的东西,当然不能想变就变,不然当初给它设置固定长度,就没有意义了。

后来另外一个小伙伴回复说”改协议栈,客户上帝,上帝说了算“。

才想到协议栈是可以改的~ 哈哈哈 对呀,协议也是人定义的,当然也可以被改。

这时候发现自己对于协议中为什么要把DID设置为2个Byte,并不明白。能想到的理由只有一个2个Byte的长度已经足够用了。但这只是够用,如果增加长度会怎么样呢?

其实要考虑的是,如果改了会有什么影响?这些影响是否可控?我要从哪些方面分析优劣势呢?

结论及分析

先上结论:以小白的视角,查了一堆资料后,得出的结论是不建议修改。

有以下3点理由。

一、 传输效率可能会降低——具体的取决于将此DID应用在哪个诊断服务中

因为CAN标准帧总共8Byte, 网络层占1Byte,还剩余7 Byte 可用。

根据不同诊断服务的要求不同,传输效率是否会受影响也需要具体情况具体讨论:

比如说,如果是诊断服务,request/response下面这种格式的,3Byte DID就不影响

        <SID> + <Sub-Funtion> + <DID>

其中SID 需要1Byte,Sub-Func需要1Byte,剩余5Byte可用,有足够的空间给DID。

但如果是数据读写服务,request/response是下面这种格式, 3Byte DID将可能降低传输效率:

        <SID>+<DID>+<DATA>

这时:DID如果是2Byte,Data可以传输4Byte;DID如果是3Byte,Data只有3Byte的位置。

  1. 如果data长度3Byte内能够传输完成就不影响,
  2. 如果Data超过3Byte,那么原本单帧可完成传输的内容,需要多一个帧才能完成,不仅是传输效率打折扣,拆包、组包操作也需要额外开销。

【参考文章:毕乾坤,徐旭.UDS协议栈中的时间参数解析[J].汽车实用技术,2019(13):43-44+57.DOI:10.16638/j.cnki.1671-7988.2019.13.016.】

二、相关的工具是否支持——需要一一确认

【参考链接:CDD数据库文件制作(三)——DIDCDD数据库文件制作(三)——DID_涓涓悦然的博客-CSDN博客 】

DID 长度为2Byte是通用规则,改成3Byte,需要确认相关的工具是否是固化配置的,是否会有应用上的限制。

比如目前了解到的和DID相关的一个软件CANdelaStudio,需要用它制作CDD文件,在CDD文件中创建DID时,DID的DataType是下拉框选择的,里面的选项是否支持3Byte的长度?

这个软件可能支持(我没有实际操作过这个软件,无法确认),其他的软硬件设备呢?

三、替代方案——现有的“动态定义DID”是否能满足需求?

【参考文章:汽车UDS诊断详解及Vector相关工具链使用说明——2.2.7 动态定义DID(0x2C)汽车UDS诊断详解及Vector相关工具链使用说明——2.2.7 动态定义DID(0x2C)_老孟_的博客-CSDN博客_动态did】

动态定义DID服务允许诊断仪在ECU内部动态定义一个临时的DID,可以通过该DID读取一段内存的数据,也可以通过改DID一次性读取多个原有DID的数据。动态定义DID既可以是支持22服务的DID,也可以是支持2A服务的周期性读取DID。

该服务可以更加灵活地读取一些临时数据,也可以降低因频繁发送诊断请求和响应而导致的总线负载过高。

以上只是简单的分析记录,里面涉及到的内容点也并不太理解。欢迎小伙伴们一起讨论指正呀~

END

UDS: DID可以设置成3个BYTE吗相关推荐

  1. mysql blob 读取 图片_mysql中以blob形式存储的图片文件 通过ajax方式传输 在js中设置成img控件的src...

    第一步,读取blob数据, 第二步,将blob数据转换成byte数组 第三步,将byte数据进行base64加密转换成字符串并回传 第四步,接收字符串 第五步,将img控件的src设置成"d ...

  2. 【Ubuntu】安装Ubuntu+Win双系统后,每次开机默认是进入Ubuntu,如何设置成默认进入Win?

    1.问题描述 安装Ubuntu+Win双系统后,每次开机默认是进入Ubuntu,如何设置成默认进入Win? 2.解决方法 1)记住开机选择中windows 10是第几个,从0开始记,如下图本人的是4 ...

  3. 【html】如何解决标签设置成超链接后字体格式及颜色变化的问题

    问题描述: 如图所示,将一个标签设置成超链接后字体颜色和格式会发生改变,如果我只想让它保持原来的格式应该怎么办? 解决方法: 在a标签中添加一个属性: style="color:inheri ...

  4. Nginx设置成服务并开机自动启动的配置详解

    Nginx 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,接下来通过本文给大家介绍Nginx设置成服务并开机自动启动的配置,需要的朋友可以参考下 在/et ...

  5. Python中matplotlib默认绘制的条形图比较胖?如何设置成体型匀称的条形图,达到最佳的可视化效果。

    Python中matplotlib默认绘制的条形图比较胖?如何设置成体型匀称的条形图,达到最佳的可视化效果. #默认情形下的条形图 n_bars = len(x_labels)xval = np.ar ...

  6. ThreadLocalMap的enrty的key为什么要设置成弱引用

    ThreadLocal如何回收value,什么时候回收?(学习笔记) https://www.cnblogs.com/1693977889zz/p/11111568.html 1)ThreadLoca ...

  7. linux 把根目录设置成777权限的补救方法

    Linux把根目录设置成777权限的补救方法 前两天蛋蛋手就那么一抖啊,一不小心就把根目录权限设置成777了. 本想执行chmod -R 777 ./* 结果一不小心少按了一个点,变成了chmod - ...

  8. pip镜像源永久设置成国内镜像源,提升下载速度

    pip镜像源永久设置成国内镜像源,提升下载速度 文章目录: 一.临时使用 二.永久修改 1.Linux环境 2.windows环境 经常在使用python的时候需要安装各种模块,而pip是很强大的模块 ...

  9. CentOS下KVM网卡设置成网桥时获取镜像端口的流量

    首先,网桥配置好之后就能实现一个简单的交换机,而交换机的特点就是MAC地址学习,那么KVM的网卡设置成网桥之后,也就是相当于连接到了交换机上. 此时如果要实现在二层交换机或三层交换机做端口镜像,并把这 ...

最新文章

  1. hdu 1724 Ellipse——辛普森积分
  2. 为什么推荐 Java 程序员使用 Google Guava 编程
  3. Hyper-V 3.0功能部署PART 5:秒级实时迁移
  4. Tomcat参数配置
  5. 数据库中关于convert的参数学习(转化函数用法)
  6. 完整的中英文词频统计
  7. java技术自我_2020年Java程序员如何进行自我提升?
  8. C++11之std::async使用介绍
  9. Mybatis中的#号与$符号的区别
  10. apache2 配置php,Windows配置PHP5与Apache2
  11. HRESULT是什么类型
  12. hdu 6088 Rikka with Rock-paper-scissors (2017 多校第五场 1004) 【组合数学 + 数论 + 模意义下的FFT】...
  13. stm32-sbus数据接收,并通过CAN转发给车辆控制
  14. 爬虫-3-requests和代理
  15. gis与计算机科学之间的联系,GIS地理信息系统课程论文 地理信息系统与其他学科的关系及应用前景...
  16. 判断某键值是否存在[注册表操作]
  17. 阿里云centOS 、linux 常用安全软件
  18. web渗透--3--web安全原则(下)
  19. EasyUI Messager的alert基本使用
  20. 设置电脑颜色保护眼睛

热门文章

  1. 计算机二级容易,计算机二级哪个最容易考过?
  2. C#使用GDI绘图九宫格与方位
  3. 寻梦湘西-梵净山之旅
  4. 烟台大学CSDN俱乐部活动:与毕业生谈人生
  5. Adobe Audition 2020 Mac 中文直装版下载教程
  6. 网络服务(4)——以太网配置IP、网关
  7. 主流服务器虚拟化技术 xen,主流的服务器虚拟化技术包括哪些
  8. DropBox免费网盘
  9. matlab与amesim,amesim与matlab联合仿真步骤(自己总结)(精)
  10. LOAM系列——ISCLOAM配置、编译、问题解决及VLP16测试效果(完结版)