第23章 RTX 低功耗之待机模式

STM32F103 待机模式介绍

本章节我们主要讲解待机模式,待机模式可实现系统的最低功耗。该模式是在 Cortex-M3 深睡眠模
式时关闭电压调节器。整个 1.8V 供电区域被断电。 PLL、 HSI 和 HSE 振荡器也被断电。 SRAM 和寄存器
内容丢失,只有备份的寄存器和待机电路维持供电。

STM32F103 如何进入待机模式
在 RTX 系统中,让 STM32 进入待机模式比较容易,调用固件库函数 PWR_EnterSTANDBYMode即可。
STM32F103 如何退出待机模式
让 STM32 从待机模式唤醒可以通过外部复位(NRST 引脚)、 IWDG 复位、 WKUP 引脚上的上升沿或
RTC 闹钟事件的上升沿。从待机唤醒后,除了电源控制/状寄存器,所有寄存器被复位。
从待机模式唤醒后的代码执行等同于复位后的执行。电源控制/状态寄存器(PWR_CSR)将会指示内核
由待机状态退出。
在开发板上面是通过 K2 按键来唤醒,K2 按键使用的引脚就是 WKUP 引脚。

STM32F103 使用待机模式注意事项
待机模式要注意以下问题:
? 在待机模式下,所有的 I/O 引脚处于高阻态,除了以下的引脚:
? 复位引脚(始终有效)。
? 当被设置为防侵入或校准输出时的 TAMPER 引脚。
? 被使能的唤醒引脚。

STM32F407 待机模式介绍
本章节我们主要讲解待机模式,待机模式下可达到最低功耗。待机模式基于 Cortex?-M4F 深度睡眠
模式,其中调压器被禁止。因此 1.2 V 域断电。 PLL、 HSI 振荡器和 HSE 振荡器也将关闭。除备份域 RTC
寄存器、 RTC 备份寄存器和备份 SRAM)和待机电路中的寄存器外,SRAM 和寄存器内容都将丢失。

STM32F407 如何退出待机模式
让 STM32 从待机模式唤醒可以通过外 WKUP 引脚上升沿、 RTC 闹钟(闹钟 A 和闹钟 B)、 RTC 唤
醒事件、 RTC 入侵事件、 RTC 时间戳事件、 NRST 引脚外部复位和 IWDG 复位,唤醒后除了电源控制/
状寄存器,所有寄存器被复位。
从待机模式唤醒后,程序将按照复位(启动引脚采样、复位向量已获取等)后的方式重新执行。 PWR
电源控制/ 状态寄存器(PWR_CSR)中的 SBF 状态标志指示 MCU 已处于待机模式。
在开发板上面是通过 K2 按键来唤醒,K2 按键使用的引脚就是 RTC 入侵事件检测引脚 PC13。

STM32F407 使用待机模式注意事项
待机模式要注意以下问题:
? 将选择的待机模式唤醒源(RTC 闹钟 A、 RTC 闹钟 B、 RTC 唤醒、 RTC 入侵或 RTC 时间戳标志)对
应的 RTC 标志清零,防止无法正常进入待机模式。
? 待机模式下的 I/O 状态
? 复位引脚(仍可用)。
? RTC_AF1 引脚 (PC13)(如果针对入侵、时间戳、 RTC 闹钟输出或 RTC 时钟校准输出进行了配
置)。
? WKUP 引脚 (PA0)(如果使能)。

根据这个情况,要实现不手动按键开共享单车的锁,貌似只有独立看门狗了?

时间: 2024-08-04 14:02:54

第23章 RTX 低功耗之待机模式的相关文章

第21章 RTX 低功耗之睡眠模式

低功耗是 MCU 的一项非常重要的指标,比如某些可穿戴的设备,其携带的电量有限,如果整个电路消耗的电量特别大的话,就会经常出现电量不足的情况,影响用户体验. 本章节为大家讲解 M3/4的低功耗方式之睡眠模式在 RTX 操作系统上面的实现方法(RTX 本身支持的 tickless 低功耗模式在第 24 章节讲解) STM32F103 睡眠模式介绍说明:在 RTX 系统上面实现睡眠方式仅需了解这里讲解的知识基本就够用了,更多睡眠方式的知识请看 STM32F103 参考手册和 Cortex-M3 权威

第22章 RTX 低功耗之停机模式

STM32F103 停机模式介绍 本章节我们主要讲解停机模式,停机模式是在 Cortex?-M3 的深睡眠模式基础上结合了外设的时钟控制机制,在停止模式下电压调节器可运行在正常或低功耗模式.此时在 1.8V 供电区域的的所有时钟都被停止, PLL. HSI 和 HSE RC 振荡器的功能被禁止, SRAM 和寄存器内容被保留下来.在停止模式下,所有的 I/O 引脚都保持它们在运行模式时的状态. STM32F103 如何进入停机模式在 RTX 系统中,让 STM32 进入停机模式比较容易,调用固件

