久久久久久综合网精品,精品乱子伦一区二区三区,AV人妻精品麻豆AV,日本午夜精品理论片A级APP发布||www.jmowf.cn,国产精品无码一区二区三区毛片_国产在线高清伦免费理视频_国产成人无码久久久久毛片_一 级 黄 色 片_国语_99久久久无码国产精品性色戒_99国产精品一区_中文字幕人妻视频永久在线_久久精品色婷婷国产福利_中文字幕人妻在线精品_久久成人国产精品一区二区_亚洲精品中文字幕无乱码||www.tjdly.cn ,午夜国产一级,超国产女人高潮a片免费视频,国产精品女主播主要,黄网站免费高清一级视频,天堂在线资源中文在线观看||www.zhengtaook.cn ,久久综合欧美亚洲第一页,国际国内自拍偷拍视频摄影,精品国产三级AV一区二区,久久久久久久综合网||www.xzaqr.cn

精密電阻
NEWS

自己編寫MODBUS協(xié)議代碼時,坑坑洼洼

早在2008年左右,我就使用Modbus協(xié)議與產(chǎn)品中的其他設備進行通信。請記住,第一個是智能電動機保護器,它充當Modbus從站并與Modbus主站設備通信。
這么多年來,一直沒有使用開源的Modbus協(xié)議代碼,但是我自己編寫的Modbus協(xié)議代碼一直在不斷優(yōu)化,發(fā)現(xiàn)并解決了問題。自己編寫的代碼更易于使用。
可以針對不同平臺優(yōu)化該應用程序,以最大化處理器的性能。在此期間,我踩了一些坑,現(xiàn)在我將得出一些結論:接收到串行端口數(shù)據(jù)后,將重新使用從通過IO端口接收數(shù)據(jù)的時間間隔。
發(fā)送后切換接收的延遲時間。如上圖所示,Td根據(jù)Modbus協(xié)議的規(guī)定,在接收到數(shù)據(jù)之后,發(fā)送之前必須有3.5個字符的間隔。
如果波特率為9600bps,8個數(shù)據(jù)位,1個起始位,1個停止位且沒有奇偶校驗位,則1個字符為10位(對應于1.04ms)和3.5個字符(對應于3.5ms)。考慮到總線上的電容對傳輸延遲的影響,建議在發(fā)送1.7個字符的數(shù)據(jù)后啟用接收。
這次可能會犯一些錯誤,例如:在發(fā)送完最后一個字節(jié)后的發(fā)送完成中斷中,直接控制IO端口以使能485芯片的接收。眾所周知,由于電容器引起的信號延遲,串口數(shù)據(jù)沒有完全發(fā)送到總線,并且485芯片被設置為接收狀態(tài),導致最后幾位數(shù)據(jù)錯誤;不能正確理解傳輸完成中斷和傳輸緩沖區(qū)清空中斷。
傳輸完成中斷之間的區(qū)別通常是指串行端口數(shù)據(jù)已從移位寄存器中的端口發(fā)送出去。但這并不意味著它已經(jīng)發(fā)送到RS485總線。
從MCU的IO端口到RS485總線,還必須考慮隔離光電耦合器,電容器和RS485芯片的延遲。發(fā)送緩沖區(qū)為空的中斷意味著緩沖區(qū)位置已騰空,數(shù)據(jù)可以被緩沖。
此時,最后的數(shù)據(jù)可以在移位寄存器中按順序移出到IO端口。此時,RS485芯片被設置為接收。
數(shù)據(jù)仍在不斷變化。因此,有必要弄清楚所選擇的中斷是發(fā)送完成中斷還是緩沖區(qū)空中斷。
在發(fā)送中斷中,它不能切換為立即接收,因此應延遲一段時間。在中斷中,如果判斷為最后一個字節(jié),則延遲為1.7ms,并且將RS485設置為接收。
定時器不應該延時啟動,定時器資源是非常寶貴的,它應該由大約100us的定時器中斷中的變量來計數(shù),大約需要1.7ms的延時; MODBUS從站設備將響應多長時間? Modbus是一種問答式通信。主設備發(fā)送數(shù)據(jù)后,從設備將響應。
根據(jù)Modbus協(xié)議,從站在3.5個字符后做出響應是合法的。不同的傳感器具有不同的響應時間。
一些不良的傳感器可能要到幾十毫秒后才會響應,而有些傳感器會在3.5ms左右立即響應。有些甚至沒有遵循Modbus協(xié)議,因此在3.5ms之前做出了響應。
這要求主設備在啟用RS485接收后立即進入接收狀態(tài)。如果使用串行端口中斷接收,則應注意中斷操作是否與主程序有關,以及中斷操作是否會影響接收。
每個串行端口數(shù)據(jù)之間的時間間隔Modbus根據(jù)數(shù)據(jù)之間的時間間隔判斷幀消息的結束。必須確保幀消息中前后數(shù)據(jù)之間的間隔不超過3.5個字符。
通常在發(fā)送中斷期間發(fā)送數(shù)據(jù)。為了確保數(shù)據(jù)的完整性和相互排斥的數(shù)據(jù)訪問,有些人喜歡關閉中斷以保護現(xiàn)場。
如果您不小心,這種方法將導致兩次發(fā)送數(shù)據(jù)之間的間隔超過3.5個字符。特別是當波特率較高時,更可能發(fā)生這種情況。
例如,當波特率為38400時,3.5個字符僅約為850us。在發(fā)送串行端口數(shù)據(jù)期間,如果中斷關閉了850us,則Modbus通信將中斷。
如果MCU支持DMA,建議使用DMA +定時器進行數(shù)據(jù)發(fā)送和接收。作為Modbus從站設備,接收數(shù)據(jù)后需要多長時間進行響應?根據(jù)要求

