【瑞萨RA-Eco-RA6M4评测】介绍、环境搭建、工程测试
本帖最后由 eefocus_4062187 于 2026-7-19 09:01 编辑# 【瑞萨RA-Eco-RA6M4评测】介绍、环境搭建、工程测试
本文介绍了 RA-Eco-RA6M4-100PIN-V2.0 开发板的基本信息,包括产品特点、参数资源、原理图、环境搭建以及工程测试等。
## 介绍
RA-Eco-RA6M4-100PIN-V2.0 开发板,主控点点taptap安卓为 R7FA6M4AF3CFP。
- 瑞萨电子 RA6M4 微控制器 (MCU) 产品群使用了支持 TrustZone® 的高性能 Arm® Cortex®-M33 内核。与片内的 Secure Crypto Engine(SCE) 配合使用,可提供安全点点taptap安卓的功能。
- 集成带有专用 DMA 的以太网 MAC,可确保高数据吞吐率。RA6M4 采用高效的 40nm 工艺,由基于 FreeRTOS 的灵活配置软件包 (FSP) 这一开放且灵活的生态系统概念提供支持,并能够扩展以使用其他实时操作系统(RTOS)和中间件。
- RA6M4 适用于物联网应用的需求,如以太网、面向未来应用的安全功能、大容量嵌入式 RAM 和较低功耗(从闪存运行 CoreMark® 算法,低至 99µA/MHz)。
### 开发板
Top view
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220227dv1gh6qzbdbhtg7i.jpg)
Bottom view
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220239v5cix4ssziqq9ixf.jpg)
### 参数特点
- 1个复位按键
- 2个用户按键
- 2个触摸按键
- 3个LED
- 2个PMOD接口
- 板载USB转TTL模块,可用于串口通信和烧录
- 板载SWD接口,方便用户调试与下载
- 支持 TrustZone 的 200MHz Arm Cortex-M33
- 安全点点taptap安卓的功能
- 1MB 闪存、192kB支持奇偶校验 SRAM 以及64kb ECC SRAM
- 具有后台运行能力的双区闪存
- 8KB 数据闪存,提供与 EEPROM 类似的数据存储功能
- 100 引脚封装
- 带有专用 DMA 的以太网控制器
- 电容触摸按键感应单元
- 全速 USB 2.0,支持主机模式和设备模式
- CAN 2.0B
- QuadSPI 和 OctaSPI
- SCI(UART、简单 SPI、简单 I2C)
- SPI/ I2C 多主接口
- SDHI 和 MMC
### 主控
主控点点taptap安卓为 R7FA6M4AF3CFP
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220253axkwrirx7lb575wk.jpg)
### 系统框图
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220305ng699d189tdatg26.jpg)
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220316dnpj51rj9erwenpz.jpg)
详见:(https://www.renesas.cn/zh/products/ra6m4) .
### 原理图
#### 主控
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220329kgccf3g7gd0wngw7.jpg)
#### 排针
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220341x29b797vhbve9frw.jpg)
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220353l365i3ca34e4862e.jpg)
#### 供电
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220404iv78xvdw52fvhdzw.jpg)
#### 外设
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220417t52xc2rsq1gix512.jpg)
详见:(https://gitee.com/ramcu/ra-eco-ra6-m4-100-pin-v2.0) .
## 环境搭建
搭建和使用 e² studio IDE 开发环境。
- 下载并安装 [瑞萨FSP (flexible software package) 灵活配置软件包](https://www.renesas.cn/zh/software-tool/flexible-software-package-fsp) ;
- 安装时注意选择 GNU ARM 工具链;
## 工程创建
- 文件 - 新建 - 瑞萨 C/C++ 项目 - `Renesas RA ` ;
- 自定义设备选择 `R7FA6M4AF3CFP` ,调试器选择 J-Link ;
- 项目创建完成后,选择进入透视图模式;
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220431ydjw75fw9jjlwjkl.jpg)
- 进入 FSP 配置界面,打开 Pins 标签页,由原理图可知,板载三个用户 LED 对应引脚分别为 P002、P404、P405,且为高电平点亮;
- 将三个 LED 引脚均配置为输出模式,初始为低电平;
## 时钟配置
根据原理图可知,板载 XTAL 晶振频率为 12MHz,需要重新配置 IDE 时钟树。
!(//m.qjumbo.com/forum/data/attachment/forum/202607/19/085219nnwj6o69kbwnssrh.jpg)
## 串口配置
- 进入 FSP 配置界面,打开 Pins 标签页,根据原理图或开发板丝印,将 P109 和 P110 引脚分别配置为 TXD9 和 RXD9 异步串口模式;
- 新建串口通信堆栈 `New Stack` - `Connectivity` - `UART (r_sci_uart)` ;
- 串口属性配置,General 标签下的 Channel 改为 9,名称改为 `g_uart9`,中断回调函数命名为 `user_uart9_callback`;
!(//m.qjumbo.com/forum/data/attachment/forum/202607/19/090125zkjwvszd64z88656.jpg)
- 进入 BSP 标签页,配置 RA Common 属性,RA Common 标签下的 Heap size 改为 `0x2000`;
- 点击 `Generate Project Content` ;
- 右键项目文件夹,构建工程,确认无报错;
## 工程代码
打开 `./src/hal_entry.c` 文件,添加如下代码
```c++
#include "hal_data.h"
#include <stdio.h>
fsp_err_t err = FSP_SUCCESS;
volatile bool uart_send_complete_flag = false;
void user_uart9_callback (uart_callback_args_t * p_args)
{
if(p_args->event == UART_EVENT_TX_COMPLETE)
{
uart_send_complete_flag = true;
}
}
#ifdef __GNUC__
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
#endif
PUTCHAR_PROTOTYPE
{
err = R_SCI_UART_Write(&g_uart9_ctrl, (uint8_t *)&ch, 1);
if(FSP_SUCCESS != err) __BKPT();
while(uart_send_complete_flag == false){}
uart_send_complete_flag = false;
return ch;
}
int _write(int fd,char *pBuffer,int size)
{
for(int i=0;i<size;i++)
{
__io_putchar(*pBuffer++);
}
return size;
}
void hal_entry(void)
{
err = R_SCI_UART_Open(&g_uart9_ctrl, &g_uart9_cfg);
assert(FSP_SUCCESS == err);
while(1)
{
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_02, BSP_IO_LEVEL_LOW);
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_04, BSP_IO_LEVEL_LOW);
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_05, BSP_IO_LEVEL_LOW);
R_BSP_SoftwareDelay(100, BSP_DELAY_UNITS_MILLISECONDS);
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_00_PIN_02, BSP_IO_LEVEL_HIGH);
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_04, BSP_IO_LEVEL_HIGH);
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_05, BSP_IO_LEVEL_HIGH);
R_BSP_SoftwareDelay(100, BSP_DELAY_UNITS_MILLISECONDS);
printf("hello world!\n");
}
}
```
保存文件。
## 工程编译
- 右键项目文件夹,选择 `属性` ,进入 `C/C++ 构建` - `设置` 选项;
- 进入 `GNU Arm Cross Create Flash Image - General` 选项;
- 在输出格式中选择 `Intel HEX` ,应用并关闭;
- 右键项目文件夹,构建工程,确认无报错;
- 查看工程目录下的 `Debug` 文件夹,生成相应的 HEX 格式的固件;
## 硬件连接
使用 JLINK-OB 接线方式如下
| Jlink-OB | RA6M4 | Note |
| :------- | :--------- | :-------- |
| DIO | SWDIO | Data I/O|
| CLK | SWCLK | Clock |
| RXD | TXD (P109) | Transmite |
| TXD | RXD (P110) | Receive |
| GND | GND | Ground |
| 3V3 | VCC | Power |
实物图
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220449mkb9l4vva1lga6g4.jpg)
## 固件上传
开发板支持串口烧录、J-Link、EZ-Cube 调试器烧录等,这里使用 USB 烧录固件的方案。
- 使用 Type-C 数据线连接开发板 USB 接口,电脑打开设备管理器 - 端口;
- 使用跳帽将 Mode 切换至 Boot 模式;
- 短按 Reset 键,开发板进入 USB BOOT 模式;
- File - New Project,配置参数,包括控制器 RA、项目名称、项目路径、接口为 COM;
- 点击 Connect 连接开发板 USB;
- 输出设备信息,显示操作完成,表明连接成功;
- 短按 Reset 键,点击菜单栏 `目标设备` - `初始化设备` 选项,清空原有固件;
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220504kqjj25j0jzupuj8t.jpg)
- 短按 Reset 键,添加生成的 hex 固件文件,点击 Start 按钮,执行烧录动作;
- 待提示操作完成,表明固件上传完成;
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220518abtgse1pbct6bbpc.jpg)
## 效果演示
- 将跳帽恢复为 Flash 模式,程序自动运行,板载 LED 闪烁;
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220530rcl5p4g4b4nfcn2f.gif)
- 运行串口调试助手软件,连接 Jlink CDC 虚拟串口,配置波特率等参数;
- 打开串口,接收字符串;
!(//m.qjumbo.com/forum/data/attachment/forum/202607/18/220544bqq71769u6tc2m7u.gif)
## 总结
本文介绍了 RA-Eco-RA6M4-100PIN-V2.0 开发板的基本信息,包括产品特点、参数资源、原理图、环境搭建以及工程测试等,为相关产品的开发设计提供了参考。
页:
[1]