DA14531(Cortex-M0+)之Wake-up Interrupt Controller (WIC)

发布时间:2026/9/3 10:52:28
DA14531(Cortex-M0+)之Wake-up Interrupt Controller (WIC) Wake-up Interrupt Controller (WIC) to allow the processor to be powered down during sleep, while interrupt sources are still allowed to wake up the system.唤醒中断中断器允许处理器休眠时关闭电源和时钟但中断源可以唤醒系统。具备独立的唤醒中断向量。使用 Cortex-M 处理器的微控制器设计人员可以选择在其设计中包含 WIC。WIC 是一个小型中断检测逻辑它反映了 NVIC 中的中断掩码功能。WIC 允许通过停止处理器的所有时钟信号甚至将处理器置于状态保留状态进一步降低处理器的功耗。当检测到中断时WIC 向微控制器内部的电源管理单元 PMU 发送请求以恢复处理器的电源和时钟信号然后处理器可以唤醒、恢复作并处理中断请求。WIC 功能的一个重要优点是它对软件是透明的。WIC 本身不包含任何可编程寄存器它有一个耦合到 Cortex-M0/M0þ 处理器的 NVIC 的接口中断掩码信息在睡眠期间自动从处理器传输到 WIC。在某些情况下 取决于微控制器设备的设计 WIC 仅在深度睡眠模式 设置了 SLEEPDEEP 位 下激活您可能还需要在微控制器中特定于设备的 PMU 中对其他控制寄存器进行编程以启用 WIC 模式深度睡眠。WIC 使 Cortex-M 处理器能够使用称为状态保持功率门控 SRPG 的技术来降低待机功耗。使用 SRPG可以通过关闭逻辑的大部分部分来最大限度地减少顺序数字系统在睡眠期间的泄漏功率在每个触发器中留下一个小的存储元件以保持当前状态。并非所有基于 Cortex-M 处理器的微控制器都支持 WIC 功能。使用 WIC 降低功耗取决于所使用的应用和半导体工艺。请注意在 Cortex-M0 和 Cortex-M0处理器中WIC 可以在睡眠和深度睡眠模式下使用。在 Cortex-M3 和 Cortex-M4 处理器中WIC 功能仅在深度睡眠中可用。在DA14531应用中中断仅在active mode可用。而且如果需要在sleep中唤醒那么必须使用WIC。这里的设计跟其他MCU有些许区别。更多MCU是run/active、sleep允许中断唤醒共用中断函数而standby使用专用的唤醒引脚。中断相关函数GPIO_EnableIRQ、GPIO_RegisterCallback。休眠唤醒相关函数wkupct_enable_irq、wkupct_register_callback。DA14531在BLE模式下是会进入sleep的所以如果要实现中断的应用实际上必须同时使用以上两种配置即中断、休眠唤醒否则可能出现唤醒延时、无法唤醒的问题。WIC主要是支持低功耗的唤醒、硬件级别的唤醒仅支持高低电平不支持边沿触发可以关闭NVIC电源。普通中断唤醒是否支持取决于芯片设计则可以支持边沿触发NVIC电源域电源需要保持。reference1. Sleep Modes and Wake-up | renesas/ble-sdk6-examples | DeepWiki2. DA14580睡眠配置_da14580睡眠模式-CSDN博客3. Dual use pin (wkupct_enable_irq GPIO_EnableIRQ) - Bluetooth Low Energy - Renesas Wireless Connectivity - Renesas Engineering Community4. how does app_easy_wakeup and app_easy_wakeup_set works? - Bluetooth Low Energy - Renesas Wireless Connectivity - Renesas Engineering Community5. 1. Example description — DA14585/DA14586 and DA14531 Multiple button press wake up callback6. ble-sdk6-examples/interfaces/wakeup-button/src/user_wakeup.c at main · renesas/ble-sdk6-examples · GitHub7. 2. 睡眠模式概述 — DA1453x 和 DA1458x 教程睡眠模式8. 11. Sleep Mode — DA145XX Tutorial SDK Getting startedDisclaimer / 免责声明:本文仅代表作者在撰写和修改时的个人观点不代表当前或未来立场。文中观点和内容未经学术机构或标准组织验证作者不对其准确性、完整性或可靠性作任何保证。请读者仅供参考并自行核实相关信息。本文旨在探索与经验分享因篇幅及作者水平所限难免存在疏漏欢迎批评指正。如有问题或交流建议请联系flourishinggardenoutlook.com。copyright / 版权声明:本文为作者原创。引用或转载需注明“转自或引用自 flourishinggardenoutlook.com”。 未经注明来源的擅自使用、抄袭或传播行为均被禁止。