開箱測試
RT-Thread官方已完成了對英飛凌XMC7200 EVK的移植,通過shell可以看到做好了uart3的console。
本文將介紹如何進行RT-Thread Can 移植。

接下來我們要完成CAN_FD的驅動移植,并正常啟動RT-Thread,首先參考下面的帖子搭建好開發環境:
https://club.rt-thread.org/ask/article/4e5abc98191c3747.html
接著在RT-Thread主倉中找到xmc7200的模板工程(路徑:\bsp\Infineon\xmc7200-kit_xmc7200_evk)。在不改變任何參數的情況下,我們修改應用程序讓三個燈循環點亮,接著進行編譯和并下載程序驗證。
下載驗證:

原理圖分析

從開發板的原理圖和芯片復用手冊可知,驅動CAN_FD芯片的是P0.2和P0.3兩個引腳,使用CAN0通道1進行控制。另外P1.0引腳控制CAN transceiver的standby功能。
驅動移植
使用RT-Thread ENV 工具對內核進行配置,開啟內核層CAN總線驅動,并重新生成KEIL MDK工程,運行scons --target=mdk5
在HAL_Drivers目錄下添加硬件層的can驅動代碼,命名為drv_can.c drv_can.h.
參考STM32的RTT HAL驅動,我們需要針對性地對各部分進行更改,仔細核對驅動API調用方法才能完成移植。由于是第一次使用英飛凌XMC系列處理器,并沒有完全了解其驅動庫架構和寄存器對應關系,需要進一步更改才能使用。目前實現的功能是內核驅動掛載并正常顯示。
如下圖所示,可查找到名為xmc_can0的設備,但是無法對其進行操作。
CAN測試
為了完成XMC7200 CANFD驅動評估,需要一個CAN總線分析儀。考慮到成本原因,我選擇通過嘉立創開源項目拷貝一個現有方案并手工貼片完成一個簡單的CAN采集器,用于測試和數據分析。選中了下面這款USB_TO_CAN tool,并進行打板,焊接,測試,下載官方的固件并進行通信驗證。
完成的實物和測試效果如下圖:
參考STM32的CAN驅動,我們移植英飛凌的CAN驅動對接到RT-Thread的
CAN框架。最終完成了一個傳統CAN模式的測試框架,并提交到github上面。https://github.com/Jason0204/rtthread-xmc7200測試效果如下:
XMC7200EVK 傳統模式下的CANFD在RT-Thread下的運行已經完成驅動移植和部分測試。
原文鏈接
原文鏈接:https://club.rt-thread.org/ask/article/ee5a26b536d9a122.html
-
英飛凌
+關注
關注
67文章
2319瀏覽量
140211 -
CAN
+關注
關注
57文章
2892瀏覽量
466776 -
RT-Thread
+關注
關注
32文章
1371瀏覽量
41530
發布評論請先 登錄
2025 RT-Thread全球技術大會議程正式發布!

RT-Thread 上如何實現 SLAAC?
【直播預告】《實時操作系統應用技術—基于RT-Thread與ARM的編程實踐》教學脈絡及資源簡介

RT-Thread審核團招募: 深度參與開源RTOS社區治理與演進

如何將RT-Thread移植到NXP MCUXPressoIDE上

Deepseek上單片機?RT-Thread上跑通大語言模型

開源共生 商業共贏 | RT-Thread 2024開發者大會報名啟動!

課程上線 - RT-Thread應用開發實踐課程上線慕課平臺啦!

新書發布——《RT-Thread嵌入式實時操作系統內核、驅動和應用開發技術》

【大連】9月7日RT-Thread巡回線下培訓-OpenMV機器視覺

2024 RT-Thread全球巡回 線下培訓火熱來襲!

【好書推薦】RT-Thread設備驅動開發指南

RT-Thread 新里程碑達成——GitHub Star 破萬!

基于 RT-Thread專業版的EtherCAT主站方案

評論