SimpleLink WiFi CC32xx电源管理框架介绍

+荐课 提问/讨论 评论 收藏
  • 课程目录
  • 相关资源
  • 课程笔记

欢迎学习适用于CC3220 无线 MCU 的 电源管理框架教程。 本教程的目标是了解 CC3220 器件的各种低功耗模式, 并使用户熟悉电源管理框架。 在学习本教程之后,您将能够了解 CC3220 MCU 支持的各种低功耗模式, 在 TI 驱动程序内使用电源管理框架, 使用 TI 驱动程序配置外设,初始化 并启用电源管理结构, 为低功耗模式指定 I/O 设置, 最后调试功率感知应用。 CC3220 器件支持以下功耗模式 -- 睡眠模式 -- 该模式是ARM Cortex-M4 处理器的 标准低功耗模式;低功耗深度睡眠模式 -- 我在本教程中将其称为 LPDS。 在该模式下,功能时钟和外设时钟 会选通 -- 慢时钟继续在后台运行。 最后,我们有休眠模式,它是关闭应用和网络 处理器的极低功耗 模式。 慢时钟也会继续在该模式下运行。 该图显展示了其中每种功耗 模式的特性以及相对电流消耗 和唤醒时间。 右侧的箭头有两种含义。 一种含义是电流消耗在从睡眠 转换到休眠时会减少,相反,另一种 含义是唤醒时间在从睡眠转换到 休眠时会增加。 您可以看到各种功耗模式 是如何影响 RAM、CPU 和外设上下文 保留的以及可以使用哪些唤醒源。 让我们更加详细一点地讨论每种模式。 在睡眠模式下,处理器时钟 停止,这会中止代码执行。 外设配置 将会保留,但它们的时钟会选通, 这将导致在未启用睡眠时钟的情况下, 所有正在进行的外设事务都会停止。 在睡眠模式下,还会保留 SRAM 和慢时钟计数器的内容。 睡眠模式下的唤醒时间非常短, 任何中断都可能唤醒 MCU。 在这里要注意的是,当 MCU 进入睡眠模式时, 调试器会断开。 与睡眠模式类似,低功耗深度睡眠模式会在保留 慢时钟计数器的同时选通处理器时钟。 与睡眠模式不同,外设时钟也会 选通,从而导致配置损失。 不过,可以完全或部分保留 SRAM。 256 KB 的 SRAM划分为四个块, 其中每个块为 64 KB。 可以将任何数量的块保留在低功耗 深度睡眠模式,但无法保留某个块的一部分。 这意味着在进入LPDS 之前可以通过 软件在 RAM 中保留外设配置,并且可以通过 在唤醒之后从 RAM 中检索 来恢复它。 唤醒时间大约为 3 毫秒, 此时会执行软件开销。 在 LPDS 下,并非每个中断都可以唤醒 MCU。 只有一组指定的可编程唤醒源 可用于该模式。 可用的唤醒源为 -- 来自网络处理器、LPDS唤醒计时器的中断 -- 可以在应用中指定它的持续时间。 此外,可以将GPIO 的某个子集 设置为外部唤醒源。 与睡眠模式类似,调试器会在 MCU 进入 LPDS 时断开。 LPDS 仅影响应用 MCU,而 不会影响网络处理器,这在本质上意味着, 任何网络配置,包括到 AP 的连接 以及所有互联网套接字连接,都将 在进入和退出LPDS 时保留。 通过正确地设置引脚, 电流消耗可以低至 1 毫安, 并且器件保持与 AP 和互联网的连接。 该模式非常适合应用在大多数 时间都保持空闲,但仍 需要保持连接到网络以便可以 在接收到来自网络的信号时 立即执行某种操作的情形。 休眠与 LPDS和睡眠不同, 会影响应用和 NWP 处理器, 从而导致极低的电流消耗。 它本质上会关闭芯片, 仅保留少数寄存器。 慢时钟计数器会在该模式下保持活动状态。 网络配置也会丢失。 来自慢时钟计数器的中断 可能会将系统从休眠模式唤醒。 此外,可以同时将一组指定的 GPIO 设置为 唤醒源。 尽管在该情况下电流消耗极低, 但它与 LPDS 相比具有相对较长的唤醒时间。 该模式非常适合器件在大多数 时间处于非活动状态, 只须定期或基于某种 GPIO 活动 执行某种操作的情况。 到目前为止,我们已经讨论了低功耗 模式及其特性。 在接下来的幻灯片中,我们将从软件的角度 讨论如何在应用中 使用低功耗功能。 在本教程中,电源管理框架 将被称为 PM模块或 PM 框架, 它是 TI 驱动程序库的 一部分,负责运行各种 低功耗模式。 尽管它可以单独使用,无需 运行该库中的外设驱动程序, 但强烈建议还针对外设使用 TI 驱动程序。 这是因为,所有驱动程序都能够感知功率,并在 电源管理模块中注册它们自身。 这可以简化外设配置管理, 此时 MCU 循环进入 LPDS。 TI 驱动程序是易于使用的接口驱动程序集合,适用于 大多数外设。 对于适用于德州仪器 (TI) 的其他MCU 的 TI 驱动程序而言, 接口是类似的。 它位于 driverlib 之上,driverlib 是一个低级 外设驱动程序库。 使用通用 RTOS API 可使驱动程序重新进入, 这意味着它们可以与任何 RTOS一起工作,甚至无需 RTOS 即可工作, 前提是提供了移植层。 CC3220 SDK 为TI RTOS、Free RTOS 和非 OS 环境提供移植层。 这些驱动程序能够感知功率, 并且支持 SDK 中的以下工具链 -- Code Composer Studio,它是德州仪器 (TI) 提供的免费 IDE,以及IAR Embedded Workbench 和 GCC。 如前面所述,PM 框架 与 TI 驱动程序集成在一起。 每个器件驱动程序都会在打开接口时在 PM 模块中 注册它们自身。 应用需要在一开始初始化 PM 模块, 但可以在运行时启用 或禁用它。 通常,一进入 LPDS,外设时钟就会选通, 并且外设配置将会丢失。 PM 模块负责在退出 LPDS 之后 启用该时钟。 它还将外设配置恢复到 进入 LPDS之前的状态。 如果在进入 LPDS 之前未正确设置引脚,则可能 会导致电流泄漏。 因此,有必要正确设置引脚。 PM 模块负责根据设置 结构来设置引脚,设置结构是 在初始化 PM模块时指定的。 尽管 PM 模块负责管理 外设配置和引脚设置, 但它仍允许针对进入 LPDS、退出 LPDS 和进入休眠模式等各种功耗事件注册 挂钩函数。 如果在 RTOS 环境中工作,并且启用了 PM 框架,则电源管理会检查所有 注册的驱动程序以检查是否可以 将 MCU 置于 LPDS。 仅在确认当前没有任何外设处于活动 状态之后,它才允许应用 MCU 进入 LPDS。 此外,它还确保它具有足够的时间来循环 进入 LPDS 周期。 因此,如果某个任务要再次极短暂地处于活动状态, 将运行睡眠负载,而不是 LPDS。 如果在非 OS环境中工作, 则应用必须显式调用电源管理函数, 在这之后,它将执行类似的检查, 以确定应用MCU 是否可以 进入 LPDS。 与 LPDS 不同,需要由应用 执行函数调用,以便将 SOC 置于休眠模式。 无论 PM 框架是否启用, 一旦调用其 API, 系统就会进入休眠模式。 器件保持在休眠模式的持续时间 作为参数传递到函数中。 如果持续时间大于最低值, 器件将进入休眠模式, 并且保持在该模式,直到 计时器计时结束或发生外部触发事件。 可以在 PM 配置结构中指定 GPIO 唤醒源。 可以在休眠期间保留 I/O, 也可以在 PM 配置结构中指定 I/O。 在使用休眠模式时,开发人员需要确保 以下几点 -- 在进入休眠模式之前停止网络处理器, 在从休眠模式唤醒之后禁用保留,指定为 第 1 组的 SFlash引脚保留已经 由引导加载程序禁用。 对于其他组,必须由应用 禁用保留,但仅在重新 配置引脚之后进行。 下面针对其中的每个字段提供了 样例电源管理结构和简短 说明。 可以在 PM 配置结构中指定 LPDS 的引脚设置结构。 应正确设置引脚以实现较低的 电流消耗,这一点极其重要。 以下是所有引脚可能出现的设置状态。 样例设置结构如下所示 -- 能够以组的形式将I/O 保留在休眠模式, 不支持针对 I/O进行单独保留。 这里显示的是四个消耗大部分 I/O 的组。 再强调一次,应确保在从休眠模式唤醒之后 禁用保留。 无论器件进入哪种低功耗, 调试器都将断开。 可以在器件退出LPDS 并保持在 活动模式后重新连接调试器。 如果希望重新连接到调试器,则有必要使用 将调试接口在 LPDS 保持活动状态并且不设置 JTag 引脚的设置。 要在从 LPDS 唤醒之后重新连接调试器, 应用需要确保应用 MCU 不立即 再次进入 LPDS。 可以通过以下方法来实现该目的 -- 禁用功耗策略和LPDS 退出挂钩函数, 或放置用户控制的 while 循环, 该循环可以在重新从调制器 连接之后中断。 以下 SDK 示例中使用了到目前为止 展示的大部分设置。 Idle Profile --这会运行 LPDS, 它是基于 RTOS 的示例,根据 CCS 和 IAR 使用 不同的 RTOS。 Idle Profile Nonos 运行LPDS,它是一个 nonon 示例。 Sensor Profile 是一个运行休眠模式的应用。243
课程介绍 共计1课时,12分41秒

