STM32F103移植Freemodbus協(xié)議實(shí)現(xiàn)MODBUS 從機(jī)協(xié)議,代碼可直接使用.
標(biāo)簽: stm32 移植 freemodbus
上傳時(shí)間: 2022-04-19
上傳用戶:
周立功RS485協(xié)議指南,RS485選型及應(yīng)用指南。 1 章 RS-485 選型及應(yīng)用指南 .........................................................................1 1.1 RS-232/422/485 標(biāo)準(zhǔn) ...............................................................................................1 1.1.1 RS-232 標(biāo)準(zhǔn) .....................................................................................................2 1.1.2 RS-422/485 標(biāo)準(zhǔn) ..............................................................................................2 1.2 RS-485/RS-422 芯片................................................................................................5 1.2.1 增強(qiáng)型低功耗半雙工 RS-485 收發(fā)器-SP481E/SP485E ..............................7 1.2.2 1/10 單位負(fù)載 RS-485 收發(fā)器-SP481R/SP485R .....................................10 1.2.3 +3.3V 低功耗半雙工 RS-485 收發(fā)器-SP3481/SP3485..............................13 1.2.4 增強(qiáng)型低功耗全雙工 RS-422 收發(fā)器-SP490E/SP491E ............................15 1.2.5 +3.3V 低功耗全雙工 RS-422 收發(fā)器-SP3490/SP3491..............................20 1.3 RS-485 接口電路 ...................................................................................................22 1.3.1 基本 RS-485 電路...........................................................................................22 1.3.2 隔離 RS-485 電路...........................................................................................23 1.3.3 上電抑制電路.................................................................................................24 1.3.4 RS-485 自動(dòng)換向電路....................................................................................24 1.4 RS-485 通訊協(xié)議 ...................................................................................................25 1.4.1 ModBus 協(xié)議(RTU 模式)...............................................................................25 1.4.2 多功能電能表通訊規(guī)約(DL/T645-1997) ......................................................27 1.5 RS-485 程序設(shè)計(jì) ...................................................................................................28 1.5.1 RS-485 接口電路............................................................................................28 1.5.2 通訊規(guī)約.........................................................................................................28 1.5.3 程序設(shè)計(jì)流程圖.............................................................................................29 1.5.4 數(shù)據(jù)接收部分.................................................................................................29 1.5.5 命令執(zhí)行部分.................................................................................................29 1.5.6 數(shù)據(jù)發(fā)送部分.................................................................................................30 1.5.7 RS-485 程序清單............................................................................................31 1.6 RS-485 應(yīng)用要點(diǎn) ...................................................................................................38 1.6.1 合理選用芯片.................................................................................................38 1.6.2 終端匹配電阻.................................................................................................39 1.6.3 應(yīng)用層通信協(xié)議.............................................................................................39 1.6.4 3V-5V 系統(tǒng)的連接.........................................................................................39 1.6.5 網(wǎng)絡(luò)節(jié)點(diǎn)數(shù).....................................................................................................40 1.6.6 節(jié)點(diǎn)與主干距離.............................................................................................40 1.6.7 RS-485 系統(tǒng)的常見(jiàn)故障及處理方法............................................................40 1.6.8 RS-422 與 RS-485 的網(wǎng)絡(luò)拓樸 .....................................................................41 1.6.9 RS-422 與 RS-485 的接地問(wèn)題 .....................................................................41 1.6.10 RS-422 與 RS-485 的瞬態(tài)保護(hù) .....................................................................42 1.7 參考文獻(xiàn).................................................................................................................43 廣州周立功單片機(jī)發(fā)展有限公司 Tel:(020)38730977 38730977 Fax:38730925 http://www.zlgmcu.通常的微處理器都集成有 1 路或多路硬件 UART 通道,可以非常方便地實(shí)現(xiàn)串行通訊。 在工業(yè)控制、電力通訊、智能儀表等領(lǐng)域中,也常常使用簡(jiǎn)便易用的串行通訊方式作為數(shù)據(jù) 交換的手段。 但是,在工業(yè)控制等環(huán)境中,常會(huì)有電氣噪聲干擾傳輸線路,使用 RS-232 通訊時(shí)經(jīng)常 因外界的電氣干擾而導(dǎo)致信號(hào)傳輸錯(cuò)誤;另外,RS-232 通訊的最大傳輸距離在不增加緩沖 器的情況下只可以達(dá)到 15 米。為了解決上述問(wèn)題,RS-485/422 通訊方式就應(yīng)運(yùn)而生了。 本章將詳細(xì)介紹 RS-485/422 原理與區(qū)別、元件選擇、參考電路、通訊規(guī)約、程序設(shè)計(jì) 等方面的應(yīng)用要點(diǎn),以及在產(chǎn)品實(shí)踐中總結(jié)出的一些經(jīng)驗(yàn)、竅門(mén)。
上傳時(shí)間: 2022-04-27
上傳用戶:qingfengchizhu
If register should be written or read.This value is passed to the calback functions which support either reading or writing register values. Writing means that the application registers should be updated and reading means that the modbus protocol stack needs to know the current register values.See also: eMBRegHoldingCB(), eMBRegCoilsCB(), eMBRegDiscreteCB() and eMBReglnputCB().Enumeration values: MB_REG_READ Read register values and pass to protocol stack.MB_REG_WRITE Update register values.Note: Note all ports implement this function.A port which wants to get an callback must define the macro MB_PORT_HAS_CLOSE to 1.Returns: If the resources where released it return eMBErrorCode:: MB_ENOERR. If the protocol stack is not in the disabled state it returns eMBErrorCode:: MB_EILLSTATE.Examples: LINUX/demo.c, MCF5235TCP/demo.c, STR71XTCP/demo.c, WIN32/demo. cpp, and WIN32TCP/demo. cpp.his function disables processing of Modbus frames.Returns: If the protocol stack has been disabled
標(biāo)簽: FreeModbus
上傳時(shí)間: 2022-05-31
上傳用戶:
串口STM32modbus程序,測(cè)試可以用,
上傳時(shí)間: 2022-06-10
上傳用戶:20125101110
Freemodbus RTU在stm32上的移植分析最近用到free modbus,需要在stm32上進(jìn)行移植,以作modbus-RTU之用,現(xiàn)成協(xié)議的東西用起來(lái)很方便,現(xiàn)成源碼很快就可以為設(shè)計(jì)者所用,也是當(dāng)初制定標(biāo)準(zhǔn)的初衷吧。首先下載最新的modbus源碼,所謂技術(shù)更新?lián)Q代的比較快,用就用最新的東西,協(xié)議嘛也要下載最新的,下載最新的版本freemodbus-v1.5,下載最新的協(xié)議不僅可以防止被人改動(dòng)導(dǎo)致自己做無(wú)用功,保持原生態(tài)也可以很好的與制定者進(jìn)行交流。解壓freemodbus-v1.5,目錄結(jié)構(gòu)很清晰,主要有四個(gè)文件件,分別是demo,modbus,tools,doc.其中tools為上位機(jī)測(cè)試modbus程序,doc為一些說(shuō)明文件先不討論。有用的是demo以及modbus.打開(kāi)demo,沒(méi)有看到stm32的工程文件,有一個(gè)叫BARE的文件夾,是一些不包括任何處理器的部分源代碼,我們就用這個(gè)建立工程文件。為了給以后移植modbus-TCP帶來(lái)方便,這里直接打開(kāi)之前測(cè)試好的基于ENC28168的LwP的stm32工程,在其中導(dǎo)入各個(gè)文件。
標(biāo)簽: freemodbus stm32
上傳時(shí)間: 2022-06-20
上傳用戶:d1997wayne
STM32 RS485串口通訊實(shí)驗(yàn) ,源代碼,實(shí)現(xiàn),stm32F103通過(guò)串口與RS485芯片通信,完成uart轉(zhuǎn)484通訊,額外modbus協(xié)議實(shí)現(xiàn)通信
上傳時(shí)間: 2022-06-21
上傳用戶:
FreeModbus學(xué)習(xí)筆記一、FreeModbus簡(jiǎn)介FreeMODBUS一個(gè)奧地利人寫(xiě)的Modbus協(xié)議。它是一個(gè)針對(duì)嵌入式應(yīng)用的一個(gè)免費(fèi)(自由)的通用MODBUS協(xié)議的移植。Modbus是一個(gè)工業(yè)制造環(huán)境中應(yīng)用的一個(gè)通用協(xié)議。Modbus通信協(xié)議棧包括兩層:Modbus應(yīng)用層協(xié)議,該層定義了數(shù)據(jù)模式和功能;另外一層是網(wǎng)絡(luò)層。FreeMODBUS提供了RTU/ASCII傳輸模式及TCP協(xié)議支持。FreeModbus遵循BSD許可證,這意味著用戶可以將FreeModbus應(yīng)用于商業(yè)環(huán)境中。目前版本FreeModbus-V1.5提供如下的功能支持:二、FreeModbus對(duì)硬件的需求FreeModbus 協(xié)議對(duì)硬件的需求非常少——基本上任何具有串行接口,并且有一些能夠容納modbus數(shù)據(jù)幀的RAM的微控制器都足夠了。◆一個(gè)異步串行接口,能夠支持接收緩沖區(qū)滿和發(fā)送緩存區(qū)空中斷。一個(gè)能夠產(chǎn)生RTU傳輸所需要的t3.5字符超時(shí)定時(shí)器的時(shí)鐘。對(duì)于軟件部分,僅僅需要一個(gè)簡(jiǎn)單的事件隊(duì)列。在使用操作系統(tǒng)的處理器上,可通過(guò)單獨(dú)定義一個(gè)任務(wù)完成Modbus時(shí)間的查詢(xún)。小點(diǎn)的微控制器往往不允許使用操作系統(tǒng),在那種情況下,可以使用一個(gè)全局變量來(lái)實(shí)現(xiàn)該事件隊(duì)列(AtmelAVR移植使用這種方式實(shí)現(xiàn))。實(shí)際的存儲(chǔ)器需求決定于所使用的Modbus模塊的多少。下表列出了所支持的功能編譯后所需要的存儲(chǔ)器。ARM是使用GNUARM編譯器3.4.4使用-01選項(xiàng)得到的。AVR項(xiàng)數(shù)值是使用WinAVR編譯器3.4.5使用-Os選項(xiàng)編譯得到的。
標(biāo)簽: freemodbus
上傳時(shí)間: 2022-06-24
上傳用戶:
摘要:介紹了以FreeModbus協(xié)議找在嵌入式搶占實(shí)時(shí)操作系統(tǒng)μC/OS-l的STM32平臺(tái)上,成功實(shí)現(xiàn)了Modbus協(xié)議的移植。通過(guò)詳細(xì)分析FreeModbus協(xié)議花并編寫(xiě)STM32F103VET6微處理器的底層驅(qū)動(dòng),成功實(shí)現(xiàn)了工業(yè)Modbus協(xié)議RTU和ASCll兩種模式的通信功能。測(cè)試結(jié)果表明,在實(shí)際工業(yè)生產(chǎn)控制和儀表開(kāi)發(fā)中,應(yīng)用Freemodbus協(xié)議,完全符合工業(yè)數(shù)據(jù)采集、實(shí)時(shí)控制和數(shù)據(jù)處理等廠級(jí)重復(fù)性和精確度要求,在一定程度上降低了工業(yè)儀表開(kāi)發(fā)的周期及成本。關(guān)鍵詞:實(shí)時(shí)操作系統(tǒng),uC/OS-ll,F(xiàn)reeModbus,Modbus協(xié)議,STM32Abstract:This paper introduces FreeModbus stack transplanted to the STM32 platform which has been embedded in the preemptive real-time operating system uC/OS-ll,in order that the transplantation of the Modbus protocol is successfuly im-plemented.The FreeModbus stack is analyzed in detail and STM32F103VET6 microprocessor underlying driver is writed,so that the two Modbus industrial communication function RTU and ASCll are successfully realized.Keywords:time operating system,uC/OS-ll,.FreeModbus,Modbus協(xié)議,STM32
標(biāo)簽: freemodbus 通信協(xié)議
上傳時(shí)間: 2022-06-25
上傳用戶:
基于STM32F407平臺(tái)開(kāi)發(fā),使用昆侖通態(tài)觸摸屏,分別實(shí)現(xiàn)了昆侖組態(tài)界面程序,還包括單片機(jī)下位機(jī)程序,資料經(jīng)測(cè)試合格
上傳時(shí)間: 2022-07-01
上傳用戶:
LabVIEW在儀器控制方面,還是很有優(yōu)勢(shì)的,把你儀器給你,讀懂指令,然后估計(jì)半小時(shí)就可以編寫(xiě)好一個(gè)完整的儀器控制系統(tǒng)。從儀器配置到數(shù)據(jù)發(fā)送,數(shù)據(jù)接收,到數(shù)據(jù)生成報(bào)表。如果使用其他語(yǔ)言,例如VB,VC之類(lèi)的,寫(xiě)過(guò)儀器控制的同學(xué)來(lái)說(shuō),這個(gè)問(wèn)題,寫(xiě)個(gè)界面,就要寫(xiě)半天,還得什么進(jìn)制轉(zhuǎn)換啊,各種操作,麻煩多了。但是,如果你采用LabVIEW,這些問(wèn)題,都是小兒科了。所以,你想做儀器控制,選擇LabVIEW吧,這樣,你將節(jié)省很多很多時(shí)間。到現(xiàn)在為止,我寫(xiě)過(guò)好多個(gè)儀器控制的,比如keithley20002400萬(wàn)用表,Ruska7250壓力計(jì)等等,還有很多利用MODBUS總線通訊的儀器。常見(jiàn)的儀器通訊協(xié)議大概就SCPI,MODBUS等等,當(dāng)然還有自定義的,搞過(guò)單片機(jī)和上位機(jī)的,應(yīng)該都比較熟悉,可以自己定義協(xié)議,然后發(fā)命令給單片機(jī),單片機(jī)回送數(shù)據(jù)。歸結(jié)起來(lái),都是使用的VISA,使用LabVIEW的VISA驅(qū)動(dòng)來(lái)編程還是很方便的。
上傳時(shí)間: 2022-07-11
上傳用戶:
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1