UDS 14229 -1 刷写34,36,37服务,标准加Trace讲解,没理由搞不明白
创始人
2024-06-02 18:51:40
0
  • 🍅 我是蚂蚁小兵,专注于车载诊断领域,尤其擅长于对CANoe工具的使用
  • 🍅 寻找组织 ,答疑解惑,摸鱼聊天,博客源码,点击加入👉【相亲相爱一家人】
  • 🍅 玩转CANoe,博客目录大全,点击跳转👉

目录

  • 📙 RequestDownload (0x34) service
    • 请求格式
    • 正响应格式:
    • 负响应格式:
  • 📙 TransferData (0x36) service
    • 请求格式
    • 正响应格式:
    • 负响应格式:
  • 📙 RequestTransferExit (0x37) service
    • 正响应格式:
    • 负响应格式:
  • 🌎总结

请添加图片描述

📙 RequestDownload (0x34) service

  • Tester向目标ECU请求下载服务

请求格式

在这里插入图片描述

  • dataFormatIdentifier :这是第二个字节的参数,其中高4个bit表示压缩方法,低4个bit表示加密方法一般情况就是0x00
  • addressAndLengthFormatIdentifier:请求刷写地址和长度格式,高4个bit表示下面的memorySize参数占几个字节,低4个bit表示下面的memoryAddress参数占几个字节。常规就是0x44,就是memorySizememoryAddress各占4个字节。
  • memoryAddress :请求刷写的首地址,这个参数占几个字节由addressAndLengthFormatIdentifier参数的低4个bit决定的
  • memorySize : 请求刷写的字节长度,这个参数占几个字节由addressAndLengthFormatIdentifier参数的高4个bit决定的

如下图的实例Trace : 34 00 44 52 80 90 00 00 00 16 00

在这里插入图片描述

正响应格式:

在这里插入图片描述

  • lengthFormatIdentifier:高4个bit表示下面的maxNumberOfBlockLength参数占几个字节,低4个bit默认0
  • maxNumberOfBlockLength : 目标ECU允许Tester传输最大的字节数
  • 比如下面34服务响应的 maxNumberOfBlockLength等于0x0802,下面36服务就传输了0x0802个字节(包括36 01)
  • 0x1802的解释:CAN TP层的第一个字节的高4bit表示帧类型,1就表示是首帧,2是连续帧,3是流控帧,0是单帧。
  • 实际上,36服务传输可以小于maxNumberOfBlockLength,但不能大于,

在这里插入图片描述

负响应格式:

在这里插入图片描述

  • 0x13 :36服务传输字节大于maxNumberOfBlockLength
  • 0x22 :当目标ECU正在接受数据,发送S34服务请求,ECU应该响应CNC(0x22)
  • 0x31 :请求参数中,参数不对
  • 0x33 :没有进入指定的安全会话
  • 0x70: 没事先擦除内存会报这个NRC

📙 TransferData (0x36) service

  • 刷写过程,即Tester向ECU中下载数据的过程叫download
  • Teser向ECU请求返回数据,即ECU向Tester传输数据的过程叫 upload

请求格式

在这里插入图片描述

  • blockSequenceCounter:数据传输计数器,第一帧从1开始,到了0xFF后,再从0开始,循环往复,直到下载完毕
  • transferRequestParameterRecord:传输数据,正常来说就是(maxNumberOfBlockLength - 2)

在这里插入图片描述

正响应格式:

在这里插入图片描述

  • blockSequenceCounter: 响应的结果和请求时一样
  • transferRequestParameterRecord : 刷写过程是没有这个参数的,35服务请求数据时,才有这个参数
  • 34和35服务,互为逆过程,36服务的请求和响应也是互逆的。

负响应格式:

在这里插入图片描述

  • 0x24 : 不先请求34或者35服务,会响应这个NRC
  • 0x71:xxxxx
  • 0x72:xxxxx
  • 0x73:传输Block计数器错误,比如第一帧传输时不是1,或者,不连续
  • 0x92/0x93: 刷写时电压过高或者过低

📙 RequestTransferExit (0x37) service

正响应格式:

在这里插入图片描述

  • transferResponseParameterRecord:从没见过
    在这里插入图片描述

