新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于ARM7的MVB_CAN網關設計

        基于ARM7的MVB_CAN網關設計

        作者: 時間:2011-03-25 來源:網絡 收藏

        本系統的軟件模塊主要有CAN模塊、MVB控制模塊、總任務處理模塊、以及數據緩沖模塊。其中CAN控制模塊主要負責從CAN數據包中解析
        出完整的CAN協議報文,并存入數據緩沖區2,同時將數據緩沖區A中的CAN數據封裝成完整的CAN協議報文后發送到CAN總線上;MVB控制模塊主要負責從MVB數據包中解析出完整的MVB協議報文,并將其存人數據緩沖區1,同時再將數據緩沖NB中的MVB數據封裝成完整的MVB協議報文后發送到MVB上;總任務處理模塊主要起綜合調度和監控作用,同時,它還用于整個傳輸過程中的中斷響應;緩沖區模塊主要負責將CAN側和MVB側接收的數據存儲到緩沖區中。
        程序的整體思路是當CAN側數據發往MVB側時,首先使CAN側檢測到有數據傳過來,總處理模塊通過調用CAN模塊處理函數來接收數據,并通過對CAN幀的解碼來獲取CAN標志符,然后調用應用層轉換表(inbus-to-outbus)以查詢出相應的MVB端口的相關變量,接著再把相
        應的數據發送到數據緩沖區2中,最后由總任務處理模塊通知MVB控制模塊將緩沖區2中數據取走,并對數據進行MVB幀格式的編碼,再發送到
        MVB總線上后釋放緩沖區。
        同樣,當MVB側數據發往CAN側時,首先將數據發送到MVB上,然后由總任務處理模塊檢測MVB上是否有數據傳輸,并通知MVB控制模塊接收數據,同時對信息進行解碼分析,從中獲取端口相關變量,依據端口相關變量查詢應用層轉換表(out-to-inbus),找出對應CAN標識符,同時將數據發送到數據緩沖區1。此時,總任務處理模塊可通過CAN控制模塊從緩沖區1中提取數據并進行完整的CAN報文封裝,再發送到CAN總線上并釋放緩沖區A。其中,MVB側發往CAN側的主程序流程如圖6所示。

        本文引用地址:http://www.104case.com/article/156540.htm

        e.JPG



        5 結束語
        本文主要介紹了MVB-CAN的硬件和軟件實現方法。其中,應用層協議的轉換是整個的主要工作所在,所以,時必須建立盡量完善的關系對應列表,同時應提供友好的用戶接口函數。
        通過MVB-CAN網關的可以實現機車內車載設備間不同接口單元之間的通訊,從而為列車通信網絡的多元化發展提供有力的支持。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 迁西县| 广安市| 岗巴县| 怀宁县| 庄河市| 陕西省| 广昌县| 阜新| 分宜县| 惠水县| 和静县| 静乐县| 将乐县| 建始县| 柳州市| 涟源市| 万安县| 桐城市| 正镶白旗| 根河市| 睢宁县| 沙湾县| 高陵县| 台山市| 文水县| 定结县| 延津县| 门源| 宜城市| 星座| 汕尾市| 黔东| 焦作市| 昂仁县| 图们市| 威海市| 汶川县| 长顺县| 英吉沙县| 汉沽区| 石楼县|