- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
AUTOSAR架构的COM
1?
接收操作
PduR模块向上路由接收通知,将COM的调用Com_RxIndication函数,其调用逻辑下图1。
图1 接收通知逻辑,引自[1]
Com_RxIndication函数定义如下:
图2 Com_RxIndication函数定义,引自[2]
当进入Com_RxIndication函数,对8个字节的数据进行解包的内部处理。
图3 引自[2]
关于解包模式有两种:IMMEDIATE(立刻)和DEFERRED(推迟),可通过ComIpduSignalProcessing配置。这两种模式的区别是:DEFERRED模式下,COM模块必须先复制Ipdu的数据。DEFERRED模式下,信号通知/确认周期性执行,而IMMEDIATE模式下,信号通知/确认则在接收通知/发送确认函数及时执行。
图4 解包模式,引自[2]
当解包一条I-PDU时,COM模块必须检查接收数据的长度,解包,通知(解包完成)。这里解包就像根据报文通信协议配置DBC,即将8个字节数据从某位到某某位逐个提取,赋给对应的已定义好信号,已提取的信号数据存于COM模块的buffer。
图5 DBC配置
然后ASW经RTE模块调用Com模块的Com_ReceiveSignal或Com_ReceiveSignalGroup函数提取相关的信号。关于Com_ReceiveSignal函数定义如下:
图6 Com_ReceiveSignal函数,引自[2]
以上就是从PduR模块到COM模块再到ASW的接收过程,如下图7右框所示。发送过程则如左框所示,类似于接收的逆过程,下面来具体了解下。
图7 接收发送过程示意,引自[3]
2?
发送操作
首先,ASW经RTE模块调用Com模块的Com_SendSignal或Com_SendSignalGroup函数发送相关的信号给COM模块,存入其相关的buffer。关于Com_SendSignal函数定义如下:
图8 Com_SendSignal函数定义,引自[2]
这里需要判断buffer是否有足够的存储空间,故将调用Com_TriggerTransmit函数来检查,该函数定义如下:
图9 Com_TriggerTransmit函数,引自[2]
再通过周期性调用Com_MainFunctionTx函数将刚存入buffer的数据进行打包成I-PDU格式。
图10 Com_MainFunctionTx函数,引自[2]
在Com_MainFunctionTx中通过调用PduR模块的PduR_ComTransmit函数向下发送数据。
图11 发送请求过程,引自[1]
当发送成功后,CAN模块将向上确认,从PduR模块到COM模块,将调用Com_TxConfirmation函数完成确认。
图12 Com_TxConfirmation函数,引自[2]
以上就是从ASW到COM模块再到PduR模块的发送过程,当然这里忽略很多传输特性的细节,若想了解如下图13,14所示的CAN发送接收过程,详见[2]。
图13 发送过程,引自[2]
图14 接收过程,引自[2]
3
信号处理
COM模块处理PDU与信号的转换,而与前面文章的CAN,CAN接口和PDUR模块的处理均仅基于PDU,那么针对PDU转换成信号,会有什么不一样的要求呢?
1)支持数据类型
首先是信号的数据类型,COM模块必须支持下图15所示的数据类型:
图15 数据类型,引自[2]
2)字节顺序--大小端
然后是字节顺序问题,即大端格式还是小端格式,其定义如下图16,17所示。对应的就是我们在报文通讯协议定义中看到的motorola格式(大端)和Intel格式(小端)。COM模块必须要在发送方的I-PDU调用前执行字节顺序转换。
图16 小节字节顺序,引自[3]
图17 大端字节顺序,引自[3]
关于大小端的详细解释,推荐一篇非常不错的博文,见参考[4]。
3)符号扩展
其次是数据的符号问题。比如如何处理有符号数据,如下图18示例。由此可知COM模块定义一套符号转换的规则。
图18 有符号数据转换示例,引自[2]
图19 符号转换规则示意。
4)信号值
信号值有3种类型:初始值,无效值和正常值,如下表所示。那么分别在什么时候使用呢?
引自[2]
对于初始值,主要是COM模块在初始化发送方和接收方的每一个信号使用。
对于无效值,主要是当发送方不能提供有效值给相应信号,比如发送方因传感器故障的情况,这时COM模块为发送方提供一个无效值来代替。
除了以上要求,当然还需要考虑很多因素,比如更新位,可参考[5]。
您可能关注的文档
最近下载
- A.8 公用设备二次回路原理图集20170407.pdf VIP
- 人教版(2024)数学三年级上册《认识直角》PPT课件.pptx VIP
- 流行性感冒诊疗方案(2025 年版)解读PPT课件.pptx VIP
- 医院感染的消毒灭菌与器械管理.pptx VIP
- 新生儿大疱性表皮松解症的护理.pptx VIP
- 2025年呼吸内科医师呼吸系统疾病治疗考核试题及答案解析.docx VIP
- A.1 220kV线路二次回路原理图集..pdf VIP
- 回弹法检测混凝土抗压强度技术规程.pdf VIP
- 苏轼《南乡子 重九涵辉楼呈徐君猷》古诗词PPT.pptx VIP
- (2025年)全科医生培训考试题库及答案.docx VIP
文档评论(0)