libmodbus在Windows平台下安装与编译与测试

本文详细介绍了在Windows 10上安装libmodbus库的过程,包括从下载、配置到编译的每个步骤,并提供了在VS2019中创建项目和编写测试代码的指导。尽管编译时出现了一个不影响使用的错误,但最终成功生成了modbus.lib和modbus.dll文件,可用于Modbus通信。通过示例代码展示了如何连接到COM2口的Modbus从机并读取寄存器数据。
摘要由CSDN通过智能技术生成

1.下载libmodbus 并解压
链接: https://pan.baidu.com/s/13lgEZ59Dt5M7zmTJNpfKvg?pwd=yzfm 提取码: yzfm

2.进入该目录下libmodbus-master\src\win32
运行configure.js文件,注意打开方式选择这个

在这里插入图片描述
在这里插入打开方式图片描述

出现下图情况表示成功,关闭即可
在这里插入图片描述

3.使用VS2019打开与configure.js文件同目录下的modbus-9.sln文件
打开时出现下图情况点击确定即可
在这里插入图片描述

打开之后编译方式选择Release
在这里插入图片描述
点击本地windows调试器编译,编译之后会出现一个错误
在这里插入图片描述
由于本人才疏学浅,暂时还不知道这个错误的含义,但这个错误并不影响之后编写项目。
这时libmodbus-master\src\win32目录下会生成modbus.lib和modbus.dll两个文件。
4.项目创建
使用VS2019创建一个项目,本人创建的项目名称为test,并使用Windows资源管理器进入这个项目的目录,在此目录下创建一个文件夹用来存放必要的头文件,本人创建的头文件夹为libmodbus。
在这里插入图片描述
5. 将libmodbus-master\src目录下的所有.h文件复制到刚刚创建的用于存放头文件的文件夹中,同时将libmodbus-master\src\win32目录下的config.h文件也复制到用于存放头文件的文件夹中(总共8个)。
在这里插入图片描述
6.将libmodbus-master\src\win32目录下的modbus.lib和modbus.dll两个文件复制到你创建的项目下。
在这里插入图片描述
至此,就可以开始编写cpp文件了,下面是测试代码

#include <iostream>
#include "libmodbus/modbus.h" //这里的文件夹名称要和你创建的用于存放头文件的文件夹名称相同
#pragma comment(lib,"modbus.lib")  //这一步也可以通过Project->properties->linker-
//>input->additional additional dependencies添加用到的lib

using namespace std;
int main()
{
	modbus_t* mb;
	uint16_t tab_reg[10] = { 0 };

	mb = modbus_new_rtu("COM2", 9600, 'N', 8, 1);   //相同的端口只能同时打开一个 
	modbus_set_slave(mb, 1);  //设置modbus从机地址 

	modbus_connect(mb);

	struct timeval t;
	t.tv_sec = 0;
	t.tv_usec = 1000000;   //设置modbus超时时间为1000毫秒 
	modbus_set_response_timeout(mb, (int)&t.tv_sec, (int)&t.tv_usec);


	for (int i = 0; i < 10; i++)
	{
		int regs = modbus_read_registers(mb, 0, 5, tab_reg);
		std::cout << "modbus recevie " << i << ":" << tab_reg[0] << " " << tab_reg[1] << " " << tab_reg[2] << " "
			<< tab_reg[3] << " " << tab_reg[4] << " " << tab_reg[5] << std::endl;
		Sleep(500);
	}
	system("pause");
	return 0;
}

``

运行结果
在这里插入图片描述
参考链接
https://blog.csdn.net/qq_37769473/article/details/80783228

https://blog.csdn.net/weixin_39938635/article/details/105868292?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163465411416780357295275%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=163465411416780357295275&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-1-105868292.pc_search_result_cache&utm_term=win10%E5%AE%89%E8%A3%85mudbus&spm=1018.2226.3001.4187

交叉编译是指将源代码从一种计算机架构编译成另一种不同的计算机架构的过程。在嵌入式系统和跨平台开发中,交叉编译是一项重要的工作。下面我将介绍如何安装测试交叉编译环境。 1. 安装交叉编译工具链 交叉编译工具链是一组工具,包括编译器、链接器、调试器等,用于将源代码编译成目标平台上的可执行文件。在 Linux 系统上,可以使用 apt-get 或者 yum 等包管理器安装交叉编译工具链。例如,如果要编译 ARM 架构的程序,可以使用以下命令安装 arm-linux-gnueabi 工具链: ``` sudo apt-get install gcc-arm-linux-gnueabi ``` 2. 编写交叉编译程序 编写一个简单的 C 语言程序,例如 hello.c,内容如下: ``` #include <stdio.h> int main(void) { printf("Hello, world!\n"); return 0; } ``` 3. 编译交叉编译程序 使用以下命令编译 hello.c 程序: ``` arm-linux-gnueabi-gcc hello.c -o hello ``` 此时,会在当前目录下生成名为 hello 的可执行文件。 4. 将可执行文件复制到目标平台上 将生成的可执行文件复制到目标平台上,例如使用 scp 命令: ``` scp hello user@192.168.1.100:/home/user ``` 其中,user 是目标平台上的用户名,192.168.1.100 是目标平台的 IP 地址,/home/user 是目标平台上的目录。 5. 在目标平台上运行可执行文件 在目标平台上运行可执行文件,例如执行以下命令: ``` ./hello ``` 此时,会在终端上输出 "Hello, world!"。这表明交叉编译环境已经安装成功,并且可用于编译和运行程序。 总结 以上就是交叉编译环境安装测试的步骤。交叉编译是一项非常重要的工作,它可以让我们在不同的平台上开发和运行程序。在实际开发中,需要根据不同的需求选择不同的交叉编译工具链,并且需要在目标平台测试程序是否能够正常运行。
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值