伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

簡(jiǎn)單認(rèn)識(shí)libmodbus開(kāi)發(fā)庫(kù)

瑞薩嵌入式小百科 ? 來(lái)源:瑞薩MCU小百科 ? 2024-11-13 15:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

第11章 libmodbus剖析與編程

11.1libmodbus開(kāi)發(fā)庫(kù)

11.1.1 功能概要

libmodbus是一個(gè)免費(fèi)的跨平臺(tái)Modbus庫(kù),支持RTU和TCP,遵循LGPL V2.1+協(xié)議,兼容Linux、Mac OS X、FreeBSD、QNX和Windows等操作系統(tǒng)。它可通過(guò)串口或TCP網(wǎng)絡(luò)與符合Modbus協(xié)議的設(shè)備發(fā)送/接收數(shù)據(jù),方便開(kāi)發(fā)者構(gòu)建應(yīng)用程序或?qū)odbus通信集成到設(shè)備中。

作為開(kāi)源軟件,還可以從GitHub網(wǎng)站獲取最新版本的代碼。

11.1.2 源碼獲取

libmodbus的源碼不斷更新,本教程選擇版本v3.1.10。

如下圖下載:

c3cd4996-a174-11ef-93f3-92fbcf53809c.png

本源碼也放在網(wǎng)盤(pán)中如下目錄里:

c3d90d44-a174-11ef-93f3-92fbcf53809c.png

解壓后,簡(jiǎn)單查看源代碼根目錄的構(gòu)成:

①doc目錄:libmodbus庫(kù)的各API接口說(shuō)明文檔。

②m4目錄:存放GNU m4文件,在這里對(duì)理解代碼沒(méi)有意義,可忽略。

③src目錄:全部libmodbus源文件。

tests目錄:包含自帶的測(cè)試代碼,其他文件對(duì)理解源代碼關(guān)系不大,可以暫時(shí)忽略。

圖6-1 解壓libmodbus源代碼:

c3f0fc06-a174-11ef-93f3-92fbcf53809c.png

進(jìn)一步展開(kāi)src代碼目錄,如圖6-3所示:

圖6-2 libmodbus源碼構(gòu)成:

c3f89c7c-a174-11ef-93f3-92fbcf53809c.png

各文件作用如下:

win32:定義在Windows下使用Visual Studio編譯時(shí)的項(xiàng)目文件和工程文件以及相關(guān)配置選項(xiàng)等。其中,modbus-9.sln默認(rèn)使用Visual Studio 2008。

Makefile.am:Makefile.am是Linux下AutoTool編譯時(shí)讀取相關(guān)編譯參數(shù)的配置文件,用于生成Makefile文件,因?yàn)橛糜贚inux下開(kāi)發(fā),所以在這里暫時(shí)忽略。

modbus.c:核心文件,實(shí)現(xiàn)Modbus協(xié)議層,定義共通的Modbus消息發(fā)送和接收函數(shù)各功能碼對(duì)應(yīng)的函數(shù)。

modbus.h:libmodbus對(duì)外暴露的接口API頭文件。

modbus-data.c:數(shù)據(jù)處理的共通函數(shù),包括大小端相關(guān)的字節(jié)、位交換等函數(shù)。

modbus-private.h:libmodbus內(nèi)部使用的數(shù)據(jù)結(jié)構(gòu)和函數(shù)定義。

modbus-rtu.c:通信層實(shí)現(xiàn),RTU模式相關(guān)的函數(shù)定義,主要是串口的設(shè)置、連接及消息的發(fā)送和接收等。

modbus-rtu.h:RTU模式對(duì)外提供的各API定義。

modbus-rtu-private.h:RTU模式的私有定義。

modbus-tcp.c:通信層實(shí)現(xiàn),TCP模式下相關(guān)的函數(shù)定義,主要包括TCP/IP網(wǎng)絡(luò)的設(shè)置連接、消息的發(fā)送和接收等。

modbus-tcp.h:定義TCP模式對(duì)外提供的各API定義。

modbus-tcp-private.h:TCP模式的私有定義。

modbus-version.h.in:版本定義文件。

11.1.3 libmodbus與應(yīng)用程序的關(guān)系

