信号在DBC内有3种类型。
- Signal
- Multiplexor
- Multiplexed_Siganl
第一种,自然是普通信号。第二种、第三种都是多路复用相关的类型。
Multiplexor类型的Signal是多路复用的指示器,相当于数组的下标,用于指定当前报文中的数据,使用哪一组signal进行解析。
Multiplexed_Signal类型的Signal是多路复用中的信号,相当于数组中的每一个成员。Multiplexed Signal含有一一个变量,用来标记他属于哪个数组。
啥是多路复用?可以简单理解为,同一个ID的报文,在不同时间段,包含的信息可能代表不同的意思。
那怎么确定当前报文应该解释成什么意思呢?就需要在这个报文中使用某1个Signal(1个Bit或多个bit),来作为指示器(就是Multiplexor)。
然后,不同时间段下用来解释报文的多个Signal,就会分成为一个组(在DBC内标识为m0,m1,m2),这时候每个Signal的类型就是Multiplexed_Siganl。和普通Signal相比,这个Multiplexed_Siganl类型就是多包好了一个分组信息。
例子
在DBC中一个报文只能有一个Multiplexor,其他的就是分组后信号。可以发现有一些Signal的StartBit是相同的,这个在普通的报文中,是不可能的。
版权属于:CraZyMoNk
本文链接:https://blog.peacharc.com/archives/373.html
转载时须注明出处及本声明