新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于S3C2410的CAN總線通信設計與開發

        基于S3C2410的CAN總線通信設計與開發

        作者: 時間:2013-02-27 來源:網絡 收藏
        1 引言

        網絡化控制系統是控制系統的發展趨勢和研究熱點,現場總線控制系統作為網絡化系統的重要組成部分,近年來在實際的控制系統中得到了廣泛的應用。(Con- troller Area Network)總線作為一種容錯性強、可靠性高、布線簡單且成本低廉的現場總線倍受用戶欽睞,在國內總線已經得到了廣泛應用。目前國內廣泛應用的獨立控制器SJA1000因存在如地址、數據總線的分時復用常導致接口效率低下;接收、發送緩沖區的個數太少,導致數據吞吐率不高;幀屏蔽和過濾器的設置不夠靈活,不能滿足同時需要更多屏蔽和過濾條件的要求等。

        ARM芯片是一種高集成度,高性價比的嵌入式處理芯片,已成功用于工控設備上。然而其美中不足的是沒有集成CAN控制器,使其在工控產品中的應用中受到了一定的阻礙。為了解決這一問題,同時考慮到盡可能降低硬件電路的復雜性,保證CAN總線通訊的穩定性和效率,采用帶SPI接口的獨立CAN控制器MCP2515來給擴展CAN接口。下面以自行開發的人機界面(HMI,Human Machine Interface)中CAN總線通訊接口設計為例進行說明。

        2 CAN總線接口硬件設計

        下面先簡要介紹相關控制器芯片,后對CAN接口硬件設計作詳細說明。

        2.1 ARM芯片和CAN控制器MCP2515簡介

        S3C2410是三星公司設計的32位RISC嵌入式處理器。該芯片基于ARM920T內核,采用五級流水線和哈佛結構,提供1.1MIPS/MHz的性能。為了減少應用系統設計的成本,S3C2410集成了眾多的常用資源,如:LCD控制器、SDRAM控制器、一個觸摸屏接口、兩個SPI接口等,內核最高工作頻率可達266MHz。

        獨立CAN控制器MCP2515靈活的中斷能力、接收幀屏蔽和過濾、幀優先級設定等特性使其能夠很好的對信息進行管理,減輕了處理器的負擔和軟件設計的復雜度。其獨特功能如下:

        (1) 有標準幀和擴展幀兩種數據幀可供選擇,每個幀的數據字段長度可為0-8字節,標準幀數據段的前兩個字節可單獨過濾;
        (2) 內含3個發送緩沖器和2個接收緩沖器,并且其優先級可編程設定;
        (3) 內含6個29字節的接收過濾器和2個29字節的接收屏蔽器;
        (4) 具有Loop-Back(自環檢測)模式;支持更高層的協議,如DeviceNet、SAEJ1939;

        2.2 硬件接口設計

        S3C2410的SPI接口兼容SPI V2.11協議,可支持查詢、中斷和DMA三種數據傳送模式。MCP2515連接到S3C2410的SPI0口,其相互連接關系如圖1所示。


        圖1 PROFIBUS 網絡特性

        (1) 本接口設計不使用TXnRTS、RXnBF等5個引腳,使用了總中斷引腳INT,因此在軟件設計的時候不使能發送請求和接收完畢中斷對應功能引腳,且在本設計中該引腳也不作其它用途,處理器在響應總中斷后,通過SPI接口訪問MCP2515內部相應寄存器來確定具體的中斷事件,并對其作出處理。
        (2) 為了隔離總線上的干擾信號,提高系統的可靠性,CAN控制器與CAN收發器之間采用了光隔。光隔的兩邊應該采用獨立的供電電源,不可與系統的其他部分直接共地。
        (3) 在CANH和CANL之間使用了兩個等值電阻(R410、R411)和旁路電容(C408)來提高EME(Electro Magnatic Emission)性能,減少該部分對系統其他部分的干擾。
        (4) MCP2515在初始上電、復位以及從休眠模式喚醒后最初的128 OSC時鐘周期內,OST(振蕩啟動定時器)保持復位狀態。應注意在OST超時前不應對SPI進行操作。
        (5) RX是為減少EMI(Electro Magnatic Interference)而設計的。CANH、CANL的轉換率與RX上流經的電流成正比。

        3 CAN總線接口軟件設計

        CAN總線軟件接口為應用層訪問CAN控制器—MCP2515提供了一個便捷的“通道”,該“通道”屏蔽了CAN控制器工作的實現細節,使得應用層面向通信是透明的。該接口通過SPI接口通信來實現對CAN控制器的操作。它們之間的相互關系如圖2所示。

        上一頁 1 2 3 下一頁

        關鍵詞: S3C2410 CAN 總線通信

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 呼图壁县| 屏东市| 新疆| 三穗县| 大石桥市| 北宁市| 尖扎县| 赤水市| 临泉县| 临夏市| 林州市| 云南省| 七台河市| 盐亭县| 石林| 曲阳县| 翁牛特旗| 宜春市| 民权县| 通城县| 海阳市| 南昌县| 九江市| 赣榆县| 讷河市| 贡山| 米林县| 吴川市| 涟水县| 竹北市| 龙门县| 永吉县| 色达县| 湘阴县| 崇信县| 连城县| 龙门县| 高碑店市| 桂阳县| 宽甸| 瓦房店市|