新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > STM32的CAN總線中繼器設計及應用

        STM32的CAN總線中繼器設計及應用

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

        摘要:中繼器是系統組網的關鍵,通過中繼器可以擴展節點的數量和實現不同波特率之間的通信。本文充分利用F105內部集成雙bx 控制器的特性,出一款基于的單芯片中繼器,并將其到齊瑪印花機上。實踐證明該方法有效可行,不僅實現了齊瑪印花機的改造,還降低了系統設備的成本。
        關鍵詞:CAN;中繼器;F105;齊瑪印花機

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

        引言
        CAN是一種多主方式的串行通信總線,具有優良的穩定性、實時性、遠程通信能力以及超強的硬件CRC糾錯等特性;CAN總線技術的不再僅限于汽車行業,而是擴展到了機械、紡織、控制等行業,并被公認為是最有前途的現場總線之一。然而由于受制于CAN收發器,CAN總線通信距離和網絡中節點數被分別限制在10 km和110個之內。但是在稍大型的CAN總線系統中,這往往是不夠的,這時就需要用CAN總線中繼器對CAN總線網絡進行擴展。
        CAN中繼器是系統組網的關鍵技術設備之一,使用中繼器可以提高網絡的靈活性,并且通過中繼器還可以連接兩個不同波特率的CAN總線網絡;在兩個網絡間進行數據轉發,極大地擴展其使用范圍?;诖耍疚?a class="contentlabel" href="http://www.104case.com/news/listbylabel/label/設計">設計出一款基于STM32的CAN總線中繼器,并將其到齊瑪印花機上,完成圓網印花機通信系統的工程改造。

        1 系統整體方案及硬件實現
        以往的CAN中繼器設計大多采用MCU加CAN控制器的雙芯片或多芯片解決方案。例如,參考文獻使用1片MCU加2路CAN控制器的結構實現中繼器;參考文獻使用雙MCU結構設計CAN總線中繼器;參考文獻使用獨立雙CAN控制器作為2路CAN接口的控制器來設計CAN中繼器。上述方案電路復雜,MCU與CAN控制器通過外部總線連接,數據吞吐速度慢,整體可靠性也比較差。
        意法半導體的STM32是以ARM Cortex-M3為內核的32位微處理器,主頻可高達72 MHz,內置Flash和SRAM,其容量可分別高達512 KB和64 KB;內部集成雙bxCAN控制器。它支持CAN協議V2.0A和V2.OB,波特率最高可達1 Mb/s,具有3個發送郵箱和2個3級深度的FIFO,能夠以最小的CPU負荷來高效處理大量收到的報文?;诖?,選用STM32F105作為主控制器,設計出一款基于STM32的CAN總線中繼器。其整體方案如
        圖1所示。

        a.JPG
        由于STM32F105內部集成了雙路CAN控制器,CAN中繼器的節點電路變得十分簡單,其硬件電路如圖2所示。

        b.JPG
        以往的節點電路,為了降低生產現場的抗干擾能力,保證中繼器工作的可靠性,都采用多重的抗干擾措施。例如,大部分的節點電路都是采用在CAN控制器和收發器之間加入光電隔離器6N137來實現CAN節點之間的電氣隔離,采用外加DC/DC電源模塊的方法切斷系統電源的干擾。同樣著眼于提高系統的抗干擾能力和可靠性的問題,本設計中一反常規的設計方法,直接采用廣州致遠電子有限公司生產的CAN通用收發器CTM8251。
        CTM8251是一款帶隔離的通用CAN收發器芯片,該芯片內部集成了所有必需的CAN隔離及CAN收發器件,這些都被集成在不到3 cm2的芯片上。芯片的主要功能是將CAN控制器的邏輯電平轉換為CAN總線的差分電平,并且具有DC 2500 V的隔離功能。該芯片符合ISO11898標準,因此,它可以和其他遵從ISO11898標準的CAN收發器產品互操作。
        實踐證明采用CTM8251不僅使系統真正與外接隔離開,抑制了干擾的串入提高系統的可靠性,簡化了CAN節點外圍電路的復雜度,還降低了成本,有較高的性價比。
        圖2中120 Ω為可選用的終端匹配電阻,如果網絡中已經有一對匹配電阻,則不使用該電阻。另外,電路中設計有相應的撥碼開關電路用于CAN網絡的ID標志和設置相應的波特率。


        上一頁 1 2 3 下一頁

        關鍵詞: 應用 設計 總線 CAN STM32

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 锡林郭勒盟| 龙泉市| 新田县| 寿光市| 当雄县| 通山县| 舒兰市| 池州市| 吉安市| 卢湾区| 德清县| 镶黄旗| 商洛市| 金溪县| 容城县| 永川市| 长兴县| 云安县| 应用必备| 衡南县| 察哈| 太谷县| 凌源市| 平塘县| 巴林右旗| 开江县| 游戏| 德化县| 蒙山县| 犍为县| 雅安市| 礼泉县| 托克逊县| 繁峙县| 微博| 平塘县| 湖南省| 运城市| 嘉黎县| 安化县| 家居|