组态王与单片机协议
1.通讯口设置:
通讯方式:RS-232,RS-485,RS-422 均可。
波特率: 由单片机决定(2400,4800,9600and19200bps)。
字节数据格式:由单片机决定。
起始位 数据位 校验位 停止位
注意:在组态王中设置的通讯参数如波特率,数据位,停止位,奇偶校验必须与单片机编
程中的通讯参数一致
2.在组态王中定义设备地址的格式
格式:##.#
前面的两个字符是设备地址,范围为 0-255,此地址为单片机的地址,由单片机中的程
序决定 ;
后面的一个字符是用户设定是否打包,“0”为不打包、“1”为打包,用户一旦在定义设备时确
定了打包,组态王将处理读下位机变量时数据打包的工作。
3.在组态王中定义的寄存器格式
寄存器名称 dd 上限 dd 下限 数据类型
Xdd 65535 0 FLOAT/BYTE/UINT
斜体字 dd 代表数据地址,此地址与单片机的数据地址相对应。
注意:在组态王中定义变量时,一个 X 寄存器根据所选数据类型(BYTE,UINT,FLOAT)
的不同分别占用一个、两个,四个字节,定义不同的数据类型要注意寄存器后面的地址,
同一数据区内不可交叉定义不同数据类型的变量。为提高通讯速度建议用户使用连续的数
据区。
例如,
1、在单片机中定义从地址 0 开始的数据类型为 BYTE 型的变量:
则在组态王中定义相应的变量的寄存器为 X0、X1、X2、X3、X4。。。。。。。。,数
据类型为 BYTE,每个变量占一个字节
2、在单片机中定义从地址 100 开始的数据类型为 UINT 型的变量:
则 在 组 态 王 中 定 义 相 应 的 变 量 的 寄 存 器 为
X100、X102、X104、X106、X108。。。。。。。。,数据类型 UINT,每个变量占两
个字节
3、在单片机中定义从地址 200 开始的数据类型为 FLOAT 型的变量:
则在组态王中定义相应的变量的寄存器为 X200、X204、X208、X212。。。。。。。,
数据类型 FLOAT,每个变量占四个字节