精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【GD32 MCU 入門教程】GD32 MCU 常見外設介紹(11)PMU 模塊介紹

聚沃科技 ? 2024-08-20 09:42 ? 次閱讀

11.1.PMU 簡介

PMU即電源管理單元,它有三個電源域,包括VDD/VDDA域、1.1V/1.2V域和備份域。電源管理單元在常規芯片提供了三種省電模式,包括睡眠模式、深度睡眠模式和待機模式;在低功耗芯片中,電源管理單元提供了十種省電模式,包括運行模式,運行模式 1,運行模式 2,睡眠模式,睡眠模式 1,睡眠模式 2,深度睡眠模式,深度睡眠模式 1,深度睡眠模式 2 和待機模式。這些模式能減少電源能耗,且使得應用程序可以在CPU運行時間要求、速度和功耗的相互沖突中獲得最佳折衷。

11.2.PMU 功能

三個電源域:備份域、 VDD/VDDA域和1.1V/1.2V電源域;

三種省電模式(常規芯片):睡眠模式、深度睡眠模式和待機模式;

十種省電模式(低功耗芯片):運行模式、運行模式1、運行模式2、睡眠模式、睡眠模式1、睡眠模式2、深度睡眠模式、深度睡眠模式1、深度睡眠模式2和待機模式。

內部電壓調節器( LDO)提供1.1V/1.2V電源;

提供低電壓檢測器,當電壓低于所設定的閾值時能發出中斷或事件;

當VDD供電關閉時,由VBAT(電池)為備份域供電;

LDO輸出電壓用于節約能耗;

低驅動模式用于在深入睡眠模式下超低功耗。高驅動模式用在高頻模式中。

如下圖PMU及相關電源域內部結構框圖所示。

輸入圖片說明

電池備份域

電池備份域由內部電源切換器來選擇VDD供電或VBAT(電池)供電,然后由VBAK為備份域供電,該備份域包含RTC(實時時鐘)、 LXTAL(低速外部晶體振蕩器)、 BPOR(備份域上電復位)、 BREG(備份寄存器),以及PC13至PC15共3個PAD。為了確保備份域中寄存器的內容及RTC正常工作,當VDD關閉時, VBAT引腳可以連接至電池或其他電源等備份源供電。

VDD/VDDA 電源域

VDD/VDDA 域包括 VDD 域和 VDDA 域兩部分。VDD 域包括 HXTAL(高速外部晶體振蕩器)、LDO(電壓調節器)、 POR/PDR(上電/掉電復位)、 FWDGT(獨立看門狗定時器)和除 PC13、PC14和 PC15 之外的所有 PAD 等等。 VDDA 域包括 ADC/DAC( AD/DA 轉換器)、 IRC8M( 內部 8MRC 振蕩器)、 IRC48M( 內部 48M RC 振蕩器)、 IRC40K(內部 40KHz RC 振蕩器) PLLs(鎖相環)和 LVD(低電壓檢測器)等等。

VDD 域 POR/ PDR(上電/掉電復位) 電路檢測VDD/VDDA并在電壓低于特定閾值時產生電源復位信號復位除備份域之外的整個芯片。 如下圖上電/掉電復位波形圖顯示了供電電壓和電源復位信號之間的關系。 VPOR表示上電復位的閾值電壓, VPDR表示掉電復位的閾值電壓,以GD32F303為例 ,典型值約為2.40V,典型值約為1.8V。遲滯電壓Vhyst值約為600mV。

輸入圖片說明

VDDA 域

LVD 的功能是檢測 VDD/VDDA 供電電壓是否低于低電壓檢測閾值,該閾值由電源控制寄存器(PMU_CTL)中的 LVDT[2:0]位進行配置。 LVD 通過 LVDEN 置位使能,位于電源狀態寄存器(PMU _CS)中的 LVDF 位表示低電壓事件是否出現,該事件連接至 EXTI 的第 16 線,用戶可以通過配置 EXTI 的第 16 線產生相應的中斷。下圖LVD閾值波形圖顯示了 VDD/VDDA 供電電壓和 LVD 輸出信號的關系。( LVD 中斷信號依賴于 EXTI 第 16 線的上升或下降沿配置)。

遲滯電壓 Vhyst 值為 100mV。

輸入圖片說明

省電模式

三種低功耗功耗模式對比表

輸入圖片說明

不同系列 standby 喚醒源

輸入圖片說明

11.3.硬件注意事項

1)對于沒有外部電池的應用,建議將 VBAT 引腳通過 100nF 的外部陶瓷去耦電容連接到 VDD 引 腳上;

