M-Bus(meter-bus) 是一个专用于公共事业仪表的总线结构,《DL/T645-2007多功能电能表通信协议》是发改委发布的一项用于国内电能表数据通信的协议规范,相当于MBus的"汉化版"。
|--前导字节--|--帧起始符--|--仪表类型--|--从站地址域--|--控制码--|--数据长度--|--数据域--|--纵向校验码--|--帧结束--| 字节格式:8位数据位+1个起始位+1个奇偶校验位+1停止位。传输时,低位在前,高位在后。
通信前设备发送一定数目的FEH,本质上是物理层的要求,用于唤醒设备和同步,一般是2~4个FE。
表示一帧信息的开始,为68H。
指示参与通信的从站是那种类型的计量仪表:
地址域指示与之通信的从站的地址,由7个字节组成A0A1A2A3A4A5A6,每个字节为2为BCD码,其中A5A6为厂商代码,低地址在前高地址在后,AAH为通配地址,当为AAAAAAAAAAAAAA时,代表广播。
帧信息控制代码,一个字节,字节的低6位代表相应信息的控制码(如000100代表读计量数据),第7位表示从站应答信息(0-正确应答,1-异常信息的应答),第8位表示帧的发送方(0-主站的控制帧,1-从站应答帧)。
数据域的数据长度。
数据,含义根据控制码及上下文确定。发送方进行加33H处理,接收方进行减33H处理。
从帧起始符开始到校验码之前得所有字节的二进制算术累加和,无进位。
表示一帧信息的结束,为68H。

