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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 單片機多機通信網(wǎng)絡改進及數(shù)據(jù)通信容錯技術

          單片機多機通信網(wǎng)絡改進及數(shù)據(jù)通信容錯技術

          作者: 時間:2012-10-16 來源:網(wǎng)絡 收藏

          半雙工通信:采用一對平衡差分信號線,R 為TTL/CMOS 接收端;RE 為其使能端,低電平有效. D 為TTL/CMOS 的發(fā)送端,DE為其使能端,高電平有效. A 、B 為一對平衡線,RS485 通過它來接收和發(fā)送信號. 每個端口的RS485 收發(fā)器的接收使能端接低電平,保證端RS485 總線上的數(shù)據(jù)都能通過RS485 的接收驅動器,送到每個終端的微處理器的串行輸入口;RS485 收發(fā)器的發(fā)送使能端由每個終端的并行口控制,每個終端在需要發(fā)送數(shù)據(jù)時,才使發(fā)送使能拉高,將數(shù)據(jù)通過RS485 的發(fā)送驅動器,送到RS485總線上,如圖4 所示.
          單片機多機通信網(wǎng)絡改進及數(shù)據(jù)通信容錯技術
          圖4  基于RS - 485 總線的多機通信原理圖
           RS485 實現(xiàn)全雙工通信:采用兩對平衡差分信號線, R 為TTL/CMOS 接收端;RE為其使能端,低電平有效. D 為TTL/CMOS的發(fā)送端,DE 為其使能端,高電平有效. A 、B 為一對平衡線,RS485 通過它來接收和發(fā)送信號. 總線采用RS - 485 模式,用MAX88 完成收發(fā)功能. 如距離較遠時,在中途進行接收并放大.電路如圖5 所示.
          單片機多機通信網(wǎng)絡改進及數(shù)據(jù)通信容錯技術
          圖5  基于RS - 485 總線的多機通信原理圖
          多機競爭總線的問題:在通信系統(tǒng)中,有多個同時要求通信時,就出現(xiàn)多主爭用總線問題. 解決的方法:
          1) 通信過程中,設有啟始和結束標志符,如果通信正在進行,除正在通信的結點外,其它所有的結點置為從機狀態(tài);
          2) 在測量總線是空狀態(tài)之后,才允許請求通信的機器由從機狀態(tài)升為主機狀態(tài);
          3) 聯(lián)絡從機過程中,五次不成,就退出本次通信. 避免無效通信占用過長的時間,影響通信質量.

          3  
          在單片機組成的嵌入式控制系統(tǒng)中,利用單片機的串行口,可實現(xiàn)單機對單機的通信、或者實現(xiàn)一個主機與多臺從機的通信,利用MODEN 實現(xiàn)遠距離的信息傳輸. 基于RS485 總線可實現(xiàn)網(wǎng)絡化自由通信. 但單片機多用在工業(yè)控制現(xiàn)場,其通信受到各種各樣的干擾信號的干擾,由于單片機的內存及操作系統(tǒng)不允許裝載復雜的通信容錯程序. 針對單片機通信的特點,介紹一種簡單可行的差錯糾錯的編碼方法:
          單片機串行通信以8 位數(shù)據(jù)或九位,一個啟始位,一個停止位的通信模型. 通信數(shù)據(jù)量不會太大等特點. 采用混合糾錯檢錯的方法. 首先采用Hamming(7 ,4) 模型編碼. 即在7 位編碼中,其中4 位是有效數(shù)據(jù),3 位是冗余校驗碼. 設D3 D2 D1 D0 是4 位有效數(shù)據(jù), P2 P1 P0 是3 位校驗碼,將D3 D2 D1 D0 分成三組, P2 , P1 , P0 分別是3 組的校驗位, G2 G1 G0 為檢錯信息,當G2 G1 G0 = 000時,傳送沒有錯. G2 G1 G0 的值就指明7 位編碼中第i 位傳錯,對該位求反,即可完成糾錯. (7 ,4) 校驗碼的格式,見表1 :
          D3 D2 D1 P2 D0 P1 P0 . 7 位(7 ,4) D3 D2 D1 P2 D0 P1 P0 校驗碼分成三組:
          第一組:檢錯信息G0 ,含有: D3 、D1 、D0 、P0 ,其中: P0 = D3⊕D1⊕D0 , G0 = P0⊕D3⊕D1⊕D0 .
          第二組:檢錯信息G1 ,含有: D3 、D2 、D0 、P1 ,其中: P1 = D3⊕D2⊕D0 , G1 = P1⊕D3⊕D2⊕D0 .
          第三組:檢錯信息G2 ,含有: D3 、D2 、D1 、P2 ,其中: P2 = D3⊕D2⊕D1 , G2 = P2⊕D3⊕D2⊕D1 .
           單片機在發(fā)送數(shù)據(jù)前,先按漢明編碼格式,把要發(fā)送的數(shù)據(jù)變成漢明碼,即8 位編碼中,有4 位數(shù)據(jù). 所以一個字節(jié)有效數(shù)據(jù)分成低4 位、高4 位,然后編成漢明碼后,發(fā)送到縮機. 接收機收到數(shù)據(jù)后,對數(shù)據(jù)進行差錯和糾錯. 即首先計算出G2 G1 G0 檢錯信息字的值,由信息檢錯字知道那一位出錯,對該位求反,即可完全糾錯. 錯位與信息字G2 G1 G0 的關系見表2.

          表1
          B7B6B5B4B3B2B1B0
          D3D2D1P2D0P1P0

          表2  糾錯信息
          G2 G1 G0出錯位求反糾錯
          000正確
          001P0-P0
          010P1-P1
          011 D0-D0
          100P2-P2
          101D1-D1
          110D2-D2
          111D3-D3

          漢明校驗碼可以查出信息中的一位錯,并能知道是那位錯,可以糾正. 如果兩位出錯,僅靠漢明碼不能進行差錯和糾錯. 利用第八位作為奇偶驗位,可以查出兩位錯,但不能糾錯.
          對單片機通信結點進行改進,適合快速通信的RS - 485 網(wǎng)絡技術. 并用漢明校驗碼使單片機具有容錯功能,提高單片機通信數(shù)據(jù)傳輸速率,減少誤碼率. 使單片機有望成為各種網(wǎng)絡的普通的網(wǎng)絡結點.

          單片機相關文章:單片機教程


          單片機相關文章:單片機視頻教程


          單片機相關文章:單片機工作原理


          數(shù)字通信相關文章:數(shù)字通信原理


          通信相關文章:通信原理


          雙控開關相關文章:雙控開關原理

          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁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); })();