野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3219|回复: 1

瑞萨RA6M5 CAN通讯

[复制链接]
发表于 2022-11-19 20:52:05 | 显示全部楼层 |阅读模式
本帖最后由 xinmeng_wit 于 2022-11-19 21:06 编辑

一、前言

瑞萨RA6M5芯片带有2路CAN接口,并同时支持CAN2.0和CANFD。
启明6M5开发板已经将两路CAN接口都引出来了,并都配有CAN收发器,所以直接就可以使用。
本次使用FSP配置其中一路CAN实现CAN通讯。

二、CAN接口配置

1、确定CAN接口


打开开发板原理图,确定CAN的引脚,本次我们CANFD0,如下:

野火论坛202211191926507733..png

P401和P402用作CANFD0的收发引脚

2、配置引脚

野火论坛202211191933598663..png

3、配置Stacks

野火论坛202211191942066901..png

野火论坛202211191952165361..png

野火论坛202211191947294070..png

野火论坛202211191958508828..png


4、生成代码

野火论坛202211191953102332..png

5、添加用户代码

新建两个文件can.c 和can.h

can.c里面实现can初始化函数,can回调函数,定义can接收过滤器规则。

can初始化函数:

野火论坛202211192005533754..png


初始化完成后,发送一帧数据,ID为0x20,
数据为00 01 02 03 04 05 06 07

can回调函数:

野火论坛202211192008358021..png


设置接收过滤规则:

野火论坛202211192028137555..png

若要设置多组过滤器规则,可以继续添加其它规则,但是需要将接收过滤规则counter调大,
也就是将数组p_canfd0_afl[CANFD_CFG_AFL_CH0_RULE_NUM]的长度CANFD_CFG_AFL_CH0_RULE_NUM调大。
在FSP配置的时候可以设置这个值,我现在设置的四1,所以我只能设置一个过滤规则。

三、下载验证

主函数调用canfd_init函数进行初始化can接口,然后编译下载。

使用usb转can工具连接开发板和电脑,通过上位机进行数据监控:

1、上电,开发板发送信息:

野火论坛202211192035403699..png

2、上位机发送消息,开发板接收,并将接收到的can数据通过uart打印出来:

野火论坛202211192038357496..png

可见,开发板的发送和接收数据都是ok的。
另外,当上位机发送消息ID改成0x40~0x4F之外的其它ID的时候,开发板未收到消息,说明我们设置的过滤器规则是生效的。

由此,瑞萨RA6M5的can通讯测试配置并测试成功。

源代码链接:https://gitee.com/xinmeng_wit/renesas_ra6m5_project


野火论坛202211191945346026..png
野火论坛202211191933446942..png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-3-29 05:53 , Processed in 0.033562 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表