本人测试环境Manjaro Linux 18.04,协议原理自行百度,主要讲解怎么使用
1.获取源码
git clone https://github.com/stephane/libmodbus.git
2.编译
2.1 ./autogen.sh //生成configure文件
2.2 ./configure --prefix=./install //生成makefile文件,并指定安装路径
2.3 make install //编译安装
3.官方案例
在tests文件夹下有官方提供的测试案例,在两个终端下面执行。
- ./unit-test-server rtu
- ./unit-test-client rtu
要用这些案例做测试,前置条件时有两个串口设备并已经进行连接,本人用了两个USB转UART进行连接;
通过dmseg | grep tty*可以查看获得的串口设备为ttyUSB0,ttyUSB1。
有一个串口打不开没有权限的坑
sudo vim /etc/udev/rules.d/70-ttyusb.rules 或 切换至root后键入vi /etc/udev/rules.d/70-ttyusb.rules
增加如下内容:
KERNEL=="ttyUSB[0-9]*",M