收到瑞萨发来的快递,型号如图
微信图片_20230614121934.jpg 微信图片_20230614121928.jpg
做工还可以,就是有点简陋,除了MCU,没有见到别的芯片,背面有几个清晰的指纹印。。。
1.板子自测
微信图片_20230614121928 - 副本.jpg
板子出厂带1个检测的程序,给板子加电(注意电源是是3.3V, 如上图所示),
1)板子的LED1,LED2会同时亮2秒左右,然后灭
2)点击一下用户按钮,LED1亮,LED2灭,
3)再点击一下用户按钮,LED1灭,LED2,亮
4)再点击一下用户按钮,LED1,LED2,轮流闪

如果板子加电后,上面2个灯的情况不是上面所说,那么板子很可能是有问题。

2.硬件接线
我用的是USB转TTL 3.3V 给板子供电,然后下载器是野火的DAP,普通版。
微信图片_20230614124300.jpg 微信图片_20230614121850.jpg 微信图片_20230614122238.jpg
接线情况
1)供电
板子------USB转TTL 3.3
VCC--------接3.3V
GND------接电源的GND
2)下载器
板子----------野火DAP下载器
VCC--------------VREF
GND-------------GND
SWDIO----------TMS
SWCLK-----------TCK
ps:开始时,给板子供电是5V,下载器没有接VERF,keil始终无法识别芯片
后来咨询群里的各位小伙伴, 尤其是 晓幸福 同学热情帮忙,最后,接上VREF,供电改为3.3V,问题顺利解决。
在此十分感谢大家,群里的给位小伙伴都很friendly,非常开心认识大家
3.软件安装
1)keil 5.38a下载及安装
参考网页 https://900401.com/65315.html
下载网址:https://www.keil.com/download/product/
QQ图片20230614130539.png
安装
1.png 2.png 3.png 4.png 这里点空格,然后一直点next 即可


2)keil芯片包 [color=var(--color-accent-fg)]MDK_Device_Packs_v4.4.0.zip 下载及安装
参考网页:https://blog.csdn.net/weixin_44550536/article/details/129759355
下载网址:https://github.com/renesas/fsp/releases
41.png
注意,需要先安装好 Keil 软件,然后再安装 RA 芯片包,双击它们的安装包,然后一直点next, 进行安装即可

3)setup_fsp_v4_4_0_rasc_v2023-04.exe下载及安装
[color=var(--color-accent-fg)][color=var(--color-accent-fg)]参考网页:https://blog.csdn.net/weixin_44550536/article/details/129759355






下载网址:https://github.com/renesas/fsp/releases

其文件名表示安装程序包含的 FSP 库版本为v4.4.0、rasc版本为 v2023-04

安装过程很简单,一直点next就行,这里忘记截图了。从别处贴几张安装图凑合看
71.png 72.png 73.png 74.png
4)将FSP集成到KEIL安装包
参考:https://doc.embedfire.com/mcu/renesas/fsp_ra/zh/latest/doc/chapter2/chapter2.html
首先打开 Keil 软件,在菜单栏依次点击:“Tools”→“Customize Tools Menu”
81.png
将弹出如下图所示的定制工具菜单的界面。
82.png
在“Menu Content”窗口中新建一个菜单项“RA Smart Configurator”,然后在“Command”一栏
中输入 RASC 程序的路径,在“Initial Folder”一栏中输入 “$P”,在“Arguments”一栏中输入:

--device $D --compiler ARMv6 configuration.xml
83.png
同理,在“Menu Content”窗口中再次新建一个菜单项 “Device Partition Manager”,然后在
“Command”一栏中输入 RASC 程序的路径,在“Initial Folder”一栏中输入“$P”,在“Arguments”
一栏中输入:

-application com.renesas.cdt.ddsc.dpm.ui.dpmapplication configuration.xml "$L%L"