libmodbus是一個(gè)免費(fèi)的跨平臺(tái)支持RTU和TCP的Modbus開(kāi)發(fā)庫(kù),借助于libmodbus發(fā)庫(kù)能夠非常方便地建立自己的應(yīng)用程序或者將Modbus通信協(xié)議嵌入單體設(shè)備libmodbus開(kāi)發(fā)庫(kù)與應(yīng)用程序的基本關(guān)系如圖6-4所示。

圖6-3 應(yīng)用程序與libmodbus的關(guān)系:

c40758c0-a174-11ef-93f3-92fbcf53809c.png

在對(duì)libmodbus的接口及代碼框架簡(jiǎn)單了解之后,不妨再深入細(xì)節(jié)一探究竟,看看libmodbus都實(shí)現(xiàn)了哪些基礎(chǔ)功能,以及源代碼中對(duì)Modbus各功能碼和消息頓是如何包裝的。具體內(nèi)容請(qǐng)參看下一章。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • MODBUS
    +關(guān)注

    關(guān)注

    28

    文章

    2492

    瀏覽量

    83605
  • LibModbus
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    7644
  • 開(kāi)發(fā)庫(kù)
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    4943
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    第6章_libmodbus使用

    libmodbus是一個(gè)免費(fèi)的跨平臺(tái)支持RTU和TCP的Modbus庫(kù),遵循LGPL V2.1+協(xié)議。libmodbus支持Linux、Mac Os X、FreeBSD、QNX和Windows等
    的頭像 發(fā)表于 06-29 14:36 ?5430次閱讀
    第6章_<b class='flag-5'>libmodbus</b>使用

    【米爾-瑞薩RZ/G2UL開(kāi)發(fā)板】3.libmodbus移植使用

    libmodbus簡(jiǎn)介 libmodbus是一個(gè)用于實(shí)現(xiàn)Modbus通信協(xié)議的開(kāi)源庫(kù)。Modbus是一種在工業(yè)自動(dòng)化領(lǐng)域廣泛使用的通信協(xié)議,libmodbus
    發(fā)表于 02-02 23:49

    【米爾-全志T113-i開(kāi)發(fā)板試用】移植libmodbus庫(kù)到米爾-全志T113-i開(kāi)發(fā)

    申請(qǐng)米爾-全志T113-i開(kāi)發(fā)板試用的很大一個(gè)原因是想測(cè)試開(kāi)發(fā)板在工業(yè)領(lǐng)域的應(yīng)用,modbus作為工業(yè)領(lǐng)域的一個(gè)重要協(xié)議,那好就移植libmodbus庫(kù)。 一、源碼下載
    發(fā)表于 03-05 22:31

    【龍芯2K0300蜂鳥(niǎo)板試用】+4.libmodbus移植

    1.libmodbus簡(jiǎn)介 libmodbus是一個(gè)用于實(shí)現(xiàn)Modbus通信協(xié)議的開(kāi)源庫(kù)。Modbus是一種在工業(yè)自動(dòng)化領(lǐng)域廣泛使用的通信協(xié)議,libmodbus
    發(fā)表于 08-18 18:40

    【幸狐Omni3576邊緣計(jì)算套件試用體驗(yàn)】移植libmodbus庫(kù)到Omni3576開(kāi)發(fā)

    modbus作為工業(yè)領(lǐng)域的一個(gè)重要協(xié)議,那好就移植libmodbus庫(kù)并測(cè)試。 一、源碼下載&編譯 ibmodbus官網(wǎng)是libmodbus,首頁(yè)就是個(gè)很霸氣的標(biāo)語(yǔ),copy過(guò)來(lái)
    發(fā)表于 05-19 22:48

    libmodbus使用ubuntu系統(tǒng)

    libmodbus使用ubuntu系統(tǒng)使用libmodbusarm-linux使用libmodbus解壓安裝移植編譯modbus從機(jī)模擬ubuntu系統(tǒng)使用libmodbusubuntu系統(tǒng)可以直接
    發(fā)表于 11-04 07:57

    基于select操作的libmodbus庫(kù)

    libmodbus庫(kù)從軟件包里啟用, libmodbus是基于select操作的,依賴于文件系統(tǒng)和libc,需要在rt-thread中開(kāi)啟對(duì)應(yīng)的支持。一開(kāi)始以為作為主站時(shí),有函數(shù)可以自動(dòng)的指定讀取
    發(fā)表于 01-11 08:13

    Modbus實(shí)際項(xiàng)目—libmodbus驅(qū)動(dòng)庫(kù)的使用

    Modbus驅(qū)動(dòng)庫(kù),來(lái)實(shí)現(xiàn)對(duì)從設(shè)備的讀寫(xiě)。當(dāng)然,也可以直接使用別人寫(xiě)好的Modbus驅(qū)動(dòng)庫(kù),比如libmodbus,本文將介紹如何使用libmodbus驅(qū)動(dòng)
    發(fā)表于 10-28 14:33

    【飛凌i.MX9352開(kāi)發(fā)板試用】 + libmodbus移植 測(cè)試 485接口

    和調(diào)試Modbus通信。由于其開(kāi)源性質(zhì)和跨平臺(tái)支持,libmodbus成為了工業(yè)自動(dòng)化領(lǐng)域中廣泛使用的Modbus庫(kù)之一。 i.MX9352開(kāi)發(fā)板上已經(jīng)設(shè)計(jì)了兩個(gè)RS485接口且電磁兼容電路設(shè)計(jì)得很到位
    發(fā)表于 06-14 12:36

    【悟空派H3開(kāi)發(fā)板免費(fèi)體驗(yàn)】4、安裝libmodbus庫(kù)

    做的項(xiàng)目需要和stm32進(jìn)行串口通信,隨選用Modbus_RTU協(xié)議。以下為wukunpi安裝libmodbus庫(kù)的步驟。 下載源碼 可以直接下載附件 *附件
    發(fā)表于 10-25 01:29

    libmodbus之嵌入式Linux使用及測(cè)試

    libmodbus使用ubuntu系統(tǒng)使用libmodbusarm-linux使用libmodbus解壓安裝移植編譯modbus從機(jī)模擬ubuntu系統(tǒng)使用libmodbusubuntu系統(tǒng)可以直接
    發(fā)表于 11-01 16:57 ?16次下載
    <b class='flag-5'>libmodbus</b>之嵌入式Linux使用及測(cè)試

    簡(jiǎn)單認(rèn)識(shí)無(wú)源器件

    簡(jiǎn)單認(rèn)識(shí)無(wú)源器件
    的頭像 發(fā)表于 01-12 09:56 ?1319次閱讀
    <b class='flag-5'>簡(jiǎn)單</b><b class='flag-5'>認(rèn)識(shí)</b>無(wú)源器件

    簡(jiǎn)單認(rèn)識(shí)變壓器

    簡(jiǎn)單認(rèn)識(shí)變壓器
    的頭像 發(fā)表于 01-25 10:05 ?1540次閱讀
    <b class='flag-5'>簡(jiǎn)單</b><b class='flag-5'>認(rèn)識(shí)</b>變壓器

    移植libmodbus庫(kù)到米爾-全志T113-i開(kāi)發(fā)

    測(cè)試開(kāi)發(fā)板在工業(yè)領(lǐng)域的應(yīng)用,modbus作為工業(yè)領(lǐng)域的一個(gè)重要協(xié)議,那好就移植libmodbus庫(kù)
    的頭像 發(fā)表于 03-05 22:37 ?4553次閱讀
    移植<b class='flag-5'>libmodbus</b><b class='flag-5'>庫(kù)</b>到米爾-全志T113-i<b class='flag-5'>開(kāi)發(fā)</b>板

    libmodbus源碼框架分析

    libmodbus作為一個(gè)優(yōu)秀且免費(fèi)開(kāi)源的跨平臺(tái)支持RTU 和 TCP模式的Modbus開(kāi)發(fā)庫(kù),非常值得大家借鑒和學(xué)習(xí)。本章對(duì)libmodbus源代碼進(jìn)行閱讀和分析。
    的頭像 發(fā)表于 11-21 13:47 ?3054次閱讀
    <b class='flag-5'>libmodbus</b>源碼框架分析