RL78/F24新一代超低功耗汽車微控制器,非常適用于實現未來高可靠性的智能執行器和傳感器,是低端車身ECU的理想之選。作為對現有RL78/F1x MCU的創新擴展,RL78/F24可滿足未來市場的多種需求。RL78/F24具有更高的CPU性能、耐高溫能力和更強的外設功能,非常適合各種應用。為了響應E/E汽車架構的新趨勢,RL78/F24配備了CAN FD接口。

https://www.renesas.cn/cn/zh/products/microcontrollers-microprocessors/rl78-low-power-8-16-bit-mcus/rl78f24-next-gen-actuator-and-sensor-microcontroller?sample_code-title-filter=CAN

目前在官網上對于CANFD模塊,提供了所使用的RL78/F24 RS-CANFD lite Module Software Integration System和相關介紹文檔。本篇文章主要介紹如何使用該Middleware在e2studio中完成CANFD參考例程,并使用RL78F24 Target Board(RTK7F124FPC01000BJ)配合PCAN進行測試。
https://www.renesas.cn/cn/zh/oauth2/default/v1/authorize?client_id=0oa2ixjskq8o2hdJB357&response_type=code&scope=openid%20email%20phone%20profile%20MyRenesasUserInfo&redirect_uri=https%3A//www.renesas.cn/openid-connect/renesas_okta&state=xVNWcdudwSlfsQ__GEge8qB8i-1_Iycd45vZck0f7h4

https://www.renesas.cn/cn/zh/products/microcontrollers-microprocessors/rl78-low-power-8-16-bit-mcus/rtk7f124fpc01000bj-rl78f24-r7f124fpj-target-board

1. 所使用的硬件
瑞薩官方RL78/F24(R7F124FPJ)Target Board,需要用戶焊接CN5(CANFD接口),如果需要外部供電,還需要焊接TP1(VDD)和TP2(GND)。

另外,RL78F24 Target Board上,CANFD部分電路沒有終端電阻,針對本測試系統,需要在CANH和CANL之間焊上120Ω電阻。
調試器:瑞薩官方調試器E2或者E2 Lite(需要注意,E2 Lite只能提供3.3V供電,E2可以提供5V或者3.3V供電)。
輔助設備:使用CANFD其他器件用于測試發送和接收結果,這里使用PCAN(包括硬件和軟件,硬件上設置有終端電阻)。
PCAN上設置波特率、采樣點和過濾規則:


2. 軟件開發環境
e2studio:v2024-01(因為IAR需要License,所以沒有使用官網給出的IAR參考例程)
Renesas CC-RL Compiler?v1.13.00(RSCANFD驅動只能用于CC-RL編譯器)
Smart Configurator中
? Board Support Packages. -v1.62(r_bsp)
? Ports v 1.4.0
? RS-CANFD ?lite Module Software Integration System(r_rscanfd_rl78) v1.00
注意,用戶需要自己添加RS-CANFD lite Module Software Integration System(r_rscanfd_rl78)。
可以使用下面兩種方法的其中之一進行添加:
? 打開SC,選擇“Components”,點擊“Add Component”,點擊“Download RL78 Software Integration System modules”。
選擇相應的模塊進行下載。
? 將“r01an6334xx0100-rl78f24-sis”中內容,拷貝到Module Download文件夾。
3. 時鐘和模塊設置
3.1 ?根據文檔“r01an6982ed0090-rl78f24”中內容,需要根據實際板子需求配置時鐘
在這種情況下,CANFD模塊的屬性設置中DLC時鐘選擇Internal clock。
3.2 RL78的Smart Configurator中對于波特率的設置,需要手動設置
本測試代碼中以fCAN=20MHz、nominal Baud Rate=500kbps、data Baud Rate=2Mbps為例。

4. 調試配置
4.1 由于CANFD收發器需要5V供電,所以需要外部電源給板子提供5V供電
RL78/F24(R7F124FPJ)Target Board上有VDD和EVDD,可以分別供電,比如可以VDD使用3.3V供電,EVDD使用5V供電。但是此Target Board默認將VDD和EVDD連接在一起,所以一起用外部電源提供5V電源,此時,外部調試器選擇不供電。
4.2 由于系統使用外部主時鐘,所以調試器的配置需要做相應修改
5. 軟件流程
參考文檔“RL78/F24 RS-CANFD lite Module Software Integration System Rev.1.00”(r01an6334ej0100-rl78f24)中內容。
https://www.renesas.com/us/en/document/apn/rl78f24-rs-canfd-lite-module-software-integration-system

