Stm8L系列单片机的低功耗有五种模式:
§ wait模式
§ Lowpower run模式
§ Lowpower wait模式
§ Active-haltwith full RTC模式
§ Halt模式
最低功耗的就是就是halt模式。这里也主要总结一下如何进入halt模式,进入以后可以通过什么方式唤醒,以及有很多客户会关心的如何自动唤醒。
Halt模式进入很简单,执行一条halt指令,调用库函数也就是halt()就行了。但是进入前要注意把所有的中断挂起标志给清除掉。要是不清零又恰巧有中断标志的时候进入该模式也会被立马唤醒。进入这种模式,所有的外设全都关闭了,所有时钟关闭。这时候它自己是醒不过来的,只能靠掐人中(给个外部中断)或者重新复活(重启复位)。当然这个在进入halt之前是要把中断引脚什么的该配置的给配置好了。
那现在有个问题就是在halt模式下只能通过外部中断和复位了,我需要它自动醒过来怎么办?那就在进入的时候定个闹铃了(打开rtc),到点了就要醒过来。既然开了闹铃了它也就不是纯halt模式了。这时候也就叫做active-halt模式。Active-halt模式下可以打开个rtc和lcd。这里要说明一下,在stm8s和stm8l101xx系列里面有AWU自动唤醒寄存器。这一系列里面却没有,它就是靠RTC来实现自动唤醒功能的。那现在就做个最简单的例程看看是如何使用rtc自动唤醒功能的:
第一步:选择RTC时钟源(使用lse或者lsi)                         CLK_RTCClockConfig(CLK_RTCCLKSource_LSI,CLK_RTCCLKDiv_1);
第二步:使能RTC的时钟                                                    CLK_PeripheralClockConfig(CLK_Peripheral_RTC,ENABLE);
第三步:选择RTC唤醒时钟源                                            RTC_WakeUpClockConfig(RTC_WakeUpClock_CK_SPRE_16bits);
第四步:RTC唤醒计数中断使能                                         RTC_ITConfig(RTC_IT_WUT,ENABLE);
第五步:使能所有中断                                                     enableInterrupts();
以上是初始化进行配置的部分。而每次要进入halt模式的时候我们还需要执行以下的步骤:        
第一步:设置唤醒的时间:                                               RTC_SetWakeUpCounter(5);
第二步:RTC唤醒使能:                                                  RTC_WakeUpCmd(ENABLE);

第三步:执行halt指令:                                                   halt();

STM8L052低功耗模式的更多相关文章

  1. android wifi SWOL低功耗模式

    1 睡眠模式RX代码流程 ar_wal_rx_patch.c::patch_rx_process_recv_status//调用rx_ctxt->data_ind_handler -> d ...

  2. msp430f149的低功耗模式

    430的低功耗确实很强啊,虽然和VR单片机比起来速度慢了好多.在CPU进行工作时,如果没有什么事情干,就得进入低功耗模式啦,LMPX(0~4)这几种模式的具体事项就是如下的,得记住了. 一,运行模式M ...

  3. android蓝牙的调试(博通蓝牙工作 and 低功耗模式)

    首先结合项目从整体上去把握这部分: 蓝牙模块中一个比较核心的文件是bluetooth.c, 在我们上电的时候, 会调用这个文件中bt_enable()这个函数, 在这个函数里面先调用set_bluet ...

  4. 【Debug】串口发送数据时部分字节被拉长,出现帧错误,原因MCU进入低功耗模式导致串口时钟停了!

    串口发送数据时部分字节被拉长,出现帧错误,原因MCU进入低功耗模式导致串口时钟停了!

  5. MSP430 G2553 低功耗模式LPMx

    MSP430除了正常运行时的active模式外,还支持五种低功耗模式(Low-power mode),分别为LPM0.LPM1.LPM2.LPM3.LPM4,由状态寄存器中的CPUOFF.OSCOFF ...

  6. STM32的低功耗模式

    一 待机模式standby和STOP模式的区别: 进入低功耗模式:都一样,都是先关闭相应时钟,关闭相应外设,配置相应所有IO口(浮动输入),然后配置相应的唤醒中断源,中断影响的O口,然后调用相应函数进 ...

  7. STM32低功耗模式与烟雾报警器触发信号电路设计

    1.STM32的3种低功耗模式 STM32有3种低功耗模式,分别是睡眠模式.停机模式和待机模式. 2.STM32在不同模式下的电流消耗 a.工作模式  消耗电流在27mA至36mA之间. b.睡眠模式 ...

  8. 【原创】STM32低功耗模式及中断唤醒(基于BMI160及RTC)的研究

    预研目标 六轴静止时,终端进入低功耗模式:六轴震动时,终端正常工作模式,从而极大减少非工作时的电流消耗. 解决方案 机器静止时,依据六轴算法,CPU进入休眠(停止)模式:机器工作时,触发六轴中断唤醒C ...

  9. FreeRTOS低功耗模式

    在系统或电源复位以后,微控制器处于运行状态.当CPU不需继续运行时,可以利用多种低功耗模式来节省功耗,例如等待某个外部事件时,用户需要根据最低电源消耗,最快速启动时间和可用的唤醒源等条件,选定一个最佳 ...