歡迎您的咨詢

大毅電阻代理優(yōu)勢及應用領域詳解 線藝電感的應用與選擇指南 Diodes美臺芯片在電路設計中的應用與優(yōu)勢
信昌電容代理查詢與合作詳解 RF射頻連接器常見類型和應用領域 Everohms天二代理查詢及合作方式
如何設置和使用Viking代理以確保網(wǎng)絡安全 華新科Walsin代理商查詢_聯(lián)系電話_官方授權分銷商 如何選擇合適的代理服務商:以Samwha代理為例
高精密電阻的應用與特性 合金電阻的作用與應用領域 車用電阻的應用與種類
曲折中,Inovance Technology遇到了兩輪查詢。股票發(fā)行能否成功? 時堅獲得了“ 2020年杰出代理商”的稱號。 SIMCom獎 恩智浦LPC1788FBD208微控制器概述,存儲器保護單元和以太網(wǎng)模塊的特征是什么?
更快地將物聯(lián)網(wǎng)應用推向市場:Rutronik提供AVX Ethertronics嵌入式LTE /蜂窩寬帶FPC天線 現(xiàn)在有成為硬件工程師的未來嗎? 阿斯頓·馬丁可能由吉利和CATL中國公司投資:暫無評論
美的也想從事半導體業(yè)嗎? 小米的新舉動:在芯片開發(fā)商中的股份 Atmosic Technologies:即使沒有電池,也可以實現(xiàn)IoT設備的永久電池壽命
芯片短缺! 2020年花費3000億美元進口芯片... 您知道PCB設計過程中需要特別注意的重要因素嗎? 您知道頻譜分析儀的全部8個技術指標嗎?頻譜分析儀如何工作?
龙门县| 金沙县| 饶河县| 五指山市| 长治县| 武冈市| 祁东县| 牙克石市| 新巴尔虎右旗| 竹溪县| 乐都县| 称多县| 平原县| 平陆县| 黄冈市| 高邑县| 洛阳市| 萝北县| 丹巴县| 化隆| 濮阳县| 阿坝县| 通河县| 资阳市| 崇文区| 莲花县| 陆川县| 黎平县| 铁岭县| 临猗县| 会宁县| 岚皋县| 焦作市| 平湖市| 棋牌| 兴山县| 湖州市| 仲巴县| 临沭县| 襄垣县| 张北县|