中科芯CKS32 32位MCU进入及退出待机模式的步骤

2021-04-27 15:19:31 0

如今,很多单片机都有低功耗模式,中科芯CKS32 32位MCU也不例外。在系统或电源复位以后,MCU处于运行状态。运行时的CPU 时钟由HCLK为提供,内核执行程序代码。当CPU不需继续运行时,可以利用多个低功耗模式来节省功耗,用户需要根据低电源消耗,快速启动时间和可用的唤醒源等条件,选定一个不错的低功耗模式。


还可以通过在运行时降低系统时钟和关闭APB和AHB总线上未被使用的外设的时钟来降低功耗。但是待机模式下功耗低的,进入待机模式和退出待机模式的条件是什么,以及用到的相关的寄存器是哪些。以采用WKUP引脚唤醒为例,进入及退出待机模式的步骤和相关函数如下:


1、使能电源时钟


RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE); //使能 PWR外设时钟


2、配置置 WKUP引脚作为唤醒源


PWR_WakeUpPinCmd(ENABLE); //使能唤醒管脚功能


3、设置 SLEEPDEEP 位,设置PWR_CR的PDDS 位,执行WFI 指令,进入待机模式


PWR_EnterSTANDBYMode();//进入待机模式,库函数已进行相关操作


通过以上步骤即可进入待机模式,并且当WKUP引脚(PA0)有上升沿时就会唤醒MCU。可以把PA0引脚配置成外部中断,这样MCU一旦唤醒就可以进入中断们可以做进一步的判断,比如是不是误触发或者持续多久才正式开机,不满足条件仍然进入低功耗模式等。


x -

在线交流

  • 李小姐 Emily 13723595064

  • 电话:
    0769-82828396

  • Email:
    lily_hcfy@163.com

  • 地址:
    东莞市常平镇东征路251号1栋933室