内容标题31

  • <tr id='u0jpxP'><strong id='u0jpxP'></strong><small id='u0jpxP'></small><button id='u0jpxP'></button><li id='u0jpxP'><noscript id='u0jpxP'><big id='u0jpxP'></big><dt id='u0jpxP'></dt></noscript></li></tr><ol id='u0jpxP'><option id='u0jpxP'><table id='u0jpxP'><blockquote id='u0jpxP'><tbody id='u0jpxP'></tbody></blockquote></table></option></ol><u id='u0jpxP'></u><kbd id='u0jpxP'><kbd id='u0jpxP'></kbd></kbd>

    <code id='u0jpxP'><strong id='u0jpxP'></strong></code>

    <fieldset id='u0jpxP'></fieldset>
          <span id='u0jpxP'></span>

              <ins id='u0jpxP'></ins>
              <acronym id='u0jpxP'><em id='u0jpxP'></em><td id='u0jpxP'><div id='u0jpxP'></div></td></acronym><address id='u0jpxP'><big id='u0jpxP'><big id='u0jpxP'></big><legend id='u0jpxP'></legend></big></address>

              <i id='u0jpxP'><div id='u0jpxP'><ins id='u0jpxP'></ins></div></i>
              <i id='u0jpxP'></i>
            1. <dl id='u0jpxP'></dl>
              1. <blockquote id='u0jpxP'><q id='u0jpxP'><noscript id='u0jpxP'></noscript><dt id='u0jpxP'></dt></q></blockquote><noframes id='u0jpxP'><i id='u0jpxP'></i>
                你的位置:首頁 > RF/微波 > 正文

                如〖何構建專屬自己的CAN-bus應用層協議〗

                發布時間:2017-05-09 責任編輯:susan

                【導讀】隨著CAN-bus相關『芯片價格的下降,內置CAN控制器MCU的增多,CAN-bus當前已經進入了眾多早期由於成本問題無法卐使用的領域,成◥為極具生命力的現場總線,今天我你們就來探討如何構建專屬自己的CAN-bus應用層協議。
                 
                在CAN-bus網絡上,CAN報文以廣播的形■式發送,CAN報文不包含地址∮信息,是否處理接收到的CAN報文由接收點的軟件確定。CAN-bus只提供可靠ㄨ的報文傳輸服務,CAN報文的使用由應用者定義, 所以CAN網絡中的節點要相互通信就必須制定一個♂統一的規則。CAN應用層協議就是這樣一個規則。
                 
                這個規則,定義了CAN報文中幀ID及幀數據的使用方式,如將幀ID定義為需要處理【該幀數據的CAN節點地址等。根據應用場合的不同ぷ,國際上出一陣陣黑色光暈彌漫了出去現了多種CAN應用層協議,常見的CAN-bus應用層協議如下:
                 
                圖1
                 
                接下來,我們看一下如何構建CAN-bus應用層協議
                 
                l構建一個現場總線網絡,需要解決的關鍵技@ 術問題有:
                 
                l總線傳輸信息的速度、容量、優先等級、節點容量等;
                 
                l高電磁幹■擾環境下的可靠數據傳輸;
                 
                l最大傳輸距離時延時大小的確定;
                 
                l網絡的容錯技術;
                 
                l網絡的監控和故障診斷功能。
                 
                要解︻決以上問題,需要充分考慮現場總線網絡所采用的總線類型,因為以上問題和總線的性能特點是密切相關的,那麽我們就看一下CAN-bus總線♂的上述特性:
                 
                lCAN-bus網絡傳輸速度最高可達1Mbps,並采用無損仲裁,通過報文標識符指示報文優先級;
                 
                lCAN-bus采用差分信號傳輸,並采用可靠的數據▲校驗和錯誤檢測機制;
                 
                lCAN-bus采用幀傳輸,每個報文允許傳輸最多8個字節,幀結構有嚴格規定,能夠確定最◥大傳輸延時;
                 
                lCAN-bus具有可靠的錯誤機制和檢測機制,發送的信息遭到破壞後可以重新發送;節點▓在錯誤嚴重的情況下,具有自動退出竟然有九級仙帝總線的功能;
                 
                l可以通過制定嚴禁的CAN-bus應用層協議解決網絡監控和診斷。
                 
                CAN報≡文的分配
                 
                包含報文標識符的分配和報文數據的分配,報文格式的定義,實質是將CAN報文的分配規則進行詳∮細的描述。
                 
                報文ID的定義:
                 
                CAN2.0A幀:11位ID
                 
                CAN2.0B幀,29位ID
                 
                報文數據的定義:每幀報文最多包含8字節數據
                 
                CAN網絡數據通信的實現
                 
                在CAN網絡中,通過報文的標識符進行信息的區分,因此通過報文的◢各種標識符分配來達到建立信息鏈接的目的。
                 
                圖2.命令/響應模式通信
                 
                CAN應用層協議:面向節點和面♂向報文的協議
                 
                數據通信協議基本上可以劃分為“面向節點的協議∩”和“面向報文的協議”兩種類型,如下圖:
                 
                圖3.面向節點和面向報文的數據通信
                 
                制定一個CAN應用層協議
                 
                為了給讀者演示∏CAN應用層協議的開發和使用方法,下面定義一個簡單的CAN應用協▽議棧,該協議棧中只用到CAN標準幀中的數據幀,幀ID中的11個位的分配和使用方法如下表所列,協議中另外∑還定義了功能參數長度變量FunDataLen的功能參數數組FunData,該數組在需要時可以為某就你們些特定功能函數△提供足夠的控制參數。
                 
                圖4
                特別推薦
                技術文章更多>>
                技術白皮書下載更多>>
                熱門搜索

                關閉

                關閉