RA6快速设计指南 [16] 中断控制单元,低功耗

描述

 

 

12

中断控制单元

 

 

中断控制器单元 (ICU) 控制将哪些事件信号链接到NVIC、DTC和DMAC模块。此外,ICU还控制不可屏蔽中断。图28给出了ICU规范的示例,图29给出了从I/O引脚引发IRQi事件的功能示例。有关每个RA6 MCU系列的详细信息,请参见《硬件用户手册》

 

mcu

图28. RA6M3 ICU规范示例

 

mcu

图29. RA6M3 ICU I/O引脚示例

 

下图是使用Renesas FSP配置器使能和配置Renesas FSP中断的示例。通过FSP将ICU和中断配置为HAL驱动程序配置的一部分。

 

mcu

图30. 使能GTP0溢出中断并设置将由中断服务程序调用的用户回调函数

 

13

低功耗

 

 

RA6器件具有多种用于降低功耗的功能。这包括设置时钟分频器、EBCLK输出控制、停止模块、在正常模式下选择电源控制模式以及转换为低功耗模式。有关更多详细信息,请参见《硬件用户手册》中的“低功耗模式”一章。

 

RA6 MCU支持四种不同类型的LPM,具体取决于MCU系列。这些类型包括:

• 休眠模式

• 软件待机模式

• 贪睡模式

• 深度软件待机模式

 

下表概述了可用于降低功耗的功能。

 

表15. 低功耗模式功能规范

mcu

 

注:

1. 有关详细信息,请参见《硬件用户手册》中的“时钟生成电路”一章。

2. 适用于支持TrustZone安全功能的器件。

 

下表列出了转换到低功耗模式的条件、CPU和外设模块的状态,以及退出每种模式的方法。

 

表16. 低功耗模式

mcu

点击查看大图

 

注:

1. 有关更多详细信息,请参见《硬件用户手册》中的“每种低功耗模式的工作条件”表。

 

RA6器件包括一些寄存器设置,允许MCU在正常模式和休眠模式下以较低功耗工作。这些模式称为工作电源控制模式,由OPCCR寄存器控制。

 

下表总结了各种工作功耗控制模式,以及每种模式下允许使用的最大时钟和电压值。

 

表17. 每种工作功耗控制模式下可用的振荡器

mcu

 

注:

虽然可以将OPCCR寄存器中的值设置为任何低功耗工作模式,但也必须设置相应的时钟和电压值来满足所需模式的要求。否则,OPCCR寄存器中的设置不会对降低功耗产生任何影响。

 

为了获得最低的功耗值,应在时钟生成电路中使用可能的最大分频器。

 

可通过各种中断源退出低功耗模式,例如RES引脚复位、上电复位、电压监视器复位和外设中断。有关不同LPM的中断源列表,请参见《硬件用户手册》中的“低功耗模式”部分。

 

从软件待机模式进入贪睡模式的贪睡请求仅触发贪睡模式。通过在待机控制寄存器 (SBYCR) 中执行具有适当设置的WFI指令,可以完成向其他LPM的转换。

 

Renesas FSP提供了低功耗模式 (LPM) 驱动程序和驱动程序配置器,可用于设置低功耗模式、唤醒源/退出源等。

 

mcu

图31. 使用Renesas FSP配置器设置低功耗模式

 

在通过FSP配置器设置了特定的LPM模式后,可以使用LPM驱动程序的API初始化LPM驱动程序并使MCU进入已配置的LPM模式:

左右滑动查看更多

/* Open LPM driver and initialize LPM mode */
err = R_LPM_Open(&g_lpm_ctrl_instance_ctrls[g_lpm_transition_pos],
        &g_lpm_ctrl_instance_cfgs[g_lpm_transition_pos]);
/* Handle error */
if (FSP_SUCCESS != err)
    {
return (err);
    }
/* Transition to configured LPM mode */
err = lpm_mode_enter(g_lpm_transition_sequence[g_lpm_transition_pos]);
/* Handle error */
if (FSP_SUCCESS != err)
    {
return (err);
    }

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分