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/M0t 處理器的 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電源域電源需要保持。

reference:

1.?Sleep Modes and Wake-up | renesas/ble-sdk6-examples | DeepWiki

2.?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 started

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/94864.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/94864.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/94864.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

實戰演練(一):從零構建一個功能完備的Todo List應用

實戰演練(一):從零構建一個功能完備的Todo List應用 作者:碼力無邊各位React探險家,歡迎集結!我是你們的向導碼力無邊,這里是《React奇妙之旅》的第六站,也是我們基礎階段的“畢業大…

GitHub 宕機自救指南:確保開發工作不間斷

1.1 GitHub 宕機事件回顧 在 2025 年 8 月,GitHub 經歷了一次全球性的重大故障事件,此次宕機持續了數小時,對全球范圍內依賴 GitHub 進行代碼托管、協作開發的團隊和個人造成了嚴重影響。眾多開源項目的代碼提交陷入停滯,企業級開…

RK3588 android12 DDR開發指南相關記錄

一,DDR打印信息 DDR 打印信息包括 loader 中的打印和 kernel 中的打印,loader 中打印的解析如下:DDR Version 1.05 20170712// DDR 初始化代碼的版本信息,用于核對版本。從這行開始,已經進入DDR初始化代碼 In SRX // 有…

Docker 部署 GitLab 并開啟 SSH 使用詳解

在日常使用 GitLab 時,很多人習慣通過 SSH 協議 而不是 HTTPS 來拉取與推送代碼。但是在使用 Docker 部署 GitLab 的過程中,經常遇到 SSH 端口未開放、只能本地訪問、客戶端無法連接 等問題。本文將從零開始,詳細講解如何在 Docker 中正確開啟…

C/C++---前綴和(Prefix Sum)

在C算法與數據結構領域,前綴和是一種時間復雜度優化利器,尤其適用于頻繁查詢數組區間和的場景。它通過預先計算“前綴累積和”,將原本O(n)時間的區間和查詢壓縮至O(1),是面試、競賽及工程開發中高頻使用的基礎技巧。 一、前綴和的…

[n8n] 全文檢索(FTS)集成 | Mermaid圖表生成

第5章:全文檢索(FTS)集成 在前一章中,我們構建了REST API服務作為數據訪問入口。 本章將介紹全文檢索(FTS)集成,它如同智能搜索引擎,為工作流系統提供高效靈活的檢索能力。 核心架構 前文傳送: 技術選型 SQLite …

用戶模式與內核模式:操作系統的“權限雙軌制”

要理解用戶模式與內核模式,首先需要明確一個核心概念——進程(Process)。我們日常用C語言編譯生成的.exe文件,本質是“存儲在磁盤上的靜態程序”;當它被加載到內存并開始運行時,就轉化為“動態活動的進程”…

探索 Vertex AI 與 Elasticsearch

作者:來自 Elastic Jhon Guzmn 了解如何將 Vertex AI 與 Elasticsearch 集成來創建 RAG 應用。按照本教程配置一個 Gemini 模型并在 Kibana 的 Playground 中使用它。 更多閱讀: Elasticsearch:在 Elastic 中玩轉 DeepSeek R1 來實現 RAG …

[新啟航]白光干涉儀在微透鏡陣列微觀 3D 輪廓測量中的應用解析

引言微透鏡陣列作為由數百至數千個微米級透鏡單元組成的光學元件,在成像系統、光通信、傳感器等領域應用廣泛,其表面微觀 3D 輪廓參數(如曲率半徑、面型誤差、中心厚度等)直接影響光學性能。白光干涉儀憑借非接觸、高精度、三維成…

MTK Linux DRM分析(十四)- Mediatek KMS實現mtk_drm_drv.c(Part.2)

一、MTK KMS分析 mtk_drm_kms_init 函數分析 mtk_drm_kms_init 是 MediaTek DRM 驅動程序中的一個靜態函數(static int mtk_drm_kms_init(struct drm_device *drm)),位于 mtk_drm_drv.c 文件中。該函數的主要作用是初始化 DRM 設備的 Kernel Mode Setting (KMS) 子系統,包…

