0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

RL78/F24 CANFD参考例程

瑞萨MCU小百科 来源:瑞萨MCU小百科 2024-06-17 15:25 次阅读

RL78/F24新一代超低功耗汽车微控制器,非常适用于实现未来高可靠性的智能执行器和传感器,是低端车身ECU的理想之选。作为对现有RL78/F1x MCU的创新扩展,RL78/F24可满足未来市场的多种需求。RL78/F24具有更高的CPU性能、耐高温能力和更强的外设功能,非常适合各种应用。为了响应E/E汽车架构的新趋势,RL78/F24配备了CAN FD接口

目前在官网上对于CANFD模块,提供了所使用的RL78/F24 RS-CANFD lite Module Software Integration System和相关介绍文档。本篇文章主要介绍如何使用该Middleware在e2 studio中完成CANFD参考例程,并使用RL78/F24 Target Board(RTK7F124FPC01000BJ)配合PCAN进行测试。

1. 所使用的硬件

瑞萨官方RL78/F24 (R7F124FPJ) Target Board,需要用户焊接CN5(CANFD接口),如果需要外部供电,还需要焊接TP1(VDD)和TP2(GND)。

885f3d72-2c5f-11ef-a4c8-92fbcf53809c.png

另外,RL78/F24 Target Board上,CANFD部分电路没有终端电阻,针对本测试系统,需要在CANH和CANL之间焊上120Ω电阻。

调试器:瑞萨官方调试器E2或者E2 Lite(需要注意,E2 Lite只能提供3.3V供电,E2可以提供5V或者3.3V供电)。

辅助设备:使用CANFD其他器件用于测试发送和接收结果,这里使用PCAN(包括硬件和软件,硬件上设置有终端电阻)。

PCAN上设置波特率、采样点和过滤规则:

886a13b4-2c5f-11ef-a4c8-92fbcf53809c.png

888aa7e6-2c5f-11ef-a4c8-92fbcf53809c.png

2. 软件开发环境

e2 studio: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

889b7d32-2c5f-11ef-a4c8-92fbcf53809c.png

注意,用户需要自己添加RS-CANFD lite Module Software Integration System (r_rscanfd_rl78)。

可以使用下面两种方法的其中之一进行添加:

• 打开SC,选择“Components”,点击“Add Component”,点击“Download RL78 Software Integration System modules”。

88bc31e4-2c5f-11ef-a4c8-92fbcf53809c.png

选择相应的模块进行下载

• 将“r01an6334xx0100-rl78f24-sis”中内容,拷贝到Module Download文件夹。

88e140b0-2c5f-11ef-a4c8-92fbcf53809c.png

3. 时钟和模块设置

1

根据文档“r01an6982ed0090-rl78f24”中内容,需要根据实际板子需求配置时钟。

88eb484e-2c5f-11ef-a4c8-92fbcf53809c.png

89126640-2c5f-11ef-a4c8-92fbcf53809c.png

在这种情况下,CANFD模块的属性设置中DLC时钟选择Internal clock

891d6f22-2c5f-11ef-a4c8-92fbcf53809c.png

2

RL78的Smart Configurator中对于波特率的设置,需要手动设置。

本测试代码中以fCAN=20MHz、nominal Baud Rate = 500kbps、data Baud Rate = 2Mbps为例。

波特率

500kbps

2Mbps

Prescaler

0

0

Time Segment 1

29

7

Time Segment 2

10

2

SJW

1

1

Sample Point (%)

75.00

80.00

8934b79a-2c5f-11ef-a4c8-92fbcf53809c.png

4. 调试配置

1由于CANFD收发器需要5V供电,所以需要外部电源给板子提供5V供电。

RL78/F24 (R7F124FPJ) Target Board上有VDD和EVDD,可以分别供电,比如可以VDD使用3.3V供电,EVDD使用5V供电。但是此Target Board默认将VDD和EVDD连接在一起,所以一起用外部电源提供5V电源,此时,外部调试器选择不供电。

89477376-2c5f-11ef-a4c8-92fbcf53809c.png

2由于系统使用外部主时钟,所以调试器的配置需要做相应修改。

8968eb64-2c5f-11ef-a4c8-92fbcf53809c.png

5. 软件流程

参考文档“RL78/F24 RS-CANFD lite Module Software Integration System Rev.1.00”(r01an6334ej0100-rl78f24)中内容。

Application Note:RL78/F24 RS-CANFD lite Module Software Integration System Rev.1.00

1设置P12:输出模式,输出低电平,以保证CANFD收发器处于Normal模式。

899f8a5c-2c5f-11ef-a4c8-92fbcf53809c.png

89b8a58c-2c5f-11ef-a4c8-92fbcf53809c.png

2添加RSCANFD组件,并设置属性(属性的详细内容请参考文章后附上的参考工程)。

89dbe920-2c5f-11ef-a4c8-92fbcf53809c.png

3

添加相应的中断函数

89e91fd2-2c5f-11ef-a4c8-92fbcf53809c.png

4在主函数中添加CAN相关头文件、R_CAN_Create函数和R_CAN_SetConfig函数,并等待通信就绪。

