【经验】瑞萨RH850 CANFD全局接收FIFO buffer中断处理报文的方法介绍
在使用瑞萨(RENESAS)MCU RH850的CANFD进行通信时,有多种通信接收和发送的方法可以使用,本文主要介绍使用CANFD 全局接收FIFO buffer中断处理CANFD报文的方法,方法步骤举例如下:
1.设置CAN端口使能,相应的端口功能选择和端口输入输出选项配置:
R_PORT_SetAltFunc(Port1, 12, Alt1, Input); /* CAN4 TX */
R_PORT_SetAltFunc(Port1, 13, Alt1, Output); /* CAN4 RX */
2.使能外部收发器:
R_PORT_SetGpioOutput(Port2, 6, Low);
3.CANFD初始化配置步骤:
/* 切换到CANFD模式,复位主要寄存器 */
RCFDC0CFDGCTR = 0x00000005;
RCFDC0CFDGAFLCFG0 = 0x00000000;
/* 当CAN RAM初始化正在进行则等待*/
while((RCFDC0CFDGSTS & 0x00000008)) ;
/* 切换到全局/通道复位模式 */
RCFDC0CFDGCTR &= 0xfffffffb;
RCFDC0CFDGCTR |= 0x00000001u;
while(RCFDC0CFDGSTS!=0x01);
RCFDC0CFDC4CTR &= 0xfffffffb;
//时钟速率配置clkc=PPLLCLK2=40M
/*Bitrate = fCAN/(BRP+1)/(1+TSEG1+TSEG2) = 40M/1/80 = 0.5Mbps(500Kbps) */
RCFDC0CFDC4NCFG = 0x133a9800; //
//Bitrate = fCAN/(BRP+1)/(1+TSEG1+TSEG2) = 40M/1/8 = 5Mbps
RCFDC0CFDC4DCFG = 0x01140000;
/*设置接收过滤规则*/
RCFDC0CFDGAFLCFG1 |= 0x80000000;
...
/* 接收buffer设置*/
RCFDC0CFDRMNB = 0x0310;
/*接收FIFO buffer设置*/
RCFDC0CFDRFCC0=0x0000F272;
/* 关闭错误中断使能*/
RCFDC0CFDGCTR &= 0xfffff0ff;
/* 全局切换到通信模式 */
if (RCFDC0CFDGSTS & 0x03)
{
RCFDC0CFDGCTR &= 0xfffffffc;
while ((RCFDC0CFDGSTS & 0x02) == 2) {
}
while ((RCFDC0CFDGSTS & 0x01) == 1) {
}
}
//设置TDC使用全局操作模式通道复位模式
RCFDC0CFDC4FDCFG |= 0x00050200;
RCFDC0CFDC4FDCFG |= 0x08000000;
/* 通道切换到通信模式 */
if (RCFDC0CFDC4STS & 0x03)
{
RCFDC0CFDC4CTR &= 0xfffffffc;
while ((RCFDC0CFDC4STS & 0x02) == 2) {
}
while ((RCFDC0CFDC4STS & 0x01) == 1) {
}
}
RCFDC0CFDRFCC0 |= 0x01; //RxFIFO0设置为操作模式
INTC1TBRCANGRECC0= 1; //中断表使能
INTC1MKRCANGRECC0 = 0; //中断处理使能
4.全局接收FIFO buffer中断处理方法参考如下:
#pragma interrupt INTRCANGRECC_InterruptHandler(enable=false, channel=23, fpu=true, callt=false)
void INTRCANGRECC_InterruptHandler( void )
{
Canfd_FrameType* pRxFIFOBuffer;
RCFDC0CFDRFSTS0LL &= 0x07; //清除中断请求
while(RCFDC0CFDRFSTS0LH != 0)
{
/* 从接收FIFO buffer中读出数据*/
pRxFIFOBuffer = (Canfd_FrameType*) &(RCFDC0CFDRFID0);
CANFDRxFIFOData = pRxFIFOBuffer[0];
RCFDC0CFDRFPCTR0LL = 0xff;
}
}
以上主要介绍瑞萨RH850使用接收FIFO buffe中断的方法接收CANFD 报文,帮助大家快速的掌握RH850 CANFD收发功能。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由Park_世强提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】一文认识瑞萨RH850 MCU的RAM空间
Renesas(瑞萨电子)汽车大集成MCU RH850系列,集车身,底盘,发动机功能资源为一体,采用40nm工艺,符合ISO26262 ASIL-B~ASIL D的功能安全标准,支持HSM加密模块。本文主要介绍RH850系列MCU的 ram空间。
【经验】一文让你了解DSP与MCU区别
世强代理有Silicon Labs EFM8/EFM32系列8位MCU/32位MCU,Renesas 汽车级MCU RL78 系列,RH850、V850系列,工业级MCU RX系列等。世强有代理进芯电子32位浮点DSP,32位定点DSP,16位DSP,国内唯一可批量供货的32位工业控制DSP供应商。
【经验】CS+开发瑞萨MCU RH850的ADC+DMA调试指引
Renesas的RH850 F1K是汽车车身控制的首选MCU,由于高性能和安全性得到汽车客户认可,但由于开发资料有限,导致许多客户开发比较头痛。近期有客户在使用DMA的开发中遇到了问题,下面结合F1K的开发板实现ADC+DMA的驱动设计。
RL78/G24 RENESAS MCU
型号- R7F101GBE,R7F101GBG,R7F101G7G2DNP,R7F101GBG4CNP,R7F101GJE,R7F101G7G4CNP,R7F101GJG,R7F101GBG2DNP,R7F101GFE,R7F101GEE3CNP,R7F101GFG,R7F101GJE3CFA,R7F101GBG2DFP,R7F101GAE3CSP,R7F101GFE3CFP,R7F101G7E4CNP,R7F101G7E2DNP,R7F101GEE4CNP,R7F101G7G3CNP,R7F101GAG3CSP,R7F101GFG3CFP,R7F101GBE2DNP,R7F101GBE4CNP,R7F101GGE,R7F101GEE2DNP,R7F101GGE4CFB,R7F101GGG,R7F101GBE2DFP,R7F101GJE2DFA,R7F101G7E3CNP,R7F101GJE4CFA,R7F101G6E,R7F101G8E3CLA,R7F101G8G2DLA,R7F101G6G,R7F101GGG3CNP,R7F101GAG2DSP,R7F101GFG2DFP,R7F101GAG4CSP,R7F101GGE2DNP,R7F101GLG3CFA,R7F101GLG,R7F101GGG3CFB,R7F101GLG3CFB,R7F101GLE2DFB,R7F101GEG4CNP,R7F101GLE2DFA,R7F101GBE3CNP,R7F101GEG2DNP,R7F101GGE2DFB,R7F101GBE3CFP,RL78/G24,R7F101GLE,R7F101GJG4CFA,R7F101G6E2DSP,R7F101G8G3CLA,R7F101G6E4CSP,R7F101G8E2DLA,R7F101G6G3CSP,R7F101G7E,R7F101G7G,R7F101GGG2DNP,R7F101GEG,R7F101GAE,R7F101GAG,R7F101GEG3CNP,R7F101GGE3CNP,R7F101GJG2DFA,R7F101GFE2DFP,R7F101GLE3CFB,R7F101GLG2DFB,R7F101GGG4CFB,R7F101GLE3CFA,R7F101GLG2DFA,R7F101GBG3CNP,R7F101GLL3XXXCFB#AA1,R7F101GGE3CFB,R7F101GGG2DFB,R7F101GEE,R7F101GAE4CSP,R7F101GJG3CFA,R7F101GBG3CFP,R7F101G6G4CSP,R7F101G8E,R7F101GAE2DSP,R7F101G8G,R7F101G6G2DSP,R7F101G6E3CSP
【经验】瑞萨MCU RH850/U2A8的GHS调试链接配置方式
由于在开发RH850系列的MCU时,GHS对应链接文件都有所不同,为了方便客户的开发应用特意总结了一下RH850/U2A8的一些配置选型界面参数。
瑞萨公开下一代车用SoC和MCU处理器产品路线图,全新R-Car MCU系列扩展其车辆控制产品阵容
瑞萨电子公开了针对汽车领域所有主要应用的下一代片上系统(SoC)和微控制器(MCU)计划。未来产品阵容包括采用先进小芯片封装(Chiplet)集成技术的R-Car SoC和基于Arm®核的车用MCU。
【经验】瑞萨RH850 MCU芯片如何实现从BOOT跳转到APP地址中执行?
本文介绍瑞萨RH850芯片如何实现从BOOT区域跳转到APP区域。
【经验】关于瑞萨MCU RH850的option bytes配置说明
瑞萨MCU RH850比较特殊的地方,其中一点就是Option Bytes配置。Option Bytes实际上是一个扩展区域,用于保存用户上电初始化配置的参数。我们以RH850 F1L系列为例。
RA family MCU Injection current to prevent damage to MCU Application Note
型号- RA FAMILY,RA4T1,RA6T2,RA6T1,RA6T3,RA4M1,RA2L1,RA4M3,RA6M1,RA4M2,RA6M3,RA6M2,RA6M5,RA2E1,RA6M4,RA4E1,RA2E2,RA6E1,RA2A1,RA4E2,RA6E2
【经验】MCU进入休眠模式后,静态电流不满足低功耗指标的问题解析
工程师在设计产品时,实现功能很简单,但要集成系统应用保持稳定工作并保证低功耗指标,就不是一件很容易的事情了,明明MCU的电气参数电流指标为微安级别,但设计完系统进入休眠模式后,静态电流却是毫安级别,甚至于大几十毫安,高出了标准的几十上百倍。本文以Renesas瑞萨电子RL78或RH850为例,介绍分析静态电流不满足低功耗指标的步骤,找出可能导致静态电流高的原因。
【经验】RH850 MCU内置的智能加密单元ICU,保护车辆ECU系统免遭篡改或盗窃损害
瑞萨电子RH850 MCU内置的智能加密单元ICU很好的解决了这些问题,将秘钥存储在单独的存储区域中,CPU无法直接访问,需要通过专用机制来增强实际的防篡改功能,支持高端的加密操作如RSA,ECC等;可以提供防止软件操纵,连接硬件和软件,安全启动,网络节点中ECU的验证等安全服务。
【经验】以RH850/F1K MCU为例,分享怎么提高CPU使用效益
某客户在做基于RH850/F1K的开发时用到了浮点运算功能,在运行浮点运算函数时发现CPU利用率比较高,响应速度比较慢,运行不正常,怀疑是MCU内部资源问题。
【经验】瑞萨RH850/U2A8 MCU睡眠唤醒的实现
本文描述RH850/U2A8的睡眠和唤醒实现,使用的IDE是CS+,主芯片型号是R7F702301(292PIN)。开发过程能使用SMARTCONFIG自动生成代码。主要步骤如下描述。
【经验】基于MCU CS+ RH850/F1K Boot开发指引
车载ECU开发都需要通过Boot实现在线升级,Boot是嵌在APP前面执行的程序,在需要更新APP代码时会对flash APP部分重新编程。近期有客户调试RH850/F1K MCU出现Boot跳到APP程序不能执行,下面以开发板为例实现Boot到APP。
RA family MCU Injection current to prevent damage to MCU
型号- RA FAMILY,RA6T2,RA6T1,RA4M1,RA2L1,RA6M1,RA4M3,RA4M2,RA6M3,RA6M2,RA6M5,RA2E1,RA6M4,RA4E1,RA2E2,RA6E1,RA2A1
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可烧录IC封装SOP/MSOP/SSOP/TSOP/TSSOP/PLCC/QFP/QFN/MLP/MLF/BGA/CSP/SOT/DFN;IC包装Tray/Tube/Tape;IC厂商不限,交期1-3天。支持IC测试(FT/SLT),管装、托盘装、卷带装包装转换,IC打印标记加工。
最小起订量: 1pcs 提交需求>
登录 | 立即注册
提交评论