2)由于 PC13 至 PC15 引腳是通過電源切換器供電的,電源切換器僅可通過小電流,因此當 PC13 至 PC15 的 GPIO 口在輸出模式時, 其工作的速度不能超過 2MHz(最大負載為 30pF)。

3)如果 VDDA 和 VDD 不同時,VDDA 須高于 VDD,但壓差不超過 0.2V。

VBAT 參考電路

輸入圖片說明

11.4.軟件配置說明

PMU 以低功耗模板配置為例來說明

Demo 一 ( Deepsleep 模式)

demo 功能說明:

MCU 上電啟動后,LED 燈閃爍 5 次,進入深度睡眠模式,通過按鍵來喚醒,LED 燈繼續閃爍 5次又進入深度睡眠。

軟件配置步驟如下:

1)開啟 PMU 時鐘

rcu_periph_clock_enable(RCU_PMU);

2)配置 LED 燈

void led_config(void) { gd_eval_led_init(LED1); gd_eval_led_init(LED2); gd_eval_led_init(LED3); gd_eval_led_init(LED4); }

3)配置喚醒按鍵 PC13

void gd_eval_key_init(void) //配置喚醒按鍵 { rcu_periph_clock_enable(RCU_GPIOC); //配置 GPIOC 的時鐘 rcu_periph_clock_enable(RCU_AF); //開啟復用時鐘 gpio_init(GPIOC, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, GPIO_PIN_13);//配置 GPIO PC13 為浮空輸入模式 nvic_irq_enable(EXTI10_15_IRQn, 2U, 0U); //配置中斷向量、搶占優先級、主優先 級 gpio_exti_source_select(GPIO_EVENT_PORT_GPIOC, GPIO_EVENT_PIN_13); //配置外部中斷源 PC13 exti_init(EXTI_13, EXTI_INTERRUPT, EXTI_TRIG_FALLING); //配置外部中斷 13 線 、下降沿觸發 exti_interrupt_flag_clear(EXTI_13); //清空外部中斷 13 線的中斷標志 }

4)進入低功耗模式函數

pmu_to_deepsleepmode(PMU_LDO_NORMAL,WFI_CMD);

  1. 按鍵外部觸發中斷服務函數