左右滑动查看完整内容

8a03f0b4-2c5f-11ef-a4c8-92fbcf53809c.png

长按可保存查看大图

5配置帧属性,准备将要发送的数据,然后发送CANFD数据。

左右滑动查看完整内容

8a232dda-2c5f-11ef-a4c8-92fbcf53809c.png

长按可保存查看大图

本测试代码中,发送帧为标准数据帧,ID为0x7FE,数据长度为8,数据内容为0x11、0x22、0x33、0x44、0x55、0x66、0x77、0x88。

8a2fe1ba-2c5f-11ef-a4c8-92fbcf53809c.png

从PCAN中可以接收到RL78/F24发送的CANFD数据。

可以看出,数据类型为FD,并且切换波特率。

通过逻辑分析仪观察CTX和CRX波形,可以看到Nominal段和Data段波特率不一样。

8a37b2fa-2c5f-11ef-a4c8-92fbcf53809c.png

6设置接收filter功能

在R_CAN_SetConfig()函数后,添加接收规则。

左右滑动查看完整内容

8a5425b6-2c5f-11ef-a4c8-92fbcf53809c.png

长按可保存查看大图

接收标准帧、ID为0x700的数据、将数据接收到RXBUF0中。

7接收CANFD数据

在中断函数RSCFD_A_GlobalMBReceiveIRQ中添加接收代码。

左右滑动查看完整内容

8a68004a-2c5f-11ef-a4c8-92fbcf53809c.png

长按可保存查看大图

使用PCAN发送以下ID(0x700)和数据,注意要勾选“CAN FD”和“Bit Rate Switch”。

8a7b9542-2c5f-11ef-a4c8-92fbcf53809c.png

MCU可以正常接收,可以看到FDF和BRS的值都为1。

左右滑动查看完整内容

8a896cee-2c5f-11ef-a4c8-92fbcf53809c.png

长按可保存查看大图

验证如果PCAN发送的ID为0x701(除0x700以外的ID,此处以0x701为例),MCU不会进入中断。

6. 需要注意的问题

1在接收中断中,需要使用R_CAN_ReadRXMBInHandler,而并非R_CAN_ReadRXMB。

R_CAN_ReadRXMB

从RX消息缓冲区读取接收到的数据。

R_CAN_ReadRXMBInHandler

从RX消息缓冲区读取接收到的数据。(在中断处理进程中)

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_CLASSICAL     (0x00u)     /* Classical Frame              */
#define CAN_FDCTR_FD        (0x06u)     /* FD Frame (use Data Baud Rate)       */
#define CAN_FDCTR_FD_NMNL      (0x04u)     /* FD Frame (only Nominal Baud Rate)     */
#define CAN_FDCTR_FD_ESI      (0x07u)     /* FD Frame (use Data Baud Rate and ESI)   */
#define CAN_FDCTR_FD_NMNL_ESI    (0x05u)     /* FD Frame (only Nominal Baud Rate, use ESI)

3发送FD数据时,需要根据所用CANFD收发器的特性和所用波特率设置TDC(收发器延迟补偿)。

原因:如果数据阶段使用高波特率(例如5 Mbps),则发送器延迟可能会大于 TSEG1。在这种情况下,发送器将始终检测到CAN-FD帧的数据阶段中的位错误。TDC(收发器延迟补偿)可补偿发送器无法在该位的采样点接收其自身发送的位。(详情请参考RL78/F24硬件手册中的“18.15.1.5 CAN Transmitter Delay Compensation”)。

RL78/F24硬件手册

基于TDC原理和板上使用的高速CAN收发器。

8adf7b2a-2c5f-11ef-a4c8-92fbcf53809c.jpg

对于此收发器,当波特率为2M时,应将TDC设置为Disabled。

8ae74a1c-2c5f-11ef-a4c8-92fbcf53809c.jpg

通过计算(1/(140+140)*10^9=3.57M),当使用的波特率超过3.57M时,请考虑使用TDC。

至此,使用RL78/F24进行CANFD发送和接收的参考例程已完成,参考例程请从Gitee上下载。用户可以在此例程的基础上,针对用户板进行配置上的修改,也可以调整发送数据类型。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7646

    浏览量

    151978
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17316

    浏览量

    352419
  • 瑞萨
    +关注

    关注

    35

    文章

    22310

    浏览量

    86660
  • CANFD
    +关注

    关注

    0

    文章

    59

    浏览量

    5010

原文标题:RL78/F24 CANFD参考例程