SimpleLink WiFi CC32xx电源管理框架介绍

SimpleLink 低功耗 电源管理 WiFi CC3220 框架

CC3220无线MCU具有三种电源模式:睡眠,低功耗深度睡眠和休眠模式。 这些功能可以实现SimpleLink Wi-Fi的超低功耗。 看本视频了解更多!

推荐帖子

TMS320C2x程序中断的保护和恢复
下面是一个在XF引脚上产生一个10KHz正脉冲的TMS320C2x程序。    PRD   .set     3           IMR   .set     4。   &nbsp...
Aguilera 微控制器 MCU
一个完全用Proteus 8.0编译和测试的基于LM3S301的闪烁灯实验
俺最近想花点时间玩玩LM M3/M4,俺申请到了几块TI的板子,在DK-LM3S8962上试了试 用labview自动生成ARM Cortex M3的代码,从实验结果看还行,那天我把用labview生成的代码 搬移到Proteus8.0上来测试。今天给坛友们分享一个,俺刚刚完全用Proteus编译和测试的闪烁灯实验 下面是建工程、编译和测试贴图 [ 本帖最后由 平湖秋月 于 2013-6-2...
平湖秋月 微控制器 MCU
使用评估板下载其他LM系列ARM 芯片的体会
利用坛里面提供的LM3S8962开发板 资源, 设计了光电曲线测试仪表。在第一次调试下载过程比较费心血!   第一次上电:测量电路板无短路,芯片焊接正确后,上电, 由于LM3S8962的89 PIN  ,如下图   JTAG RST#  没有上拉,悬空时,LM3S8962一直处于JTAG 端口复位, 直接导致KEIL 软件用评估板下载器连接时,报...
eeleader 微控制器 MCU
关于在CCS v5下MSP-FET430UIF Debugger 固件升级
 可以从如下链接找到FET固件的相关说明: http://processors.wiki.ti.com/index.php/MSP_Debug_Stack   关于升级固件的软件在附件中。在升级固件的过程中,需要对FET仿真器进行一次插拔,在我的PC机器上安装的CCSv5.1,其升级的图片如下:...
hansonhe 微控制器 MCU

大明58

SimpleLink WiFi CC32xx电源管理框架介绍

2020年03月08日 11:31:14

shakencity

学习学习SimpleLink WiFi CC32xx电源管理框架介绍

2019年12月24日 11:09:02

zwei9

学习-SimpleLink WiFi CC32xx电源管理框架介绍

2019年05月16日 02:13:53

hawkier

继续学习了

2019年04月20日 23:01:43

zly1986ZLY

好好学习,天天向上!

2019年04月16日 14:14:05

hellokt43

h好好学习天天向上。。

2019年04月07日 14:20:45

song430

好好学习,天天向上。

2019年03月06日 15:42:41

htwdb

学习

2018年12月01日 07:59:05

凤凰息梧桐

学习一下

2018年11月22日 20:15:26

hello_mcu

学习视频。

2018年11月11日 14:47:19

分享到X
微博
QQ
QQ空间
微信

EEWorld订阅号

EEWorld服务号

汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2023 EEWORLD.com.cn, Inc. All rights reserved