目前英創公司提供ModBus通訊協議軟件運行于WinCE及Linux環境下,均是以C函數加靜態庫(modbus.lib或libmodbus.a文件)的形式提供給客戶。隨著越來越多的客戶的使用,最近我們將modus通訊協議,特別是主控協議軟件(簡稱modbus_Master),以動態庫(modbus_Master.dll或libmbusmaster.so文件)的形式預裝到英創嵌入式工控主板內核系統中,以方便客戶應用程序的調用。預裝Modbus協議的工控主板包括ESM928x、ESM335x、ESM6800、ESM6802等型號。
Modbus協議動態庫各個接口函數定義在modbus_Master.h,與原來的靜態庫保持不變,相應各個API函數的說明請參見英創網站技術天地文章《Wince下的Modbus主控通訊協議》、《英創嵌入式Linux工控主板支持Modbus主控協議軟件》。這次的更新在RS485通訊模式中,還增加了可以配置RTS硬件方向控制的功能,實現該功能并沒有增加任何函數,只是調整打開函數mbusMaster_OpenPortProtocol(…)中所帶參數 pPortName即可。
選擇RS485通訊模式,其格式如下:
_T( "COM3:9600-8-1-0 RS485" );
如果需要用GPIO來作為RS485的RTS硬件方向控制,以GPIO8為例,其參數格式調整如下:
_T( "COM3:9600-8-1-0 RS485-GPIO8" );
應用程序的開發在Linux環境下保持不變,參考《英創嵌入式Linux工控主板支持Modbus主控協議軟件》一文即可。在WinCE環境下需要做以下調整:
WinCE應用需要重新在開發主機上更新以下安裝文件后重新安裝SDK,
EM928x_SDK.msi
ESM335X_SDK.msi
ESM6802_SDK.msi
SDK成功安裝后,開發主機的環境中就自帶了modbus對應的文件:
modus_Master.h
modus_Master.lib
應用程序中需要包含#include "modbus_Master.h",并將link設置中加入modbus_Master.lib,用于指定附加的Modbus庫的名稱,如:
編譯后的應用程序在板卡上運行時會自動加載modbus動態庫,相比原來靜態庫,應用程序的大小明顯變小。
后續供貨的ESM系列主板中均預裝modbus協議,原有的靜態庫模式也可繼續正常運行。
-
Linux
+關注
關注
87文章
11456瀏覽量
212756 -
嵌入式主板
+關注
關注
7文章
6096瀏覽量
36136
發布評論請先 登錄
Modbus轉Profinet網關:工控機的“逆襲神器”
安科瑞AWT100-DP 無線通訊終端,支持串口MODBUS RTU協議

中科創達榮獲2024年軟件和信息技術服務優秀企業
串口屏Modbus通訊協議詳解
智能工廠升級:Modbus設備與OPC UA協議的無縫對接

Profibus-PA轉Modbus-RTU協議網關(Profibus-PA轉Modbus-RTU)

DeviceNet轉Modbus-TCP協議轉化網關通訊解決方案

EtherNet IP轉Modbus-RTU協議轉化網關經典通訊案例

ModBus Scan32模擬軟件的使用方法
Profibus協議轉Modbus協議網關模塊在船舶中的應用

Modbus協議轉Profibus協議網關模塊連PLC與激光發射器通訊

Modbus協議轉Profibus協議網關接溫控表與PLC通訊

Modbus協議轉Profinet協議網關與氣體監測系統配置案例

通訊協議轉換Modbus轉Profinet網關

評論