CAN报文发送类型

报文发送类型有周期型Cycle、事件型Event、周期事件型CycleEvent(简称CE)、激活型IfActive

周期型Cycle最简单,就是按照固定周期循环发送的报文。

事件型Event平时不发送,当事件发生的时候才发送一段时间后停发。

周期事件型CE就有点复杂了,他有两个周期,快发周期和慢发周期,平时按照慢发周期(譬如100ms),事件发生的时候按照快发周期(譬如20ms)发一段时间后切换回慢发周期。

激活型IfActive平时不发送,状态激活的时候才发送。

CAN信号发送类型

信号发送类型有周期型Cycle、变化重复发送型OnChangeWithRepetition、变化不重复发送型OnChangeWithoutRepetition、写入重复发送型OnWriteWithRepetition、写入不重复发送型OnWriteWithoutRepetition、激活重复发送型IfActiveWithRepetition、激活不重复发送型IfActive

周期型Cycle也称Pending,就是按照固定周期循环发送的信号,一般在周期型发送的报文里面。

变化重复发送型OnChangeWithRepetition也称OnChange,数据有变化的时候才发送,会按照指定周期重复发送一段时间后停发。

变化不重复发送型OnChangeWithoutRepetition数据有变化的时候发送,但不会重复发送。

写入重复发送型OnWriteWithRepetition也称OnWrite或者Triggered,写入(一般就是发生事件)就会发送,会按照指定周期重复发送一段时间后停发。

写入不重复发送型OnWriteWithoutRepetition也称TriggeredWithoutRepetition写入(一般就是发生事件)就会发送,但不会重复发送。

激活不重复发送型IfActiveWithoutRepetition也称IfActive,激活状态下才会发送,会按照指定周期重复发送一段时间后停发。

激活重复发送型IfActiveWithRepetition激活状态下才会发送,但不会重复发送。

CAN信号恢复默认值方式

信号恢复默认值在不同的报文里面有不同的方式

周期型报文Cycle不涉及这个

事件型报文Event里面的信号每次停发之后都会变成默认值

激活型报文IfActive和周期事件型报文CycleEvent里面的信号按照恢复默认值方式分为保持型和非保持型。拿周期事件型报文来举例,如果里面的信号是保持型,事件发生时信号值会变成一个非默认值,事件结束后信号数值依然会保持为这个非默认值。如果里面的信号是非保持型,事件发生时信号值会变成一个非默认值,事件结束后信号数值就会恢复默认值。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