MVB帧有两种类型:
1.仅有总线主发布的主帧;
2.从设备相应主帧而发送的从帧;
一个主帧及其相应的从帧形成一个报文。
主帧起始分界符和从帧起始分界符是不同的,以防止同步滑移
主帧的长度固定问33位,包括:
9位主起始分界符;
4位F代码,它指明所期望的从帧类型和长度 。即我们所说的FCode;
12位的地址或参量;
8位的检验序列;
所有设备都对主帧译码(“所有”包括主自己),随后被寻址的源设备回答一个从帧,该从帧可以被其它的设备所接收。
从帧可能有五种长度:33,49,81,153或297位,包括:
9位从起始分界符;
16 ~~ 256位的数据;
每个64位序列有一个8位检验序列;
MVB报文类型:
MVB有16种报文类型,它由主帧中的F代码来区分
进程数据是对含有F代码为0 ~~ 4及逻辑地址的主帧的相应。
进程数据帧由一个设备发送,但由所有其他设备接收。
消息数据报文是对F代码等于12并含有一个设备地址的主帧的相应。报文长度固定为256位,消息数据包含有12位的目标地址(物理地址),所有设备都对目标地址译码,但仅是被选择的目标设备才接收该帧。
监视数据报文是对F代码为8、9、13、14、15的主帧的相应,它的长度为16位
主帧与相应它的从帧间的间隔小于4ms,为能在这样短的时间内做出相应,设备应事先准备好从帧以备发送。为此,设备把它的数据放在称为端口的寄存器中,每个设备可有多个端口。种类分别为源端口和宿端口。
有两种类型的端口:
物理端口和逻辑端口,它们有主帧中的F代码来区分。
逻辑端口(F代码为0 ~~ 4)
每个设备都有许多逻辑端口,典型的为256个,组态时这些逻辑端口或是作为源端口,或是作为宿端口。它们的长度可以为16、32、64、128或256位,它们用12位的逻辑地址来标识,逻辑端口为进程数据提供了基本通信。
物理端口(F代码8 ~~ 15)
每个设备都有8个物理端口,供监视数据和消息数据用。除了消息数据端口外其它端口的长度都固定为16,这些物理端口按F代码8 ~~ 15和12位的设备地址寻址。
256位的消息端口(F代码为12)仅用于消息数据,仅是主帧中规定的设备才发出消息数据。所有其他设备要检测从帧。如果它的地址出现在从帧帧头中,则接收该从帧。与其它端口不同,消息端口的内容是不能覆盖的,如果消息端口的先前内容未被取走,则新的帧会被忽略。
MVB由单一的总线主控制,总线主是唯一发送主帧的设备,所有其它设备都是从设备,它们不可以随意发送。
总线主可以位于总线的任何部分,它按预定的顺序周期性地轮询各个端口。