84.png
最后再点击“OK”即可。
再次点开Keil软件菜单栏的“Tools”,我们可以看到“RASmartConfigurator”和“DevicePartition
Manager”这两个菜单项已经被加入到 Tools 栏上面了。

85.png
4.新建工程,源程序及下载
参考网页:https://doc.embedfire.com/mcu/renesas/fsp_ra/zh/latest/doc/chapter6/chapter6.html
1)选择工作空间目录手动新建一个名为 “Workspace_Keil” 的文件夹,并将该文件夹作为我们的工作空间,值得注意的是:为了避免编译错误,该工作空间文件夹必须放在全英文的路径下,不能包含有中文字符。
2) 新建一个工程首先打开 RASC 软件,接着在菜单栏依次点击“File”→“New”→“FSP Project”,开始新建一个工程。 如下图所示。 91.png
然后会弹出如下的默认界面。
90.png
我们取消勾选“Use default location”,然后将上图中的 Keil 工程名字(Project name)改为统一的名
字:RA2E1,将 Keil 工程的位置路径(Location)设置为:“{工作空间路径}/Template”,
如下图所示。下图中的“Workspace_Keil”为工作空间文件夹,该文件夹下面将存放多个 Keil 工
程。

92.png
注意:为了避免编译错误,Keil 工程所在位置的绝对路径必须是全英文路径,不能包
含有中文字符。

接下来点击“Next”进入下一步,到工程选项界面,如下图所示。我们需要在这里选择 FSP 库版本、板子型号、设备(MCU)型号、编程语言、编译器等。

93.png
按照下面的方式更改上图中的配置:
• FSP Version 那一栏那里的 FSP 库版本选择 “4.4.0”。一般来说选择最新的版本即可。
• 板子型号选择 “Custom User Board (Any Device)”,即用户自定制的板子。因为软件不知
道我们的板子用的是什么芯片,所以后面有一个小括号括起来的“Any Device”提示字样。
• Device 一栏,我们要点开“⋯”按钮,在弹出的界面中选择我们板子上所用的芯片型号,然
后点击“确定”即可。
选到“RA2E1”列表下的这个型号 “R7FA2E1A92DFL”。
• 编程语言:我们默认选择 C 语言。
• 在下方的“IDE Project Type”栏里选择“Keil MDK Version 5”。
• 在下方的“Toolchains”栏里选择工具链“ARM Compiler 6”,这个是 Keil 自带的 ARM 官方
编译器。
更改完成后的配置如下图所示。然后点击“Next”下一步。

94.png 95.png
这里默认选择 “Flat (Non-TrustZone) Project”即可。点击“下一步”。
96.png 97.png
接着就会显示如下的界面,新工程这就新建完成了,点击 Generate Project Content,然后将该界面关掉即可
98.png
我们可以在“{工作空间路径}/06_Template”目录下面看到 RASC 已经为我们自动地生成了一个
Keil 工程。如下图所示。

103.png

这里参考 瑞萨电子RA产品家族选型手册.pdf
101.png 102.png
3)配置keil
需要注意的是,在使用 RASC 生成一个新的 Keil 工程之后,如果直接编译和下载程序,虽然能编
译通过,但是程序下载这一步是会报错的。因为 RASC 自动生成的这个 Keil 工程默认情况下并
没有配置好一些必需的工程选项。
这里有一个小技巧,能让我们免去配置各个工程选项的烦恼,即:需要在选择芯片型号那里切换
到其他芯片型号再切换回来,这样可以让 Keil 软件自动按默认方式配置工程,重新编译之后即
可成功下载程序。
如图所示,具体步骤如下:
• ①:单击该工程选项配置按钮。
• ②:点击最左边的“Device”页面。在这个页面可以切换芯片型号。
• ③:在这里首先点到其他一个芯片型号上,然后再点回开发板所用的芯片型
号:“R7FA2E1A9”,这样可以让软件自动配置一些关键的工程选项。
• ④:最后点击“OK”按钮即可。