文章出处:【微信号:瑞萨MCU小百科,微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    瑞萨RL78/F24的12V电机控制解决方案可减轻CPU矢量运算处理负载

    瑞萨将于2022年10月发布RL78/F24 BLDC-RSSK(RL78/F24的12V电机控制瑞萨解决方案入门套件)。这款RSSK适用于BLDC/FOC电机控制,包括小型电机。
    的头像 发表于 08-12 09:22 2856次阅读

    RL78/F23、F24 用户手册:硬件 Rev.1.00

    RL78/F23、F24 用户手册:硬件 Rev.1.00
    发表于 01-09 19:05 0次下载
    <b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>23、<b class='flag-5'>F24</b> 用户手册:硬件 Rev.1.00

    Renesas Solution 入门套件 RL78/F24 用户手册的 12 V 电机控制评估系统

    Renesas Solution 入门套件 RL78/F24 用户手册的 12 V 电机控制评估系统
    发表于 01-09 19:21 0次下载
    Renesas Solution 入门套件 <b class='flag-5'>RL78</b>/<b class='flag-5'>F24</b> 用户手册的 12 V 电机控制评估系统

    Renesas Flash Driver RL78 Type 02 RL78/F2x 用户手册

    Renesas Flash Driver RL78 Type 02 RL78/F2x 用户手册
    发表于 01-10 19:04 1次下载
    Renesas Flash Driver <b class='flag-5'>RL78</b> Type 02 <b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>2x 用户手册

    RL78/F14RDK 快速入门指南

    RL78/F14 RDK 快速入门指南
    发表于 03-17 19:27 0次下载
    <b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>14RDK 快速入门指南

    Renesas Flash Driver RL78 Type 02RL78/F23 和 RL78/F24 用户手册

    Renesas Flash Driver RL78 Type 02 RL78/F23 和 RL78/F24 用户手册
    发表于 05-12 19:25 3次下载
    Renesas Flash Driver <b class='flag-5'>RL78</b> Type 02<b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>23 和 <b class='flag-5'>RL78</b>/<b class='flag-5'>F24</b> 用户手册

    EEPROM 仿真软件 RL78 Type 02RL78/F23 和 RL78/F24 用户手册

    EEPROM 仿真软件 RL78 Type 02 RL78/F23 和 RL78/F24 用户手册
    发表于 05-19 18:41 2次下载
    EEPROM 仿真软件 <b class='flag-5'>RL78</b> Type 02<b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>23 和 <b class='flag-5'>RL78</b>/<b class='flag-5'>F24</b> 用户手册

    Renesas Flash Driver RL78 Type 02RL78/F23 和 RL78/F24 用户手册

    Renesas Flash Driver RL78 Type 02 RL78/F23 和 RL78/F24 用户手册
    发表于 06-29 19:17 1次下载
    Renesas Flash Driver <b class='flag-5'>RL78</b> Type 02<b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>23 和 <b class='flag-5'>RL78</b>/<b class='flag-5'>F24</b> 用户手册

    EEPROM 仿真软件 RL78 Type 02RL78/F23 和 RL78/F24 用户手册

    EEPROM 仿真软件 RL78 Type 02 RL78/F23 和 RL78/F24 用户手册
    发表于 06-29 19:33 0次下载
    EEPROM 仿真软件 <b class='flag-5'>RL78</b> Type 02<b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>23 和 <b class='flag-5'>RL78</b>/<b class='flag-5'>F24</b> 用户手册

    RL78/F23、F24 用户手册:硬件 Rev.1.00

    RL78/F23、F24 用户手册:硬件 Rev.1.00
    发表于 06-30 18:49 1次下载
    <b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>23、<b class='flag-5'>F24</b> 用户手册:硬件 Rev.1.00

    Renesas Solution 入门套件 RL78/F24 用户手册的 12V 电机控制评估系统

    Renesas Solution 入门套件 RL78/F24 用户手册的 12 V 电机控制评估系统
    发表于 06-30 19:20 0次下载
    Renesas Solution 入门套件 <b class='flag-5'>RL78</b>/<b class='flag-5'>F24</b> 用户手册的 12V 电机控制评估系统

    Renesas Flash Driver RL78 Type 02RL78/F2x 用户手册

    Renesas Flash Driver RL78 Type 02 RL78/F2x 用户手册
    发表于 06-30 19:48 1次下载
    Renesas Flash Driver <b class='flag-5'>RL78</b> Type 02<b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>2x 用户手册

    RL78/F14RDK 快速入门指南

    RL78/F14 RDK 快速入门指南
    发表于 07-06 20:54 0次下载
    <b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>14RDK 快速入门指南

    RL78/G15组和RL78/G16组 瑞萨Flash示例程序01型SC版本应用说明

    电子发烧友网站提供《RL78/G15组和RL78/G16组 瑞萨Flash示例程序01型SC版本应用说明.pdf》资料免费下载
    发表于 02-19 10:36 0次下载
    <b class='flag-5'>RL78</b>/G15组和<b class='flag-5'>RL78</b>/G16组 瑞萨Flash示<b class='flag-5'>例程</b>序01型SC版本应用说明

    瑞萨RL78/F24RL78/F23 MCU适用于下一代边缘应用

    Renesas RL78/F2x低功耗16位MCU,用于汽车级、增强的安全性、连接性和功能安全功能
    的头像 发表于 03-07 13:34 1655次阅读
    瑞萨<b class='flag-5'>RL78</b>/<b class='flag-5'>F24</b>和<b class='flag-5'>RL78</b>/<b class='flag-5'>F</b>23 MCU适用于下一代边缘应用