void EXTI10_15_IRQHandler(void) { if (RESET != exti_interrupt_flag_get(EXTI_13)) //判斷是否為 13 號中斷線 { exti_interrupt_flag_clear(EXTI_13); //清空標志 } }

  1. 喚醒后重新配置 PLL 系統時鐘

void systemclk_from_deepsleep(void) // deepsleep 喚醒后系統時鐘從內部時鐘切換到 PLL 時鐘 { RCU_CTL |= RCU_CTL_PLLEN; //使能 PLL while(0U == (uint32_t)(RCU_CTL & RCU_CTL_PLLSTB)) //等待 PLL 穩定 { } RCU_CFG0 &= ~RCU_CFG0_SCS; RCU_CFG0 |= RCU_CKSYSSRC_PLL; while(0U == (RCU_CFG0 & RCU_SCSS_PLL)){ //選擇 PLL 為系統時鐘 } }

11.5.PMU 使用注意事項

(1)深度睡眠模式 只要是外部中斷就能喚醒;

(2)從深度睡眠模式喚醒后,PLL 是沒有被使能,喚醒后需要配置 PLL,不然 MCU 系統時鐘就是內部時鐘;

(3)進入 deepsleep 低功耗模式后,將未使用到的 IO 配置成模擬輸入模式,以降低芯片整體功耗。

教程GD32 MCU方案商聚沃科技原創發布,了解更多GD32 MCU教程,關注聚沃科技官網

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6032

    文章

    44514

    瀏覽量

    632946
  • mcu
    mcu
    +關注

    關注

    146

    文章

    16984

    瀏覽量

    350293
  • 嵌入式
    +關注

    關注

    5068

    文章

    19014

    瀏覽量

    303229
  • PMU
    PMU
    +關注

    關注

    1

    文章

    108

    瀏覽量

    21567
  • GD32
    +關注

    關注

    7

    文章

    403

    瀏覽量

    24218
收藏 人收藏

    評論

    相關推薦

    GD32 MCU 入門教程GD32 MCU 常見外設介紹(12)FMC 模塊介紹

    閃存控制器(FMC),提供了片上閃存需要的所有功能。FMC 也提供了頁擦除,整片擦除,以及32 位整字或 16 位半字編程閃存等操作。 GD32 MCU 支持不同類型編程的具體說明如下表 GD32
    的頭像 發表于 08-21 09:56 ?978次閱讀
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>常見外設</b><b class='flag-5'>介紹</b>(12)FMC <b class='flag-5'>模塊</b><b class='flag-5'>介紹</b>

    GD32 MCU移植

    gd32是一款國產單片機。該芯片在很多方面和STM32有異曲同工之處。資料不是很多! GD32外設方面、和STM32沒有多大區別。 只是需要注意資源的引腳分配。雖然和STM32使用方式一樣、但是也存在
    發表于 03-23 13:40

    GD32MCU介紹

    其實兆芯的MCU為了兼容ST,外設的寄存器設計與ST保持一致了。比如GD32VF103或者GD32E103系列的USBFS這個外設,基本等同
    發表于 11-01 06:03

    GD32 MCU原理及固件庫開發指南》+讀后感

    、調試工具,再到庫函數的使用、各個外設的程序實現,不僅有原理的介紹,還有實踐的歷程。這本書聚焦在GD32 MCU基本原理和固件庫上,重點在于對固件庫API的
    發表于 06-06 21:52

    兆易創新GD32 MCU選型手冊,適用于GD32全系列MCU

    兆易創新GD32MCU選型手冊,適用于GD32全系列MCUGD32MCU選型手冊,適用于GD32全系列MCU
    發表于 10-19 17:26 ?49次下載

    你了解GD32 MCU的命名規則嗎

    下面為大家介紹GD32 MCU的通用命名規則,以GD32F303ZGT6為例,其中,GD32代表GD32
    的頭像 發表于 01-13 09:38 ?3445次閱讀
    你了解<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>的命名規則嗎

    GD32 MCU的選項字節是什么?

    GD32 MCU的選項字節是什么,有什么功能呢?選項字節被誤篡改如何回復?
    的頭像 發表于 01-17 09:42 ?1259次閱讀
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>的選項字節是什么?

    不同型號的GD32 MCU如何區分?

    大家是否碰到過以下應用場景:同一套軟件代碼希望跑在不同型號的GD32 MCU中,但有些地方需要根據MCU型號進行調整?或者上位機或其他MCUGD3
    的頭像 發表于 01-27 09:32 ?950次閱讀
    不同型號的<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>如何區分?

    GD32 MCU 入門教程】一、GD32 MCU 開發環境搭建(1)使用Keil開發GD32

    GD32系列為通用型MCU,所以開發環境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據個人喜好來選擇相應的開發環境。
    的頭像 發表于 08-08 15:01 ?1009次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發環境搭建(1)使用Keil開發<b class='flag-5'>GD32</b>

    GD32 MCU 入門教程】一、GD32 MCU 開發環境搭建(2)使用 IAR 開發 GD32

    GD32系列為通用型MCU,所以開發環境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據個人喜好來選擇相應的開發環境。
    的頭像 發表于 08-08 15:40 ?588次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發環境搭建(2)使用 IAR 開發 <b class='flag-5'>GD32</b>

    GD32 MCU 入門教程】一、GD32 MCU 開發環境搭建(3)使用 Embedded Builder 開發 GD32

    GD32系列為通用型MCU,所以開發環境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據個人喜好來選擇相應的開發環境。
    的頭像 發表于 08-08 16:03 ?827次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發環境搭建(3)使用 Embedded Builder 開發 <b class='flag-5'>GD32</b>

    GD32 MCU 入門教程】二、GD32 MCU 燒錄說明(1)ISP 燒錄

    ISP:In System Programing,在系統編程,通過MCU片內的引導程序進行Flash編程。 GD32片內有一個只讀信息塊,用于存放引導裝載程序,引導程序在MCU出廠前就會提前燒錄好
    的頭像 發表于 08-08 16:20 ?751次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 燒錄說明(1)ISP 燒錄

    GD32 MCU 入門教程GD32 MCU 常見外設介紹(14)RTC 模塊介紹

    GD32 MCU內部提供了一個RTC(實時時鐘)模塊,通過RTC可以實現日歷時鐘、鬧鐘等功能。RTC也可以用于深度睡眠或待機模式的低功耗喚醒。不同系列的GD32
    的頭像 發表于 08-23 09:18 ?373次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>常見外設</b><b class='flag-5'>介紹</b>(14)RTC <b class='flag-5'>模塊</b><b class='flag-5'>介紹</b>

    GD32 MCU 入門教程GD32 MCU FPU 使用方法

    GD32 MCU FPU 使用方法
    的頭像 發表于 08-25 09:24 ?466次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入門教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> FPU 使用方法

    GD32 MCU入門教程GD32 MCU GPIO 結構與使用注意事項

    本文是專門為基于GD32 MCU開發的工程設計人員提供,主要介紹了GPIO的功能配置、內部結構以及在不同場景使用時的注意事項,旨在幫助GD32 MC
    的頭像 發表于 09-07 10:34 ?583次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b><b class='flag-5'>入門教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> GPIO 結構與使用注意事項