嵌入式UART轉CAN應用案例詳解
在如今CAN總線(xiàn)應用越來(lái)越廣泛的今天,很多人都開(kāi)始學(xué)習使用這一技術(shù),但是由于CAN總線(xiàn)協(xié)議的復雜度,不少I(mǎi)T新人只能淺嘗輒止。本文將介紹如何致遠電子的嵌入式UART轉CAN模塊來(lái)解決這一問(wèn)題。
本文引用地址:http://dyxdggzs.com/article/201807/384020.htm一、CSM100產(chǎn)品簡(jiǎn)介
CSM100系列UART轉CAN模塊是集成微處理器、CAN-bus 控制器、CAN-bus收發(fā)器、DC-DC轉換、高速光電隔離于一體的嵌入式UART 轉CAN 模塊,用戶(hù)可以不深入了解CAN-bus的相關(guān)知識,利用此芯片操作CAN-bus就如同操作UART 一樣方便。
模塊具有2種轉換方式包括透明轉換方式和透明帶標示轉換方式。其中透明轉換方式會(huì )預先設定數據幀ID,串口只需要發(fā)送報文數據段信息,其余信息模塊會(huì )自動(dòng)填充完整。透明帶標識轉換方式通過(guò)既定的協(xié)議格式可以將CAN總線(xiàn)報文的類(lèi)型、ID轉發(fā)到串口數據的相應字段。這兩種方式在不同應用場(chǎng)景下靈活組合可以實(shí)現多種功能。

圖 1 CSM100實(shí)物、結構圖
二、應用方案
CSM100這個(gè)小模塊不僅僅是做串口與CAN數據的轉換,在很多應用場(chǎng)景中起著(zhù)必不可少的作用。下面就來(lái)介紹一下。
1、 為缺少CAN控制器的單片機提供CAN接口
雖然如今已經(jīng)不再是51單片機橫行的時(shí)代,但是仍然不是所有的MCU都具備CAN控制器,如果在某個(gè)項目中需要擴展CAN通訊而恰好我們的主控平臺沒(méi)有CAN外設,那么選擇CSM100就是一個(gè)絕佳的選擇。只要主控上還有多余的URAT資源就可以利用它輕松的擴展。擴展方式如圖2所示。

圖 2 為缺少CAN控制器的單片機提供CAN接口
2、 為點(diǎn)對點(diǎn)設備提供組網(wǎng)條件
我們都知道CAN總線(xiàn)是一種多主總線(xiàn),可以實(shí)現多節點(diǎn)組網(wǎng)通訊,自帶優(yōu)先級仲裁機制,可有效防止數據沖突?;谶@一優(yōu)點(diǎn),可以利用CSM100模塊為點(diǎn)對點(diǎn)通訊設備提供組網(wǎng)的條件。例如,某些串口接口的傳感器,如果我們需要把多個(gè)傳感器的數據讀到MCU而MCU的串口數量不足怎么辦呢?
如圖3所示,與傳感器對接的CSM100模塊設定為透明轉換模式,并通過(guò)設定不同的地址ID加以區分。這樣全部傳感器的數據就可以共同在一條線(xiàn)路上傳輸了,不用為數據沖突或者找不到數據發(fā)送源而擔心。與主控對接的CSM100模塊設定為透明帶標識轉換模式。這樣主控接收到的串口數據流中就包含了不同傳感器的地址ID信息了。

圖 3 為點(diǎn)對點(diǎn)設備提供組網(wǎng)條件
3、 簡(jiǎn)易隔離中繼設備
在很多CAN-bus總線(xiàn)的應用現場(chǎng),我們可能會(huì )碰到這些問(wèn)題,例如遠距離通訊質(zhì)量不穩定,或者對接兩個(gè)速率不同的網(wǎng)絡(luò ),亦或是想把網(wǎng)絡(luò )中的某些干擾較強的節點(diǎn)做隔離。這時(shí)我們可以使用兩個(gè)CSM100模塊實(shí)現一個(gè)簡(jiǎn)易的CAN總線(xiàn)中繼功能。
如圖4所示,將兩個(gè)CSM100的UART口交叉對接,設定工作模式為透明帶標識符傳輸,分別設置各自對接CAN網(wǎng)絡(luò )的通訊波特率參數。這樣CAN總線(xiàn)的報文數據會(huì )先轉換成串口再轉換為CAN數據,信號得到了放大和隔離。

圖 4 簡(jiǎn)易隔離中繼設備
評論