autosar—com模块

目录

定义

signal信号

3种信号值

发送信号属性—Triggered属性+Pending属性

信号的初始化

信号的对齐方式(大小端)

信号的收发

a.发送(上层—下层)

b.接收(下层—上层)

字节序转换和符号扩展

信号的过滤机制

上下层

com层与下层PDUR层的相互通信

com层有上层RTE层通信

信号传输模式

数据传输

接收

发送

数据发送后的确认


定义

对不同速率的总线网络提供数据交换;为汽车控制单元应用软件提供了统一的通信环境,为内部和外部通信定义了公共的软件通信接口和行为;

AUTOSAR COM模块进行发送和接收信号,为RTE提供面向信号的接收与发送函数。

signal信号

3种信号值

  • 初始值:AUTOSAR COM模块使用配置参数ComSignalInitValue的低N位初始化发送方和接收方的每个N位的信号类型, 配置的ComSignalInitValues也用于I-PDU的初始化信号。一个信号的ComSignalInitValue可以与ComSignalDataInvalidValue值相同。初始化阶段会清空所有update-bits。默认情况下,所有I-PDU组应在停止状态,不得由Com_Init()调用启动。
  • 数据无效值:通过调用Com_InvalidateSignal, AUTOSAR COM模块将在内部执行带有配置ComSignalDataInvalidValue的Com_SendSignal。ComTransferProperty和传输模式决定了ComSignalDataInvalidValue在总线上的传输。内部执行的带有数据无效值的Com_SendSignal,会决定被用作过滤器的数据无效值和TMS当前值。VFB仅为复杂数据类型定义一个属性。因此,一个失效的复杂数据类型到一个失效的信号簇的最佳映射是使一个信号簇的所有信号失效。因此,RTE还可以通过调用Com_InvalidateSignalGroup来请求使整个信号簇无效。
  • 正常值:初始化阶段之后的有效值,包括COM部分收发的信号值。

发送信号属性—Triggered属性+Pending属性

  • Triggered属性-触发:调用Com_SendSignal( )服务请求具备Triggered属性的信号发送,可以触发相关I-PDU的发送,但是如果该I-PDU的发送模式被配置为Peiodic时,只更新信号的值,不会触发相关I-PDU的立即发送,而是在下一周期到来时触发发送。
  • Pending属性-延迟:Com_SendSignal( )服务请求调用具备Pending属性的信号发送,不会触发相关I-PDU的发送。

信号的初始化

AUTOSAR COM在Com_Init()执行时,将初始化所有I-PDU内容,首先用默认值(ComTxIPduUnusedAreasDefault)表示字节,然后根据所包含信号的初始值(ComSignalInitValue)和更新位来表示位。初始化过程中无法使能ECU内部的通信功能。

信号的对齐方式(大小端)

(小端):信号的高位(MSB)放在高字节的高位,信号的低位(LSB)放在低字节的低位;

(大端):信号的高位(MSB)放在低字节的高位,信号的低位(LSB)放在高字节的低位。

信号的收发

a.发送(上层—下层)

发送过程中,应用层调用COM层提供的信号或信号簇发送函数,根据配置,信号或信号簇的数据经过字节序转换后被更新到I-PDU中相应的位置。AUTOSAR COM规范中同一I-PDU可以设置两种发送模式,对其中各信号的传输模式条件进行计算ÿ

  • 15
    点赞
  • 203
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值