201.png
添加工程的头文件包含路径:
需要注意,我们在这里需要添加一下头文件包含路径:”./src”,因为在后面编写驱动程序的时候,
我们会把所有的驱动代码文件都放到工程根目录的 src 文件夹下面。
添加方法如下。首先打开工程选项配置窗口,并切换到“C/C++ (AC6)”页面,可以看到其中有
一栏“Include Paths”,目前为空。我们要做的就是在“Include Paths”当中添加一条头文件包含的
相对路径“./src”。
点右边的“⋯”按钮。

202.png
然后点“New”按钮,新建一条头文件包含路径。
203.png
加入“./src”路径,然后一路点击确定即可。路径“./src”或者“.\src”表示的是相对于 Keil 工程
根目录的相对路径。

204.png
单击编译按钮即可对该工程进行编译。右边“LOAD”按钮为下载程序按钮。如下图所示。
205.png
在成功编译工程之后的下一步是调试程序或者下载程序,但是这需要正确配置调试器后才能进
行,否者会弹出提示错误信息的窗口。

4)配置DAP下载器
硬件连接
用 USB 线连接仿真器到电脑,如果仿真器的灯亮则表示正常,可以使用。然后把仿真器的另外
一端连接到开发板,给开发板上电,然后就可以通过软件 KEIL 或者 IAR 给开发板下载程序。仿
真器与电脑和开发板连接方式如下图所示:

301.png
在仿真器连接好电脑和开发板且开发板供电正常的情况下,打开编译软件 KEIL,在 KEIL 菜单
栏下面的工具栏的魔术棒选项卡里面选择仿真器的型号,具体过程如下。
Debug 页面下选择使用 CMSIS-DAP Debugger:

302.png
Utilities 页面下勾上选择 Use Debug Driver:
303.png
Debug Settings 选项配置如下,只要识别到芯片即可,其它选项可以按照默认配置,无需修改。
304.png
如果前面步骤都成功了,接下来就可以把编译好的程序下载到开发板上运行。下载程序不需要其
他额外的软件,直接点击 Keil 中的“LOAD”按钮即可。

305.png
5)FSP配置
该Templete文件夹为RA2E1板子的工程模板。以后类似的工程,都可以在此基础上建立和开发。
复制该Templete文件夹,改为01_LED.
双击01_LED 工程文件 “RA2E1.uvprojx”,打开该 Keil 工程。
然后在菜单栏依次点击“Tools”→“RA Smart Configurator”,即可打开与该 Keil 工程相关联的
RASC 软件 FSP 配置界面。

按下图操作,在P103的Mode ,吧Disable 改为Output mode(initial high)
111.png 112.png

IOPORT 属性 描述
Mode: IO 引脚的工作模式,包括输入模式和输出模式,选择输出模式时可以设置引脚的初始输出电平。
Pull up: IO 引脚是否上拉。
Output type: IO 引脚的输出类型。可以选 CMOS 推挽输出或开漏输出。

配置完成之后按下快捷键“Ctrl + S”保存,最后点右上角的“Generate Project Content”图标,让软件根据我们的设置自动生成配置代码即可。
如果从左侧“项目资源管理器”打开工程目录下的“flex software/pin_data.c”源文件,就会看到
g_bsp_pin_cfg_data 数组中已经加入了 LED 引脚的配置数据,如下图所示。在 IOPORT 初始化
的时候,它们会被用来对引脚进行初始化配置。

