❶ 单片机和组态王怎么通信
组态王通信是分tcp/ip方式,串口方式(rs232,rs485),单片机也采样同样的方式。如串口方式,要设置波特率,数据位数长度,校验位等,两者要一致。更主要的是,组态王通信是有协议的,单片机也必须按这个协议来写程序才行,是很麻烦的,很复杂的。
❷ 请问MCGS组态王和单片机modbus rtu通信,当通信几分钟就失败了,
你可以通过串口工具查看数据帧,看通信中断的时候是什么帧结构,一般能有一个初步的判断
(1)设备回了数据帧,并且是对的,问题出在组态王
(2)设备回了数据帧,是错误的,检查单片机程序
(3)设备没有回数据帧,检查链路或者程序
❸ 组态王与单片机能用自定义通信吗
根据组态王使用手册上面说,用户可以自己开发驱动程序,即可以自定义通信。详见组态王使用手册第六章第四节6.4。
❹ 组态王与单片机通信 怎么才能一次发送多个字
严格点讲,单片机每次只能发送一个字节数据,但完全可以通过循环的方式连续发送多个字节的数据,宏观上就像是一次发送多个字节了。发送数据时,最好采用查询方式连续发送,如果还有其它任务需要同时完成,就得采用中断方式,每次中断发送一个字节。不论什么方式发送,可以定义一个数组,将要发送的数据放在数组里,根据需要定义数组元素的个数,发送时就可以循环发送这个数组就行了,表面上就像是一次发送多个数据了。
❺ 组态王和单片机通信出现如下的问题可能是什么原因呢
考虑一下这个问题:
读取模拟量输入的03功能码(用于兼容组态王)
需要新增一个03功能码应答。
组态王的Modbus RTU驱动会发送一个查询报文。使用功能码03,EIO-S需要应答此报文,如果不应答,组态王会等到超时之后才会执行下一条指令,从而严重影响拖慢执行时间。
01 03 00 00 00 02
组态王发送查询报文:[01] [03] [0000] [0002] [C40B]
[01]:设备地址
[03]:03功能码读取模拟量
[0000]:开始地址
[0002]:要读取的寄存器数量,1个寄存器2个字节,2个寄存器就是需要返回4个字节。
[C40B]:CRC校验
EIO-S应答:[01] [03] [04] [00 00 00 00] [FA 33]
[01]:地址码
[03]:功能码
[04]:返回的数据字节数,发送报文要读取2个寄存器,所以返回4个字节。
[00 00 00 00]:4个数据字节,目前只返回00,以后可以放入温湿度、模数值等。
[FA 33]:CRC校验。
01 03 04 00 00 00 00
❻ 组态王如何发送数据、如何接收单片机发送的数据组态王和单片机之间的地址是怎么定义和连接的
首先要看你需要用什么驱动设备,选准了驱动设备,设置好地址,就可以在数据词典里设置变量,根据协议设置i/o变量,设置放送命令频率,再在画面输出
❼ 组态王怎么和51单片机开发板通讯
组态王不知道提供开发驱动不,好像是不给提供,所以貌似只能改单片机的协议,做个标准的modbus就ok了,到网上去下个资源包什么的,或者自己抄点代码来,改改就好了。