赞
踩
目录
1.进到libmodbus/src/win32目录中,实际路径看使用者具体情况
3.使用vs2019打开 modbus-9.sln,确认升级
5.2.1在配置属性=常规-配置类型中,将Debug、Release配置类型均修改为“动态库(.dll)”
5.2.2在配置属性-C/C++-预处理器-预处理器定义中,
5.2.3在配置属性-链接器-输入-附加依赖项,Debug、Release均修改为
5.2.3X64下Debug、Release分别编译即可,注意生成的文件在X64文件夹内
1.新建Qt工程,配置属性-C/C++-附件包含目录,按实际情况添加libModbus相关头文件
2.配置属性-链接器-常规-附加库目录,按实际情况添加libModbus生成的lib
3.如果需要,可以在配置属性-生成事件-生成后事件-命令行中,添加命令,将打印信息输出到Console,方便调试Modbus
本文将libModbus编译经过进行分享,介绍Windows平台下libModbus的编译及使用,基于VS2019。
libModbus官网libmodbus。是遵循开源协议LGPL-2.1-or-later的一款开源软件。请大家自行研判使用条款及风险。
文末有编译好的.dll .lib,方便大家。压缩包解压密码:123。
libModbus位于github,GitHub - stephane/libmodbus: A Modbus library for Linux, Mac OS, FreeBSD and Windows
可以点击链接跳转到CSDN推荐的加速站点下载
也可以直接使用命令下载:git clone https://github.com/stephane/libmodbus.git
Debug编译结果
Release编译结果
Debug修改为
HAVE_CONFIG_H;DLLBUILD;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NONSTDC_NO_DEPRECATE=1;_WINDLL;%(PreprocessorDefinitions)
Release修改为
HAVE_CONFIG_H;DLLBUILD;_CRT_SECURE_NO_DEPRECATE=1;_CRT_NONSTDC_NO_DEPRECATE=1;_WINDLL;%(PreprocessorDefinitions);
ws2_32.lib;%(AdditionalDependencies)
$(ProjectDir)\libModbus\include;
$(ProjectDir)\libModbus\lib;
editbin /SUBSYSTEM:CONSOLE $(OUTDIR)\$(ProjectName).exe
添加头文件引用
- #include "modbus.h"
- #pragma comment(lib, "modbus.lib")
声明变量
modbus_t * pModbus;
往前8个寄存器写入随机数
- pModbus = modbus_new_rtu("COM8", 115200, 'N', 8, 1);
- qDebug() << modbus_set_debug(pModbus, true);
- qDebug() << modbus_rtu_set_serial_mode(pModbus, MODBUS_RTU_RS485);
- qDebug() << modbus_set_slave(pModbus, 1);
- qDebug() << modbus_set_response_timeout(pModbus, 0, 200 * 1000);
- qDebug() << modbus_connect(pModbus);
- uint16_t buffer[8] = { 0 };
-
- qDebug() << "generate random registers";
- for (int i = 0; i < 8; i++)
- {
- buffer[i] = rand();
- qDebug() << buffer[i];
- }
-
- qDebug() << modbus_write_registers(pModbus, 0, 8, buffer);
- qDebug() << modbus_read_registers(pModbus, 0, 8, buffer);
可以看到,随机生成的数据已经成功写入到对应的寄存器
编译结果
编译完成的libModbus
https://download.csdn.net/download/wuqunce/88640535
文章中开发好的简单Demo
https://download.csdn.net/download/wuqunce/88642528
使用的环境为,Qt-opensource-windows-x86-5.9.4,vs2017,qt-vsaddin-msvc2017-2.10.1-rev.2
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。