这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 企业专区 » Renesas » 【瑞萨RA0E2开发板】02:学习一下瑞萨RA0系列的外部中断

共3条 1/1 1 跳转至

【瑞萨RA0E2开发板】02:学习一下瑞萨RA0系列的外部中断

高工
2025-09-14 16:32:59     打赏

一:GPIO介绍:

I/O 端口引脚的功能与通用 I/O 端口引脚、外设模块的 I/O 引脚、中断输入引脚、模拟 I/O、ELC 的端口组功能相同。

所有引脚在复位后立即作为输入引脚工作,其引脚功能通过寄存器设置进行切换。每个引脚的 I/O 端口和外设模块在相关寄存器中均有指定。图 16.1 展示了 I/O 端口寄存器的连接图。I/O 端口的配置会因封装而有所不同。表 16.1 列出了不同封装下的 I/O 端口规格,表 16.2 列出了端口功能。

02-1.png

二:板载的按键控制按键:

02-2.png

这里我们可以看到板载的两个按键, 分别为RST和S1(P200)按键操作,这里我是用板载的按键调试外部输入端,并且使用项目1中的LED作为指示;可以直观的看到按键按下的状态;

三:FSP库的配置如下所示:

 Name:g_external_irq0,这是该外部中断的名称。

Channel:选择了0通道。

Trigger:触发方式设置为Rising(上升沿触发),即信号上升时触发中断。

Digital Filtering:未启用数字滤波(Not Supported)。

Digital Filtering Sample Clock:由于数字滤波未启用,因此该项也未支持。

Callback:指定了回调函数exit0_callback。当中断触发时,将调用此函数处理具体逻辑。

Pin Interrupt Priority:设置为Priority 2,表示该中断的优先级为2。

IRQ0:映射到引脚P200,即该中断信号通过引脚P200触发

中断回调函数:

exit0_callback函数是外部中断的回调函数,当中断触发时,icu_irq_isr中断服务程序会调用此函数。

g_external_irq_complete变量在每次中断时切换状态(如果是0则变1,如果是1则变0)

三:程序编写:

3.1 中断初始化:

void exit0_Init(void)
{
fsp_err_t err = R_ICU_ExternalIrqOpen(&g_external_irq0_ctrl, &g_external_irq0_cfg);
assert(FSP_SUCCESS == err);
err = R_ICU_ExternalIrqEnable(&g_external_irq0_ctrl);
assert(FSP_SUCCESS == err);
}

3.2 在中断回调函数中,添加对LED的电平翻转功能:

bool g_external_irq_complete =0;
/* Called from icu_irq_isr */
void exit0_callback (external_irq_callback_args_t * p_args)
{
(void) p_args;
g_external_irq_complete = !g_external_irq_complete;

if(g_external_irq_complete )
{
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_03, BSP_IO_LEVEL_LOW);
}
else
{
R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_01_PIN_03, BSP_IO_LEVEL_HIGH);
}
}

四:实物验证如下所示:

02 00_00_00-00_00_30.gif

外部中断的场景运用如下:

按键检测

场景描述:这是最经典的应用。比如设备的开关机键、功能设置键、紧急停止按钮等。

为何用中断:如果使用循环扫描(whi1e 循环)的方式去检测按键,程序效率低下,且容易漏掉短时间的按键。使用外部中断,只要按键被按下(下降沿或低电平触发),CPU会立即响应,确保每一次按键动作都被准确捕获。对于紧急停止按钮,必须使用中断,以确保无论CPU在执行什么任务都能被立即打断。

2.触摸传感器/电容触摸

场景描述:现代智能设备(如手机、触摸开关)的触摸感应。

为何用中断:原理类似按键,但通常由专用触摸芯片产生中断信号。主CPU无需持续检测触摸状态仅在触摸事件发生时(中断触发)才去读取触摸芯片的数据,大大降低了功耗和CPU占用。




关键词: 瑞萨     RA0E2     外部中断    

院士
2025-09-15 23:39:49     打赏
2楼

真棒!一步一步的往前走!

反正我是不太喜欢回调函数这个东西的。


院士
2025-09-16 15:45:17     打赏
3楼

是的。也没有啥办法呀~~



共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]