113.png
此处参考RA2L1_E1_LQFP48 TOUCH.pdf 板子的原理图,可见LED2接入P103 脚
114.png
ps:之前在keil源程序 hal_entry 入口函数 写好led闪烁的代码之后,下载板子,LED并不闪烁,后来发现,需要在FSP对P103进行配置。
5)keil源程序
(1)hal_entry 入口函数
当使用 RTOS 时,程序从 main 函数开始进行线程调度;当没有使用 RTOS 时,C 语言程序的入
口函数 main 函数调用了 hal_entry 函数。由于我们新建的工程是没有选用 RTOS 的,因此,用户
程序从 hal_entry 函数开始执行。我们直接打开“\src\hal_entry.c”文件,在 hal_entry 函数里面编
写我们的代码。
想要实现 LED 灯的闪烁效果,其思路非常地简单:首先初始化配置 LED 引脚,然后在一个死循
环里面重复此流程:LED 灯亮,延时 1s,LED 灯灭,延时 1s,然后 LED 灯又亮。如此反复循环,
就能实现 LED 灯的闪烁效果。
首先,我们需要通过 R_IOPORT_Open 函数来初始化 IOPORT 模块,在调用 R_IOPORT_Open 函
数时,需要传入控制块参数 g_ioport_ctrl 和配置参数 g_ioport.p_cfg。

// 调用 R_IOPORT_Open 函数来初始化 IOPORT 模块
R_IOPORT_Open (&g_ioport_ctrl, g_ioport.p_cfg);

成功打开 IOPORT 模块后,说明 IO 引脚已经全部初始化完成。接着让程序继续往下执行,进入
到 while(1) 死循环。在 while(1) 循环里,我们使用 R_IOPORT_PinWrite 和 R_BSP_SoftwareDelay 这
两个函数来实现前面所述的思路。
使用 R_IOPORT_PinWrite 函数可以控制引脚的输出高低电平,从而控制 LED 灯的亮灭。它的
第一个参数需要传入控制块 g_ioport_ctrl,第二个参数传入 IO 端口和引脚号,第三个参数传入 IO
引脚电平。
fsp_err_t R_IOPORT_PinWrite (ioport_ctrl_t * const p_ctrl, bsp_io_port_pin_ t pin, bsp_io_level_t level);
使用 R_BSP_SoftwareDelay 函数可以进行延时,LED 灯维持亮和灭这两种状态的时间由此函数
决定。它的第一个参数表示延时的时间量,第二个参数表示时间单位。
void R_BSP_SoftwareDelay (uint32_t delay, bsp_delay_units_t units);
时间单位参数可选:
• BSP_DELAY_UNITS_SECONDS,表示秒;
• BSP_DELAY_UNITS_MILLISECONDS,表示毫秒;
• BSP_DELAY_UNITS_MICROSECONDS,表示微秒。

完整代码如下
void hal_entry(void)
{
        R_IOPORT_Open(&g_ioport_ctrl, g_ioport.p_cfg);
    /* TODO: add your own code here */
        while(1)
    {
        R_BSP_SoftwareDelay(1000, BSP_DELAY_UNITS_MILLISECONDS); // NOLINT
        R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_03, BSP_IO_LEVEL_LOW);

        R_BSP_SoftwareDelay(1000, BSP_DELAY_UNITS_MILLISECONDS); // NOLINT
        R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_03, BSP_IO_LEVEL_HIGH);
    }

#if BSP_TZ_SECURE_BUILD
    /* Enter non-secure code */
    R_BSP_NonSecureEnter();
#endif
}



点击编译,下载即可。

测评完毕。
6.致谢
另外就是再次吐槽一下,官方给的教程资料非常的少,对新手很不友好。希望这方面能够改善一下。所以我花时间,写了一个比较详细的测评,希望其他小伙伴能够节省时间,尽快配置好环境。
官方给的下载资料的链接,用的是百度网盘,速度非常的慢,而且里面的软件有各种版本,都很大,下的人捉急
后来我都是找官网下载
板子也是最小系统,该有的都没有,好多东西都试不了。。。。。
最后,再次感谢群里的各位小伙伴,槊锋 晓幸福 北极熊  王霖 亮仔13611567***等等,你们都很nice,感谢社区的管理员 Vcher,我是第一次使用瑞萨的芯片,遇到很多问题,正是因为有大家的帮助,都一以顺利解决,希望面包板社区可以多多组织这样的活动,社区越做越大~~~~~~~~