大模型RAG(Retrieval-Augmented Generation)

RAG檢索增強生成 一種結合了檢索與生成能力的人工智能技術,主要用于增強大型語言模型在特定任務中的表現。 含義 RAG 將檢索系統與生成模型相結合,當接收到一個查詢或問題時,模型首先通過檢索模塊從大規模知識庫中尋找與查詢相關的信息片段&a…

企業版Idea 無快捷鍵的啟動方式

在沒有快捷鍵的情況下啟動 IntelliJ IDEA 企業版,可以通過以下幾種方式進行操作: 1. 通過應用程序菜單啟動(適用于 macOS) 在 macOS 系統中,可以打開 Launchpad,在應用程序列表中找到 IntelliJ IDEA&#x…

智慧清潔革命:有鹿機器人如何重塑三大行業未來

作為有鹿智能巡掃機器人,每天清晨當城市還未蘇醒,我已悄然完成數萬平方米的清潔工作。搭載254TOPS算力的具身智能大腦,我正重新定義保潔、環衛和物業行業的清潔標準。技術賦能:智慧清潔的全面突破我搭載的Master2000通用具身大腦和…

安寶特方案丨AR異地專家遠程支持平臺,適合:機電運維、應急處置、監造驗收

隨著車間設備智能化程度的不斷提高,其復雜性越來越高,故障維修難度越來越大,嚴重依賴設備原廠的技術支持和上門服務。但設備廠家受制于地理遠近和專業人才數量的限制,服務的及時性和服務質量均很難保證。鑒于市場現有的通信聊天軟…

QT應用層項目20250822

01.服務器端代碼1.dbhelper.cpp#include "dbhelper.h" #include <iostream> #include <cstring>using std::string; using std::cerr; using std::cout; using std::endl;template <typename T> std::vector<T>& operator<<(std::…

【Linux】Linux基礎開發工具從入門到實踐

前言&#xff1a;學了Linux的指令&#xff0c;再就是Linux基礎開發工具&#xff0c;熟練掌握基礎開發工具是提升效率的關鍵。本文學習Linux的基礎開發工具&#xff0c;無論是軟件安裝、代碼編輯&#xff0c;還是編譯調試、版本控制&#xff0c;一套順手的工具鏈能讓你在開發路上…

黑馬點評|項目日記(day02)

目錄 一. 全局id生成器 1.為什么需要全局id生成器 2.傳統方式的缺陷: 3.典型全局 ID 生成方案的設計思路 二.優惠券秒殺-Redis實現全局唯一id 三.優惠券秒殺-添加優惠券 四.優惠券秒殺-實現秒殺下單 五. 一人一單問題 1.單體項目下 1,超賣問題思路分析 2.樂觀鎖解決問…

shell腳本編程規范與變量

文章目錄Shell編程文檔整理一、Shell介紹1.1 簡介1.2 Shell解釋器二、快速入門2.1 編寫Shell腳本2.1.1 創建腳本示例2.1.2 賦予執行權限2.2 執行Shell腳本三、Shell程序&#xff1a;變量3.1 語法格式3.2 變量使用3.3 變量類型四、字符串4.1 單引號4.2 雙引號4.3 獲取字符串長度…

【AGI使用教程】Coze 搭建智能體(1)

歡迎關注【AGI使用教程】 專欄 【AGI使用教程】GPT-OSS 本地部署&#xff08;1&#xff09; 【AGI使用教程】GPT-OSS 本地部署&#xff08;2&#xff09; 【AGI使用教程】Coze 搭建智能體&#xff08;1&#xff09; 【AGI使用教程】Coze 搭建智能體&#xff08;2&#xff09; 【…

(二分查找)Leetcode34. 在排序數組中查找元素的第一個和最后一個位置+74. 搜索二維矩陣

首先要明確二分查找算法如何實現&#xff0c;是采用左閉右閉還是左閉右開 左閉右閉 第?種寫法&#xff0c;我們定義 target 是在?個在左閉右閉的區間?&#xff0c;也就是[left, right] &#xff08;這個很重要?常重要&#xff09;。 區間的定義這就決定了?分法的代碼應…