精心整理
组态王与单片机协议
通讯口设置:
通讯方式:RS-232RS-485RS-422 均可。
波特率:由单片机决定(2400, 4800, 9600and 19200bps)。 字节数据格式:由单片机决定。
起始位
数据位
数据100
异或
若不正确:
40
30
46
2a
2a
37
36
0d
设备地 址15
**
异或
32上位机发送写命令
字头
设备地址
志
数据地址
数据字节数
数据…
异或
CR
精心整理
下位机应答:若正常:
字头
设备地址
##
异或
CR
若不正常:
字头
设备地址
**
异或
CR
例1:写15号仪表,数据地址为15。写数据255,数据类型为字,不打包。组态王所发数据为:
40
30
46
43
35
30
30
30
46
30
32
30
30 46
46
37
34
0d
字头
设备地 址15
标志 写操作 字型 不打包
数据地址15
数据字 节数2
数据255
异或
若正确:
40
30
46
23
23
37
36
0d
字头
设备地 址15
##
异或
若不正确:
40
30
46
2a
2a
37
36
0d
字头
设备地 址15
**
异或
例2:写15号仪表,数据地址为15。写数据65535,数据类型为浮点型,打包。组态王所发数据 为:
40
30
46
43
46
30
30
30
46
30
34
31
30
46
46
46
46
30
30
字头
设备地
址15
标志 写操作 浮点型 打包
数据地址15
数据字
节数4
数摒
65535
30
30
0d
异或
若正确:
40
30
46
23
23
37
36
0d
字头
设备地 址15
##
异或
若不正确:
40
30
46
2a
2a
37
36
0d
字头
设备地 址15
**
异或
:
4字节浮点数=第一字节高4位ASCD码十第一字节低4位ASCII码
十第二字节高4位ASCU码十第二字节低4位ASCII码 十第三字节高4位ASCII码十第三字节低4位ASCII码 十第四字节高4位ASCII码十第四字节低4位ASCII码
第1字节値头4位第2字节低4位餐字节低4位第4字节(氐4位
xxxx fxxxxf xxxx rrxxxxy xxxx
XXXXA XXXX
fxxxx
第1字节高4位第2字节高4位第3字节高4位第4字节高4位
★四字节浮点数格式:
(1)第一字节
第1字节低4位第2字节低4位第3字节低4位第4字节低4位
30
37
43
38
36
36
36
36 |
第1字节高4位第2字节高4位第3字节高4位第4字节高4位
精心整理
(2) 第二字节
(3) 第三字节
(4) 第四字节
注:数符=0
正,数符=1一一负
阶符=0—一正,阶符=1一一负
D7D6D5 〜D0
数符 阶符 阶码
★浮点数可表示范围:
★数符:1位
例:流量积算控制仪表瞬时流量测量值数据= 转换成浮点数:lOO・2io=27?O・7828125=O7i6十C816十6616十6616
-1X232 〜1X232
阶符:1位
阶码:6位
=3 0 ascu 十 3 7 ascii 十 43 ascu 十 3 Sasch+3 6 ascii 十 3 6asch 十 3 6asch+ 小数部份:
第一字节
第二字节
第三字节
□ASCII
??256=??^6=??25I6=
小数部分乘以256
一
|第二字节小俪芬乘以25
整数部价为…三字节
10进制:
怫三字节小 耀数胡;}为第1四字节(両
第四字节
十六进制:
ASCII 码:
3、注:
仪表内部数据为十六进制表示的十进制数。如:实时测量值为500,则用十六进制表 示为1F4H。仪表通讯传输是将上述十六进制数据转化为标准ASCH码(即一字节的 16进制数转化为2个ASCH码——高4位ASCII码卄氐4位ASCII码)。
如:上述数据1F4H (16进制),传输时
通信协议模板(ASCII) 来自淘豆网m.daumloan.com转载请标明出处.