libmodbus 交叉編譯及安裝測試使用

一、下載libmodbus 庫

在libmodbus 官網下載最新的libmodbus 庫:

https://libmodbus.org/download/

  • 編譯
  1. 解壓壓縮包

       tar -xvzf libmodbus-3.1.6.tar.gz

     2. 進入解壓後的libmodbus-3.1.6 目錄,然後創建安裝目錄

       cd libmodbus-3.1.6

       mkdir _install

    3.編譯

./configure --build=i686 --host=arm-hisiv500-linux- --prefix=/home/xiaogang.lu/work_space/libmodbus/libmodbus-3.1.6/__install

./configure --build=i686 --host=arm CC=arm-hisiv500-linux- --prefix=/home/xiaogang.lu/work_space/libmodbus/libmodbus-3.1.6/__install

 

make

make install

  • 安裝

將編譯好的安裝包,安裝到編譯服務器上邊設置好環境變量。

1)將_install 下的文件拷貝到/opt/hisi-linux 建立libmodbus 目錄,然後修改lib/pkgconfig/libmodbus.pc 文件。

2)Prefix 路徑一定要對應,libmodbus 名字要記住,後面makefile 調用時要與這個名字一樣。

3)修改環境變量:

vi /etc/profile

4)生效環境變量:

source /etc/profile

查看:export

 

  • 測試

1)在代碼中調用引用libmodbus 庫,修改makefile

 

 

添加測試代碼到工程,或者單獨自己編譯應用程序。這裏我是添加到工程裏面的,將test_modbus.c 添加進去。

 

編譯,然後nfs mount ,執行可執行程序。

 

2)配置modbus slave

 

注意:波特率,Slave ID 要一一對應。打開的串口設備UART1 /dev/ttyAMA1 一定要有。還有必須保證485硬件串口通信已接通。

3)測試結果:

可以看到對應的在測試程序中可以收到modbus 發過來的寄存器數值。

歡迎關注,交流更多嵌入式Linux ,開源開發。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章