1.QT+ModbusTCP 基于QTcpSocket纯手搓modbustcp协议
QT+ModbusTCP 基于QTcpSocket纯手搓modbustcp协议
一、源码编写缘由
1.发现问题
近期项目需将modbus RTU转换为TCP形式,源码于是源码对原有modbus通讯线程进行重构。起初使用Qt自带的源码葫芦侠登录源码QModbusTcpClient类,顺利重构线程并读取数据,源码但在发送写数据请求时,源码TCP连接会断开。源码经过多次尝试,源码排除从站问题,源码即便直接连接modbusslave也存在同样问题。源码
2.查找问题
为解决问题,源码指标源码 源代码自行编写了一个tcp server,源码抓取QModbusTcpClient写数据的源码报文,与modbuspoll上的源码对比,发现QT中的源码报文比modbuspoll上的多出一部分,推测是通信达源码教学协议错误。
3.解决策略
既然QModbusTcpClient的协议存在问题,决定不使用它。因此,直接利用QTcpSocket手动编写一个ModbusTcp类。
二、中线进场指标源码代码编写
1.协议解析
通过对比modbuspoll上的通信日志和网络上的modbustcp协议分析文章,研究出协议的标准格式。
2.封装函数
共封装了4个函数,分别是写单个线圈、写多个线圈、大麦网前端源码写单个保持寄存器、写多个保持寄存器。具体实现如下:
四个函数中,除了写多个线圈存在问题外,其他均已验证,可正确写入。
最后,将TCP作为一个子线程,线程初始化函数如下:
三、源码下载
模块下载
四、最后的最后再吐槽一下QModbusTcpClient真的很糟糕,根本无法使用。另外,网上的QtModbusTCP资源都无法使用,只有和我一样纯手搓才能解决问题。
2025-01-30 05:43995人浏览
2025-01-30 05:16115人浏览
2025-01-30 04:51193人浏览
2025-01-30 04:422269人浏览
2025-01-30 04:02736人浏览
2025-01-30 03:15842人浏览
中国消费者报福州讯记者张文章)12月1日,福建省市场监管局智慧应用一体化子系统食品安全监督抽查考核学习)系统正式上线。同日,该局发布《关于启用餐饮环节食品安全监督抽查考核学习)系统的通告》,要求福建省
1.??Ʒ??ͼԴ????ô??2.基于改进Deeplabv3+的视频人像背景替换系统源码&教程)3.美图秀秀怎么抠公章?4.一键抠图1:Python实现人像抠图 (Portrait Matting)
1.有人买过小仙炖燕窝吗?价格如何呢?原料真实可靠吗?2.燕窝一盒一般多少钱有人买过小仙炖燕窝吗?价格如何呢?原料真实可靠吗? 小仙炖燕窝作为近年来在鲜炖燕窝领域崭露头角的品牌,受到了许多消费者的