【瑞萨 FPB-RA4E2 开发板测评】简介、环境搭建、程序测试
RA4E2 MCU 群组快速原型板(fast prototyping board, FPB)。
简介
开发板
RA4E2 快速原型板配备了 R7FA4E2B93CFM 微控制器,是一块专门用于各种应用原型开发的评估板。
板载 SEGGER J-Link™ 仿真器电路,无需额外工具即可以烧写/调试程序。
此外,标配 Arduino Uno 和 Pmod™ 接口,并可通过通孔连接微控制器的所有引脚,具有很高的可扩展性。
样例代码可用于演示 RA4E2 MCU 的功能以及连接 RA4E2 快速原型板和各种无线模块或传感器模块。
MCU-R7FA4E2B93CFM
Renesas RA4E2 组是 RA4 系列中最新的入门级微控制器,基于带有 TrustZone 的 100MHz Arm® Cortex®-M33 内核。
RA4E2 MCU提供了高性能和优化的外设功能以及最小的封装选项,包括节省空间的36引脚BGA和32引脚QFN封装。这些都满足了对成本敏感和空间受限的应用的需要。
由于RA4E2具有均衡的性能、先进的外设功能和可扩展性,它可作为应用更广泛的 RA 系列的切入点。
凭借增强型入门级产品,客户即使在严格的尺寸和成本限制下也能实现高性能应用。
此外,Renesas FSP 还为客户提供易于使用的开发环境。客户可以通过使用 FSP 的小内存占用 HAL 驱动程序和具有与 RA 系列其他产品的软件可扩展性的外围驱动程序来减少开发资源和时间。
特性
- 100 MHz ARM Cortex-M33
- 128 kB 闪存和 40 kB SRAM
- 4 kB 数据闪存,类似 EEPROM 数据存储功能
- 1 KB 待机 SRAM
- 可从 32 引脚到 64 引脚封装
- USB 2.0 全速
- 通用 PWM 定时器
- 12 位 A/D 转换器
- 12 位 D/A 转换器
- SCI(UART、简单 SPI、简单 I²C)、SPI 和 I³C
- USB FS 设备
- CAN FD 和 SSI
- HDMI CEC
应用
- 通用、一般用途
- 智能家居:风扇控制和饮水机
- 消费娱乐:游戏、耳机控制
- 个人电脑;指纹读取器和耳机
- 楼宇自动化:语音控制
- 传感器应用,如医疗、工业、可穿戴设备
- 计量:通信模块
原理图
SCH_Page1: Peripheral circuit
SCH_Page2: Arduino Uno
SCH_Page3: PMOD
SCH_Page4: MCU
SCH_Page5: Pin headers
SCH_Page6: J-Link
环境搭建
这里使用 Renesas 公司的e2 studio
开发工具,下载 并安装该 IDE 软件,或直接下载 FSP 软件包。
下载FSP (flexible software package) 软件包 并安装。
注意:不需要单独安装 e² studio,FSP 平台安装程序会安装 e² studio 和使用 FSP 所需的所有其他工具。
FSP 安装程序内包含e² studio 集成开发环境、工具链和 FSP 软件包。
新建工程
打开 e2 studio 软件,
依次点击文件
- 新建
- 瑞萨 C/C++ 项目
- Renesas RA
依次进行工程命名,路径设置,目标开发板选择,Board 选择FPB-RA4E2
,工具链选择 GNU ARM Embedded
若未检测到工具链,则需要下载、安装和添加本地工具链路径,
点击Manage Toolchains
,勾选目标工具链,点击 下载
,添加
工具链安装目录文件夹,应用并关闭。
根据原理图可知,2 个板载 LED 控制引脚为 P206 和 P207,
进入FSP 配置
界面,依次选择 Pins
标签 - Pin Selection
- Ports
- P2 - P206
- Pin Configuration
- 更改 Mode
为 Output mode (initial Low)
即初始熄灭,点击 Generate Project Content
生成工程,主函数 hal_entry.c
位于 src
文件夹。
代码
双击 Project - src 路径下的hal_entry.c
文件,编辑主函数。
代码框架
1.定义延时函数、
2.定义闪烁频率、
3.判断板载或定义的LED数量:
- 若LED数为零,则终止;
- 若LED数量大于零,则对所有LED执行电平反转操作,间隔时间为频率的倒数。
#include "hal_data.h"
void R_BSP_WarmStart(bsp_warm_start_event_t event);
extern bsp_leds_t g_bsp_leds;
void hal_entry (void)
{
#if BSP_TZ_SECURE_BUILD
R_BSP_NonSecureEnter();
#endif
const bsp_delay_units_t bsp_delay_units = BSP_DELAY_UNITS_MILLISECONDS;
const uint32_t freq_in_hz = 5;
const uint32_t delay = bsp_delay_units / freq_in_hz;
bsp_leds_t leds = g_bsp_leds;
if (0 == leds.led_count)
{
while (1)
{
;
}
}
bsp_io_level_t pin_level = BSP_IO_LEVEL_LOW;
while (1)
{
R_BSP_PinAccessEnable();
for (uint32_t i = 0; i < leds.led_count; i++)
{
uint32_t pin = leds.p_leds[i];
R_BSP_PinWrite((bsp_io_port_pin_t) pin, pin_level);
}
R_BSP_PinAccessDisable();
if (BSP_IO_LEVEL_LOW == pin_level)
{
pin_level = BSP_IO_LEVEL_HIGH;
}
else
{
pin_level = BSP_IO_LEVEL_LOW;
}
R_BSP_SoftwareDelay(delay, bsp_delay_units);
}
}
void R_BSP_WarmStart (bsp_warm_start_event_t event)
{
if (BSP_WARM_START_RESET == event)
{
#if BSP_FEATURE_FLASH_LP_VERSION != 0
R_FACI_LP->DFLCTL = 1U;
#endif
}
if (BSP_WARM_START_POST_C == event)
{
R_IOPORT_Open(&IOPORT_CFG_CTRL, &IOPORT_CFG_NAME);
}
}
**首先点击 **小锤子
按钮构建工程
之后点击小虫子按钮下拉菜单进行调试配置
**点击 **小虫子
按钮进入 Debug 模式
**点击 **启动
按钮运行程序
此时开发板上的 LED 按照程序中设定的频率闪烁。
可点击暂停
、终止
等按钮实现调试操作。
当点击终止调试按钮时,控制台终端输出Disconnected from the Target Debugger.
字样,此时 LED 闪烁终止,相应的引脚电平输出回到初始定义状态。
效果
调整频率值freq_in_hz
可以实现不同的闪烁效果