飞凌全志T527开发板modbus移植使用教程

2024-07-26 13:26:36 浏览数 (2)

交叉编译

进入到源码目录,执行

代码语言:javascript复制
./configure ac_cv_func_malloc_0_nonnull=yes --host=aarch64-none-linux-gnu --enable-static --prefix=/home/feng/文档/development/Linux/application/OK527N/libmodbus-3.1.10/install/

其中–host为交叉编译器的前缀;–prefix为编译结果的目录,需要为绝对路径。之后执行

代码语言:javascript复制
make
make install

编译成功后,就会在install目录下生成三个目录:include、lib、share。我们需要将lib目录移动到开发版的lib目录下

代码语言:javascript复制
scp -r ./install/lib/ root@192.168.33.4:/

移植测试程序

我们这里以random-test-server和random-test-client为例进行测试,其中开发板为server,电脑为client。

开发板

首先进入tests目录下,将random-test-server.c测试程序里面的ctx=modbus_new_tcp(“127.0.0.1”, 1502); 改为 ctx = modbus_new_tcp(NULL, 1502);,即 server 监控所有的 ip 地址,端口是 1502。之后重新执行交叉编译

代码语言:javascript复制
aarch64-none-linux-gnu-gcc -o random-test-server random-test-server.c -L/home/feng/文档/development/Linux/application/OK527N/libmodbus-3.1.10/install/lib -lmodbus -I/home/feng/文档/development/Linux/application/OK527N/libmodbus-3.1.10/install/include/modbus

将得到的random-test-server文件复制到开发板上

代码语言:javascript复制
scp -r ./tests/random-test-server root@192.168.33.4:/home

在开发板上执行程序

代码语言:javascript复制
chmod 777 random-test-server
./random-test-server

电脑端

编译
代码语言:javascript复制
./configure
make
sudo make install
修改测试文件

首先进入tests目录下,将random-test-client.c测试程序里面的ctx = modbus_new_tcp(“127.0.0.1”, 1502); 改为 ctx = modbus_new_tcp(“192.168.33.4”, 1502);,即将服务端的ip地址改为开发板的ip地址,端口是 1502。重新执行make编译

测试

首先在开发板上执行./random-test-server启动服务端程序,之后在电脑客户端执行./random-test-client,运行结果如下:

0 人点赞