5.1 設置P12:輸出模式,輸出低電平,以保證CANFD收發器處于Normal模式
5.2 添加RSCANFD組件,并設置屬性(屬性的詳細內容請參考文章后附上的參考工程)
5.3 添加相應的中斷函數

5.4 在主函數中添加CAN相關頭文件、R_CAN_Create函數和R_CAN_SetConfig函數,并等待通信就緒
5.5 配置幀屬性,準備將要發送的數據,然后發送CANFD數據
本測試代碼中,發送幀為標準數據幀,ID為0x7FE,數據長度為8,數據內容為0x11、0x22、0x33、0x44、0x55、0x66、0x77、0x88。
從PCAN中可以接收到RL78F24發送的CANFD數據。

可以看出,數據類型為FD,并且切換波特率。
通過邏輯分析儀觀察CTX和CRX波形,可以看到Nominal段和Data段波特率不一樣。
5.6 設置接收?filter功能
在R_CAN_SetConfig()函數后,添加接收規則。
接收標準幀、ID為0x700的數據、將數據接收到RXBUF0中。
5.7 接收CANFD數據
在中斷函數RSCFD_A_GlobalMBReceiveIRQ中添加接收代碼。
使用PCAN發送以下ID(0x700)和數據,注意要勾選“CAN FD”和“Bit Rate Switch”。

MCU可以正常接收,可以看到FDF和BRS的值都為1。
驗證如果PCAN發送的ID為0x701(除0x700以外的ID,此處以0x701為例),MCU不會進入中斷。
6. 需要注意的問題
6.1 在接收中斷中,需要使用R_CAN_ReadRXMBInHandler,而并非R_CAN_ReadRXMB
6.2 發送FD數據,需要注意以下發送幀類型
s_tx_frame.Head.Bits.FDCTR
可從以下幾種類型中進行選擇
/* for FDCTR (st_can_tx_frame_t) (ESI is effective when ESIC=1 and not error passive) */#define CAN_FDCTR_FD_NMNL_ESI ? ? ? (0x05u) ? ? ? ? /* FD Frame (only Nominal Baud Rate, use ESI)
6.3 發送FD數據時,需要根據所用CANFD收發器的特性和所用波特率設置TDC(收發器延遲補償)
原因:如果數據階段使用高波特率(例如5Mbps),則發送器延遲可能會大于TSEG1。在這種情況下,發送器將始終檢測到CAN-FD幀的數據階段中的位錯誤。TDC(收發器延遲補償)可補償發送器無法在該位的采樣點接收其自身發送的位。(詳情請參考RL78/F24 硬件手冊中的“18.15.1.5 CAN Transmitter Delay Compensation”)。
https://www.renesas.com/us/en/document/mah/rl78f23-f24-users-manual-hardware-rev100?r=1552481

基于TDC原理和板上使用的高速CAN收發器。
對于此收發器,當波特率為2M時,應將TDC設置為Disabled。
通過計算(1/(140+140)*10^9=3.57M),當使用的波特率超過3.57M時,請考慮使用TDC。
至此,使用RL78F24進行CANFD發送和接收的參考例程已完成,參考例程請從Gitee上下載。用戶可以在此例程的基礎上,針對用戶板進行配置上的修改,也可以調整發送數據類型。
代碼-RL78F24 CANFD Sample Project - RECN_MCU_AE(gitee.com)
https://gitee.com/login?redirect_to_url=https%3A%2F%2Fe.gitee.com%2Frecn-mcu-ae%2Frepos%2Frecn-mcu-ae%2Frl78f24-canfd-sample-project%2Fsources

如您在使用瑞薩MCU/MPU產品中有任何問題,可識別下方二維碼或復制網址到瀏覽器中打開,進入瑞薩技術論壇尋找答案或獲取在線技術支持。
https://community-ja.renesas.com/zh/forums-groups/mcu-mpu/
1
END
1
推薦閱讀
EZ-CUBE3用戶手冊[2-2]如何在RL78微控制器上使用EZ-CUBE3
EZ-CUBE3用戶手冊[2-1]如何在RL78微控制器上使用EZ-CUBE3
RL78/G23技術支持案例分享(下)