第23章 访问者模式(Visitor Pattern)

原文 第23章 访问者模式(Visitor Pattern) 访问者模式 导读:访问者模式是我个人认为所有行为模式中最为复杂的一种模式了,这个模式可能看一遍会看不懂,我也翻了好几个例子,依然不能很好的理解访问者模式的核心.下面这个例子是来源于大话设计模式中的例子,稍作了修改!后续如果我有更好的例子或者想法我会对本章进行完善. 概述:   一个作用于某对象结构中的各元素的操作.它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作(神一般的语言). 结构图:       举例: 1 2 3

JavaScript高级程序设计(第三版)学习笔记20、21、23章

第20章,JSON JSON(JavaScript Object Notation,JavaScript对象表示法),是JavaScript的一个严格的子集. JSON可表示一下三种类型值: 简单值:字符串,数值,布尔值,null,不支持js特殊值:undefined 对象:一组无序的键值对 数组:一组有序的值的列表 不支持变量,函数或对象实例 注:JSON的字符串必须使用双引号,这是与JavaScript字符串最大的区别 对象 { "name":"Nicholas"

Lua_第23章 C API 纵览

第23章 C  API 纵览 Lua是一个嵌入式的语言,意味着 Lua 不仅可以是一个独立运行的程序包也可以是一个用来嵌入其他应用的程序库.你可能觉得奇怪:如果 Lua 不只是独立的程序,为什么到目前为止贯穿整本书我们都是在使用 Lua 独立程序呢? 这个问题的答案在于 Lua 解释器(可执行的 lua).Lua解释器是一个使用 Lua 标准库实现的独立的解释器,它是一 个很小的应用(总共不超过500 行的代码).解释器负责程序和使用者的接口:从使用者那里获取文件或者字符串,并传给 Lua 标准

FreeRTOS 低功耗之睡眠模式

低功耗是 MCU 的一项重要的指标,比如某些可穿戴的设备,其携带的电量有限,如果整个电路消耗的电量特别大的话,就会经常出现电量不足的情况,影响用户体验. STM32F103 睡眠模式介绍说明:在 FreeRTOS 系统上面实现睡眠方式仅需了解这里讲解的知识基本就够用了,更多睡眠方式的知识请看 STM32F103 参考手册和 Cortex-M3 权威指南.在系统或电源复位以后,微控制器处于运行状态.当 CPU 不需继续运行时,可以利用多种低功耗模式来节省功耗,例如等待某个外部事件时,用户需要根据最

STM32学习笔记(九) 外部中断,待机模式和事件唤醒

学会知识只需要不段的积累和提高,但是如何将知识系统的讲解出来就需要深入的认知和系统的了解.外部中断和事件学习难度并不高,不过涉及到STM32的电源控制部分,还是值得认真了解的,在本文中我将以实际代码为例详细讲解这些内容,希望对每一个阅读者有帮助. 1.外部中断 如果已经学习了SysTick系统时钟滴答实验,掌握了Cortex-M3中断的相关知识,那么外部中断也是比较好理解的,和SysTick中断一样,外部中断也是当有信号触发时,如果中断屏蔽寄存器允许触发,就会产生中断,这时CPU查找中断向量表,

Spring Framework Reference Documentation 3.2.8.RELEASE 第23章中文翻译

23. JMS (Java Message Service) [中文翻译 by [email protected]] 23.1 介绍 Spring提供了一个JSM集成框架,简化了JMS API的使用.这点很像Spring对JDBC的集成. JMS大致提供生产消息和消费消息两类功能.JmsTemplate类用来生产消息和同步接收消息[译注:接收消息也就是消费消息].为了异步接收消息(异步接收消息类似于JavaEE的消息驱动Bean(Message-Driven Bean,MDB),Spring提供

MySQL必知应会-第23章-使用存储过程

第23章-使用存储过程 本章介绍什么是存储过程,为什么要使用存储过程以及如何使用存储过程,并且介绍创建和使用存储过程的基本语法. 23.1 存储过程 需要MySQL 5 MySQL 5添加了对存储过程的支持,因此,本章内容适用于MySQL 5及以后的版本.迄今为止,使用的大多数SQL语句都是针对一个或多个表的单条语句.并非所有操作都这么简单,经常会有一个完整的操作需要多条语句才能完成.例如,考虑以下的情形. 为了处理订单,需要核对以保证库存中有相应的物品. 如果库存有物品,这些物品需要预定以便不