网站大量收购独家精品文档,联系QQ:2885784924

K线诊断协议驱动器设计.pptx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
K 线诊断协议驱动器设计;2;3;4;5;6;} if((k_REQ==k_drvhandle.mode)(k_FMT!=k_curmsg.state)){ TimerStart(k_REP_P4MS,k_TP4,0,1); } } 2.2 初始化 在开始诊断服务之前,诊断仪必须对 ECU 进行初始化,通过ECU 的响应获取 ECU 支持的报文头格式和定时参数,建 立诊断通讯【4】。初始化过程如图 1 所示,诊断仪发送一个 25ms ’0’、25ms’1’的WuP(WakeUp Pattern),然后发送 STC(StartCommunication) Request,ECU 检测出WuP 并接收到正确的 STC Request 后返回 STC Response,该报文 的Data 字段为由两个字节构成的“关键字(Key Word)”,指定了 ECU 所支持的报文头和定时参数信息,如 Key Word 指定为 0x8fea 即表示在报文头中采用附加长度信息 Len 表示数据字段长度,同时采用默认的定时参数。;P1 和P4 是报文内字节间定时,P2 和P3 为报文间定时。诊断仪在初始化完成后或接收到诊断响应后需要在 P3 时间内 发送诊断请求,否则 ECU 端退出诊断会话,断开诊断通讯,K 线协议驱动器重启,等待诊断仪发出下一个 WuP 和 STC Request。ECU 在接收到诊断请求后,需要在 P2 时间内返回诊断响应, P2 由 ECU 控制,通常采用 25ms 的固定值, 当诊断请求报文中的 Fmt 字段指定目标地址为“功能地址”时,P2 的取值需要用一个随机数发生器来产生,因为对于功能 寻址的诊断仪请求来说,可能多个 ECU 都会返回响应,如果采用固定的P2 参数的话,可能会因为多个 ECU 竞争总线 而出现总线冲突问题,P2 采用随机数,ECU 不会在同一时间返回响应,从而避免了总线竞争问题。 3 协议驱动器测试 协议驱动器在 Vector 公司的CANoe 软硬件平台上进行测试,进行基于 K 线的KWP2000 服务测试时,将 KWP2000.dll 和 KLineCPL.dll 模块加入CANoe 仿真环境,CANoe 模拟诊断仪节点,并使用一个代理节点来实现 CAN 网络和K 线之 间的报文转发,此时CANoe 使用计算机的串口,并通过串口/K 线转换器与 ECU 相连,诊断实现框架如图 2 所示。;9

文档评论(0)

万寿无疆 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档