背景
在汽車領(lǐng)域,經(jīng)常會涉及到CAN報文收發(fā),目前應(yīng)用最廣泛的就是是CAN2.0B協(xié)議。CAN報文對整車控制起著至關(guān)重要的作用。在平時調(diào)試時,經(jīng)常需要抓取CAN報文來進行數(shù)據(jù)分析,以往的方案是CAN卡+PC,連續(xù)不斷的抓取報文,這種方案的弊端在于需要人在旁邊設(shè)置和管理。
另一種方案是使用TBOX,通過5G網(wǎng)絡(luò)來把所有報文傳輸?shù)皆贫舜鎯?,這種方案的缺點就是數(shù)據(jù)傳輸成本和存儲成本比較高,所以迫切需要一種低成本的CAN報文記錄方式。
1.ESP32-S2模組
2.TJA1050 CAN收發(fā)芯片
3.主控模塊 Psoc6-evaluationkit-062S2開發(fā)板
4.RTC芯片:RX8025T
由于PSOC62開發(fā)板沒有原生的CAN接口,于是我就使用了一片ESP32-S2芯片,作為從控制器,實現(xiàn)了CAN報文轉(zhuǎn)UART數(shù)據(jù),使用了ZLG WIFICAN協(xié)議來作為串口數(shù)據(jù)交換協(xié)議,這個協(xié)議經(jīng)過長時間考驗,十分穩(wěn)定可靠,也具有十分強大的擴展性。
主要的硬件結(jié)構(gòu)框架如下圖所示。
為了方便的集成和調(diào)試這些功能,我專門設(shè)計了一個擴展板,兼容了ARDUINO接口
這是一個ARDUINO通用的CAN轉(zhuǎn)UART擴展板,還集成了RTC、FRAM、WIFI等功能,可以單獨使用,自成體系,實現(xiàn)一個CAN卡所必須的功能,也可以作為ARDUINO開發(fā)板的擴展板,協(xié)同使用。
如果開源地址無法打開,可能還在審核,可以私信我索取。
軟件
1.ESP32-S2從機軟件:
使用Espressif-IDE開發(fā),ESP-idf V5.0.1版本。主要功能就是實現(xiàn)了CAN報文和WIFICAN協(xié)議轉(zhuǎn)換,最終通過UART來和主控制器通信。
2.Psoc6主控制器軟件:
主要用到了Psoc6-evaluationkit-062S2開發(fā)板的UART、SDIO、I2C共三個組件。編寫了一個CAN_RECODER 的應(yīng)用,通過MSH來啟動和停止。
軟件涉及到了WIFICAN協(xié)議的轉(zhuǎn)換、TF卡掛載、文件系統(tǒng)讀寫等功能。
整套系統(tǒng)用法
STEP0:燒寫固件,插入TF卡,連接上CAN線,然后上電開機。
STEP1:在MSH中運行CAN_RECODER
此時程序已經(jīng)開運行。
使用工具對CAN上發(fā)送若干報文。
關(guān)閉記錄器程序:
STEP2:查看文件
此時可以看見報文已經(jīng)寫入到TF卡的文件系統(tǒng)中,文件名是根據(jù)RTC芯片存儲的時間來確定的,所以每次啟動程序都能生成一個帶時間戳的文件名,避免了文件名覆蓋問題。
-
CAN總線
+關(guān)注
關(guān)注
145文章
1908瀏覽量
130514 -
RTC
+關(guān)注
關(guān)注
2文章
519瀏覽量
66151 -
收發(fā)芯片
+關(guān)注
關(guān)注
0文章
34瀏覽量
8951 -
TF卡
+關(guān)注
關(guān)注
2文章
70瀏覽量
12108 -
ESP32
+關(guān)注
關(guān)注
17文章
944瀏覽量
16919
發(fā)布評論請先 登錄
相關(guān)推薦
評論