新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 一種基于Salvo的通用CAN/LIN網關

        一種基于Salvo的通用CAN/LIN網關

        作者: 時間:2009-06-19 來源:網絡 收藏

        1 引言
        CAN(Controller Area Network,即控制器局域網)是上世紀80年代初由德國Bosch公司提出專用于汽車的串行總線。由于其數據傳輸率高,傳輸距離遠,實時性好,可靠性高等眾多優點已在汽車工業、航空工業、工業測控等領域廣泛應用。在某些通信性能要求不高的場合為了降低網絡控制的成本,1998年由汽車制造商奧迪、寶馬等汽車公司、火山通信技術公司以及半導體生產商摩托羅拉(Motorola)公司共同創建了LIN協會,其目的是為汽車網絡系統提供一個開放的A類(低速率、低成本)串行總線通信標準。由于LIN總線性價比極高,非常適合用于車燈、車門、座位等對通信要求不高,對成本敏感的部件。
        目前,高級汽車一般采用分級網絡控制,對發動機、傳動系統、制動系統等重要,且對通信性能要求高的部件采用CAN總線控制;對車身,如車燈、車門等對通信性能要求不高,而對成本敏感的部件采用LIN總線控制,CAN總線與LIN總線間通過數據轉換以實現CAN設備與LIN設備的相互訪問。這種分級網絡控制模式也適用于工業控制、安全防護等領域。本文討論一種
        2 模型
        網關是連接兩個通信協議和結構不同的網絡設施。對于網關,它的工作就是對信息拆除封裝和重新封裝,以使它們能被CAN總線和LIN總線上的網絡節點讀取,即實現CAN總線和LIN總線之間(PDU)的轉換。的模型如圖1所示。

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

        依照國際標準化組織制定的開放系統互連參考模型OSI/RM,CAN總線和LIN總線都包括物理層和數據鏈路層。應用層由各種應用系統各自定義,其中CAN總線已有一些應用較廣的高層協議,如CANOpen、NetDevice等。的分層結構如圖2所示。

        3 網關硬件
        CAN總線和LIN總線的數據量小,系統采用高速8位微處理器DDMicrochip新型增強FLASH18F4680。18F4680片內集成64KB FLASHROM作為程序存儲器、3KB RAM作為數據存儲器,能滿足處理CAN總線和LIN總線轉換所需的程序代碼和數據存儲的需求;18F4680片內集成1KB EEPROM可用于存放系統狀態信息,即使掉電重啟也能恢復到掉電前狀態。另外,PIC18F4680片內集成支持CAN2.0B的CAN控制模塊,CAN數據鏈路層協議可由CAN控制模塊執行,從而減輕MCU處理CAN協議的數據處理壓力;PIC18F4680還集成可支持LIN1.3的USART,進一步減輕MCU處理LIN協議的數據處理壓力。
        為增強CAN總線的抗干擾能力,CAN總線驅動器MCP2551與PIC18F4680間采用高速光偶6N137隔離,并且獨立供電,PIC18F4680采用LIN總線驅動器MCP201的電源模塊供電;MCP2551采用專用DC/DC變換器供電。
        實時多系統對于相同優先級采用以時隙為單位的時間片循環方式(round-robin)切換。為提高時隙精度,從而提高切換時間精度,PIC18F4680的定時計數器1(TMR1)外接標準時鐘晶振32768Hz。系統時基由TMR1通過標準時鐘晶振振蕩產生。網關硬件電路如圖3所示。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 孟连| 抚州市| 深圳市| 黎平县| 清新县| 治多县| 太湖县| 咸丰县| 江油市| 青铜峡市| 绥芬河市| 林州市| 黄石市| 叙永县| 天等县| 湘阴县| 铅山县| 南昌市| 西乌珠穆沁旗| 项城市| 安溪县| 文化| 三原县| 临清市| 寻甸| 宝丰县| 客服| 阳春市| 普兰店市| 佛坪县| 肇庆市| 赤城县| 周口市| 凤翔县| 抚宁县| 高青县| 涟源市| 册亨县| 雅江县| 孟村| 霍城县|