随机推荐

  1. Typora 使用说明

    目录 Typora是一款超简洁的markdown编辑器,具有如下特点: 完全免费,目前已支持中文 跨平台,支持windows,mac,linux 支持数学公式输入,图片插入 极其简洁,无多余功能 界面 ...

  2. java压缩文件或文件夹并导出

    java压缩文件或文件夹并导出 tozipUtil: package com.zhl.push.Utils; import java.io.File; import java.io.FileInput ...

  3. 电脑右键新建excel工作表,但是扩展名是.xls,而不是.xlsx

    怀疑是因为之前安装了wps,然后又卸载了,导致的.上网查阅,如下: excel默认新建xls 不是我的问题 Excel 2010/2013/2016在鼠标右键新建xls或xlsx文件后,打开报错“无法 ...

  4. 在Windows2008r2 安装.net4.5

    WebApi 是比较高的环境下面开发 需要的环境是net4.5 或以上. Windows2008r2 里面没有这个环境必须自己安装.安装net4.5 必须sp1环境以上才能安装. 将Windows20 ...

  5. SpringMVC+Apache Shiro+JPA(hibernate)案例教学(四)基于Shiro验证用户权限,且给用户授权

    最新项目比较忙,写文章的精力就相对减少了,但看到邮箱里的几个催更,还是厚颜把剩下的文档补上. 一.修改ShiroDbRealm类,实现它的doGetAuthorizationInfo方法 packag ...

  6. java字符串转为Map类型:split()方法的应用

    方法一: package com.thinkgem.jeesite.modules.socketTest.demo2; import java.util.HashMap; import java.ut ...

  7. jmeter和jdk的安装教程

    jmeter和jdk的安装教程 1:先下载安装jdk并且配置环境变量,配置环境变量的步骤如下: 右击计算机图标--点击属性--点击高级系统设置--点击环境变量后添加jdk的环境变量 a.系统变量→新建 ...

  8. linux下动态链接库(.so)的显式调用和隐式调用

    进入主题前,先看看两点预备知识. 一.显式调用和隐式调用的区别 我们知道,动态库相比静态库的区别是:静态库是编译时就加载到可执行文件中的,而动态库是在程序运行时完成加载的,所以使用动态库的程序的体积要 ...

  9. C# 断言 Assert

    重构-断言 现象:某一段代码需要对程序状态做出某种假设 做法:以断言明确表现这种假设 动机: 常常有这种一段代码:只有某个条件为真是,该改名才能正常运行. 通常假设这样的假设并没有代码中明确表现出来, ...

  10. java基础知识三 流

    Java 流(Stream).文件(File)和IOJava.io 包几乎包含了所有操作输入.输出需要的类.所有这些流类代表了输入源和输出目标. Java.io 包中的流支持很多种格式,比如:基本类型 ...