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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種基于MODBUS總線高壓軟起動裝置液晶顯示界面的

          一種基于MODBUS總線高壓軟起動裝置液晶顯示界面的

          作者: 時間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

          4.jpg

          3 MODBUS通訊應(yīng)用

          下面是基于單片機(jī)MSP430F149為主芯片的高壓軟起動裝置液晶操控板,以此為例來說明MODBUS通訊的應(yīng)用。MODBUS通訊主設(shè)備是DSP控制器,從設(shè)備是高壓軟起動裝置液晶操控板。

          3.1 液晶操控板MODBUS通訊測試碼

          /*****************************MODBUS通訊測試碼*****************************

          召喚發(fā)送:

          00 06

          00 00 00 0C 1E 88

          電壓、電流監(jiān)測功能:

          00 03

          1C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0D 8D

          故障顯示功能:

          00 02

          18 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 20 34

          *****************************MODBUS通訊測試碼*****************************/

          2:對以上測試碼分別進(jìn)行說明:

          (1):召喚發(fā)送,參數(shù)設(shè)置功能:即控制器(DSP)與液晶屏(430)之間的通訊,是雙向的。

          00 06

          00 00 00 0C 1E 88

          以上這段代碼是DSP傳給430的召喚代碼,含義(代碼從左到右)是:00:設(shè)備代碼。本系統(tǒng)中從設(shè)備只有高壓軟起動裝置液晶操控板一個設(shè)備,故設(shè)備代碼設(shè)置為00。06:功能碼,實(shí)現(xiàn)何種功能(本例中,06是雙向召喚發(fā)送功能,實(shí)現(xiàn)參數(shù)設(shè)置;03功能碼實(shí)現(xiàn)電壓、電流監(jiān)測功能;02功能碼實(shí)現(xiàn)故障顯示功能)。00 00:是起始地址的高八位、低八位。00 0C:是DSP要求430回傳字節(jié)的個數(shù)(不包括設(shè)備代碼、功能碼、數(shù)據(jù)個數(shù)代碼、和校驗(yàn)代碼),00是個數(shù)的高八位、0C是個數(shù)的低八位,0C是十六進(jìn)制(轉(zhuǎn)換成十進(jìn)制是12,12是從“起動時間、額定電流——備用 3”的個數(shù)),1E 88:是CRC校驗(yàn)碼。當(dāng)DSP給430傳

          00 06

          00 00 00 0C 1E 88

          代碼時,430先將這8個字節(jié)保存到一個臨時數(shù)組RX[]中,然后分別對這8個字節(jié)進(jìn)行判斷(1E 88是校驗(yàn)查表得出來的代碼),如果檢驗(yàn)正確,就會把要回傳給DSP的字節(jié)放到can_s[]數(shù)組中發(fā)出去,發(fā)送到DSP。以下代碼就是430接到

          00 06

          00 00 00 0C 1E 88

          判斷正確后,回傳給DSP的代碼。00 06:是設(shè)備代碼、功能碼。18:回傳的字節(jié)個數(shù)(十六進(jìn)制18就是十進(jìn)制24)。B6 8F是回傳的校驗(yàn)代碼。中間的24個字節(jié)(00),每兩個字節(jié)(00)分別對應(yīng)“起動時間、額定電流——備用 3”,之所以全是00 ,是因?yàn)闆]有設(shè)置參數(shù),在液晶屏上設(shè)置參數(shù),相應(yīng)的高低位也跟著變化。

          00 06

          18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B6 8F

          (2):電壓、電流監(jiān)測功能:

          00 03

          1C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

          00 00 00 00 00 00 00 0D 8D

          同理00 03 1C是設(shè)備地址、功能碼、DSP傳給430的數(shù)據(jù)個數(shù)(1C是十六進(jìn)制,轉(zhuǎn)為十進(jìn)制是28,包括1C在內(nèi),不包括00 03 0D 8D)。當(dāng)430接收到

          00 03

          1C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0D 8D

          時,會將接收到的字節(jié)分別存到可用數(shù)組里,在利用可用數(shù)組進(jìn)行顯示。

          DSP下傳:

          00(設(shè)備代碼)03(功能碼)1C(個數(shù)14*2) 00H(電壓高位)00L(電壓低位)

          。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

          。。

          00H(備用12高位)00L(備用12低位)CRCH(高位)CRCL(低位)

          (3):故障顯示功能:

          00 02

          18 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01

          01 01 01 20 34

          同理00 02 18是設(shè)備地址、功能碼、DSP傳給430的數(shù)據(jù)個數(shù)(18是十六進(jìn)制,轉(zhuǎn)為十進(jìn)制是24,包括18算內(nèi),不包括00 02 20 34)。當(dāng)430接收到

          00 02

          18 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 20 34

          時,會將接收到的字節(jié)分別存到可用數(shù)組里,在利用可用數(shù)組進(jìn)行顯示。

          DSP下傳:

          00(設(shè)備代碼)02(功能碼)18(個數(shù)) 00(啟動中)。。。。。。。。。。。。。。。。。。。。。。

          。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。00(三相不平衡)CRCH(高位)CRCL(低位)

          高壓軟起動裝置液晶操控板

          高壓軟起動裝置液晶操控板

          結(jié)語

          由于MODBUS串行通訊技術(shù)有著實(shí)現(xiàn)簡便、系統(tǒng)集成費(fèi)用低以及通訊距離遠(yuǎn)(RS485/422)等特點(diǎn),所以,在各個行業(yè)的應(yīng)用也都很廣泛。 MODBUS通訊在現(xiàn)場給調(diào)試人員及編程人員也帶來很大方便。因此,伴隨著多種通訊方式可以融合并存的發(fā)展趨勢,MODBUS串行通訊技術(shù)仍會保持廣泛的應(yīng)用前景。


          上一頁 1 2 下一頁

          關(guān)鍵詞:

          評論


          相關(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); })();