<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 設(shè)計(jì)應(yīng)用 > 基于KSZ8873的雙網(wǎng)口協(xié)議轉(zhuǎn)換模塊設(shè)計(jì)

          基于KSZ8873的雙網(wǎng)口協(xié)議轉(zhuǎn)換模塊設(shè)計(jì)

          作者:魯錦鋒 何照安 周洪偉 張磊 時(shí)間:2015-11-09 來源:電子產(chǎn)品世界 收藏
          編者按:本文基于Micrel公司推出的3端口10/100M交換芯片KSZ8873,充分利用其價(jià)格低廉、配置方便、應(yīng)用多樣等特點(diǎn),結(jié)合PIC32系列單片機(jī),提出并設(shè)計(jì)出一種RS485/RS232接口轉(zhuǎn)雙網(wǎng)口的模塊,并且軟件實(shí)現(xiàn)了將Modbus-RTU協(xié)議與Modbus-TCP、IEC104協(xié)議的轉(zhuǎn)換。該模塊成功應(yīng)用于光伏并網(wǎng)逆變器中,雙網(wǎng)口設(shè)計(jì)在組網(wǎng)時(shí)采用菊花鏈方式,可節(jié)省了布線成本50%以上,同時(shí)還具有性能穩(wěn)定、獨(dú)立性強(qiáng)、維護(hù)方便等優(yōu)點(diǎn)。

          2 軟件設(shè)計(jì)

          本文引用地址:http://www.ex-cimer.com/article/281884.htm

          2.1 軟件架構(gòu)

            軟件按照分層思路設(shè)計(jì),有驅(qū)動(dòng)層、適配層和應(yīng)用層。如圖2所示。

            驅(qū)動(dòng)層主要完成與硬件相關(guān)的寄存器配置,從硬件寄存器接收數(shù)據(jù),傳入適配層,或從適配層接收數(shù)據(jù),傳給硬件寄存器。

            適配層隔離了應(yīng)用層和驅(qū)動(dòng)層的耦合,實(shí)現(xiàn)Modbus-RTU協(xié)議、Modbus-TCP[3]和IEC104協(xié)議的解析,根據(jù)不同協(xié)議從應(yīng)用層獲取相關(guān)數(shù)據(jù),進(jìn)行格式組幀后,傳入驅(qū)動(dòng)層發(fā)送,或者從驅(qū)動(dòng)層獲取數(shù)據(jù)幀,按照不同協(xié)議解析出有效數(shù)據(jù),傳入應(yīng)用層。

            應(yīng)用層主要完成數(shù)據(jù)存儲和映射功能,把來自于不同協(xié)議的數(shù)據(jù)進(jìn)行綜合,按照一定格式進(jìn)行存儲,并實(shí)時(shí)刷新。

          2.2 軟件流程

            軟件流程如圖3所示。進(jìn)入主函數(shù)后依次進(jìn)行MCU、驅(qū)動(dòng)層、適配層和應(yīng)用層的初始化工作,再進(jìn)入主循環(huán),主循環(huán)共包括3個(gè)子任務(wù),子任務(wù)、子任務(wù)和網(wǎng)口子任務(wù)。每個(gè)子任務(wù)主要完成從驅(qū)動(dòng)層接收并解析數(shù)據(jù)幀,傳入應(yīng)用層;或者從應(yīng)用層獲取實(shí)時(shí)數(shù)據(jù),按照協(xié)議進(jìn)行組幀后,傳入驅(qū)動(dòng)層發(fā)送。

            為了提高軟件執(zhí)行效率和可靠性,采用時(shí)分方式進(jìn)行子任務(wù)調(diào)度,調(diào)度時(shí)間間隔為10ms。系統(tǒng)使用1ms的時(shí)鐘節(jié)拍工作,進(jìn)入主循環(huán)前時(shí)間計(jì)數(shù)器t清零,第10ms調(diào)用子任務(wù),第20ms調(diào)用子任務(wù),第30ms調(diào)用網(wǎng)口子任務(wù),并清零時(shí)間計(jì)數(shù)器t。

          3 組網(wǎng)模式

            菊花鏈?zhǔn)降慕M網(wǎng)模式可以替代原有總線。再增加一條網(wǎng)線,可以實(shí)現(xiàn)環(huán)網(wǎng),起到冗余作用,提高網(wǎng)絡(luò)的可靠性[5]。 如圖4所示。虛線表示增加的網(wǎng)線。

          4 結(jié)束語

            本文介紹了一種基于芯片的模塊,能夠?qū)崿F(xiàn)RS485/總線與網(wǎng)口的物理層轉(zhuǎn)換,再通過軟件實(shí)現(xiàn)不同總線上不同協(xié)議的轉(zhuǎn)換。使用該模塊既可以替代現(xiàn)有RS485總線,也可以在新建系統(tǒng)時(shí)實(shí)現(xiàn)設(shè)備網(wǎng)絡(luò)化工作,并且能夠快速實(shí)現(xiàn)環(huán)網(wǎng),使得網(wǎng)絡(luò)更加可靠,低成本和靈活配置也是其主要特點(diǎn)。

          參考文獻(xiàn):

            [1] Datesheet[M].Micrel,INC,2009

            [2]RMII Specification[M].National,INC,1998

            [3]Modicon Modbus Protocol [M],ABB,INC,2002

            [4]PIC32M5XX/6XX/7XX Datesheet[M].Microchip Technology INC,2009

            [5]王浩, 彭川虎, 王平, 等. 用于數(shù)字化變電站的嵌入式環(huán)網(wǎng)模塊設(shè)計(jì)[J].電測與儀表,2012,49(12):86-91


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();