libmodbus是一个自由的软件库,用于使用遵循Modbus协议的设备发送/接收数据。此库可以使用串行端口或以太网连接。
库连接:https://github.com/stephane/libmodbus
下载后,在XXX\libmodbus-master\src\win32中打开vs项目并编译,生成modbus.lib和modbus.dll。
新建c++控制台,将生成的modbus.lib和modbus.dll放入项目文件夹内
将相应的C文件引入源文件。
注意:
1.需要在头文件处添加:
#pragma comment(lib,"ws2_32.lib")
2.在项目–C/C+±-常规–附加包含目录中添加资源环境目录
3.在项目–C/C+±-常规–SDL检查改为“否”
将Version.c的代码,复制粘贴至启动文件内(.cpp),编译运行,如下:
#include <iostream>
#include <stdio.h>
#include <modbus.h>
#pragma comment(lib,"ws2_32.lib")
int main(void)
{
printf("Compiled with libmodbus version %s (%06X)\n", LIBMODBUS_VERSION_STRING, LIBMODBUS_VERSION_HEX);
printf("Linked with libmodbus version %d.%d.%d\n",
libmodbus_version_major, libmodbus_version_minor, libmodbus_version_micro);
if (LIBMODBUS_VERSION_CHECK(2, 1, 0)) {
printf("The functions to read/write float values are available (2.1.0).\n");
}
if (LIBMODBUS_VERSION_CHECK(2, 1, 1)) {
printf("Oh gosh, brand new API (2.1.1)!\n");
}
return 0;
}
可以看到调用成功,具体使用,需要参考./tests文件夹下的历程。
参考1.https://blog.csdn.net/whik1194/article/details/119010616