负响应格式:

在这里插入图片描述

在这里插入图片描述

🌎总结

23

7

  • 🚩要有最朴素的生活,最遥远的梦想,即使明天天寒地冻,路遥马亡!

  • 🚩如果这篇博客对你有帮助,请 “点赞” “评论”“收藏”一键三连 哦!码字不易,大家的支持就是我坚持下去的动力。
    18

相关内容

热门资讯

安卓系统未接来电,揭秘你的通话... 手机响了又没接,是不是错过了什么重要信息?别急,今天就来聊聊安卓系统中的那个让人头疼的“未接来电”问...
安卓系统没显示界面,安卓系统无... 手机屏幕上突然一片漆黑,安卓系统竟然没显示界面了!这可怎么办呢?别急,让我来给你支支招,帮你解决这个...
各安卓双系统对比,性能、兼容性... 你有没有想过,为什么你的手机里会有两个系统?是不是好奇它们之间有什么不同?今天,就让我带你来一场各安...
安卓系统的类似ipad,媲美i... 你有没有想过,在安卓的世界里,竟然也能找到类似iPad的体验呢?没错,就是那种触控流畅、界面美观,还...
安卓系统授权收费吗,揭秘授权机... 你有没有想过,你的安卓手机里那些可爱的应用,它们是怎么来到你的手机里的呢?没错,就是通过安卓系统的授...
把安卓改为ios系统,系统转换... 你有没有想过,为什么有些人把安卓手机换成iOS系统呢?是不是觉得这只是一个简单的操作,其实不然哦!今...
安卓系统的灵动岛,创新交互体验... 你知道吗?最近安卓系统里有个新玩意儿,叫“灵动岛”,听起来是不是有点像科幻电影里的高科技?没错,它就...
安卓系统可以清理吗,提升运行速... 亲爱的安卓用户们,你是不是也和我一样,看着手机里那些堆积如山的文件和应用程序,心里直发慌?别急,今天...
安卓系统修改GPU频率,安卓系... 你有没有想过,你的安卓手机在默默无闻地工作,而它的GPU(图形处理器)其实有着巨大的潜力等待被挖掘呢...
安卓4.4系统什么手机,那些引... 你有没有想过,安卓4.4系统那会儿,手机市场可是热闹非凡呢!那时候,各大品牌纷纷推出搭载这个系统的手...
安卓平板改系统教程,安卓平板系... 你有没有想过给你的安卓平板换换口味,让它焕发新生呢?没错,今天就要来手把手教你如何给安卓平板改系统,...
车载怎么升级安卓系统,轻松实现... 你有没有发现,车载系统升级安卓系统后,整个驾驶体验都变得不一样了呢?想象当你坐在车里,手握方向盘,眼...
动态应用推荐安卓系统,动态应用... 你有没有发现,每次打开手机,那些应用推荐总是那么精准地戳中你的心?是不是有时候在想,这安卓系统是怎么...
vmware 安卓系统安装教程... 亲爱的电脑玩家们,你是否曾梦想在虚拟机中安装安卓系统,体验一把真正的移动办公或游戏乐趣?今天,就让我...
安卓9添加系统应用,系统级应用... 你知道吗?安卓系统又更新啦!这次可是升级到了安卓9哦!是不是很激动?别急,让我带你一起探索一下安卓9...
ios系统和安卓系统如何互换,... 你有没有想过,你的iPhone手机里的照片,能不能直接传到你的安卓平板上呢?或者,你的安卓手机上的游...
安卓系统终端进入后台,安卓终端... 你有没有发现,手机里的安卓系统终端有时候会偷偷进入后台,这可真是让人又爱又恨的小秘密呢!今天,就让我...
创维 非安卓系统下载,探索独特... 你家的创维电视是不是最近有点儿不给力啊?别急,别急,让我来给你支个招儿!今天咱们就来聊聊创维电视非安...
win10系统模拟安卓系统,打... 你有没有想过,在Windows 10的系统里,竟然能模拟出一个安卓的世界?没错,就是那种手指滑动的快...
安卓系统的定位软件,智慧生活 你有没有发现,现在手机里装了那么多应用,但最离不开的还得是那个能帮你找到家的定位软件。今天,就让我带...