RCTP实时控制/传输通讯协议
RCTP协议(RealTime Control and Translate Protocol)为自定义实时控制/传输通讯协议。
1、基本帧格式
1.1帧结构
typedef struct
{
uchar head; //帧头
uchar length; //帧长度
uchar length_rep; //帧长度重复
uchar head_rep; //帧头重复
uchar source_id; //发送设备号
uchar directory_id; //接收设备号
uchar handle; //帧与操作类型
uchar parameter[frame_data_size]; //帧参数域buf
uchar AccVal; //累加和校验
uchar stop; //结束符
} struct_frame;
1.2开始符的判断
条件:if(struct_frame.head == struct_frame.head_rep) && (struct_frame.length == struct_frame.length_rep)成立。
1.3帧与操作类型
1.3.1 数据帧的操作类型定义
1.3.2 命令帧的操作类型定义
1.4 校验和
校验和为:0-N的累加值,1字节。
2、基于RCTP的LED数码管数据采集通讯协议: RCTP-Ⅰ协议
RCTP-Ⅰ协议是基于RCTP的LED数码管数据采集通讯协议,物理上基于RS-485口,通过屏蔽双绞线实现通讯。RCTP-Ⅰ协议是一种主-从协议。主站设备发送要求到从站设备,从站设备响应,从站不能主动发出信息。
波特率代码表:
在默认状态下通信的设置速率一般是9600、无效验、8数据位、1个停止位。
2.2 操作类型(功能)-共128种
2.3 常用命令与应答
2.3.1 命令—读寄存器数据
例子:主机0X00读从机设备0X02数据请求(读数据):
数据类型:00-十六进制;01-ASCII码
一般主机地址为0x00;止位。
应答:数据帧
2.3.2 命令—写寄存器数据
应答:
2.3.3 命令接收状态回复
当接收命令过程发生异常时回复命令接收状态。
帧与操作类型回复:最高位为0,bit6-bit0原样返回。