;前言

  qt自带的serialbus 性能不高而且好像是gpl协议所以就自己编译一个libmodbus代替qtmodbus了

项目中经常需要和各式各样的PLC进行通讯,开始的时候是三菱Q系列,用的是MC协议,后面又对接了欧姆龙的PLC,指不定以后会用哪家的PLC,所以考虑到是不是应该换一个通用性比较强的接口协议,可以省去大量时间和精力。
网上搜了一下,发现Modbus算是比较通用的协议了,也搜到了很多资料,因为对C++ 比较熟悉,所以搜的都是C++ 的Modbus资源。正好找到了libmodbus这个开源库,通读了一遍代码,觉得很不错,很强大,所以有了这篇文章。

;下载 msys2 ;

运行 pacman -Syu --noconfirm

pacman -S --noconfirm git wget tar gzip autoconf automake make libtool patch unzip xz bison flex pkg-config

pacman -S --noconfirm mingw-w64-i686-gcc

pacman -S --noconfirm mingw-w64-x86_64-gcc

 

 ;查看pacman安装的包

pacman -Q wget 

 ;测试编译

打开msys2 mingw32 

cd libmodbus源代码目录

./configure && make

 

 ;qt导入libmodbus库即可

 ; 添加libmodbus到项目

    复制config.h 和src下面的源码,template=lib即可

posted on 2024-02-17 21:39  jk0011  阅读(557)  评论(0)    收藏  举报