BlueNRG-1是一款支持蓝牙低功耗(BLE)技术的单模片上系统,它由STMicroelectronics(意法半导体)生产,是Cortex-M0+ 32位微控制器架构的组成部分。在移动设备、可穿戴设备以及各种物联网(IoT)应用中,由于其低功耗特性,BlueNRG-1被广泛采用。 BlueNRG-1的低功耗模式是其最重要的特性之一。该芯片支持多种低功耗模式,以便在不同的应用场景中实现最佳的功耗平衡,同时保持快速响应能力。根据应用笔记AN4820的介绍,BlueNRG-1提供了以下三种硬件低功耗模式: 1. CPU暂停模式(SLEEPMODE_CPU_HALT) 这种模式下,外围设备保持启用状态,但CPU处于暂停状态。当有中断或事件发生时,CPU会被唤醒。CPU暂停模式是所有提供的低功耗模式中,除了运行模式外,功耗最低的一种模式。 2. 睡眠模式(SLEEPMODE_WAKETIMER) 睡眠模式下,CPU停止工作,所有外围设备被禁用,仅保留低速振荡器模块和外部唤醒源模块。当唤醒定时器或特定的IO引脚(IO9, IO10, IO11, IO12, IO13)触发时,系统会从睡眠模式中唤醒,恢复到运行模式。由于系统从低功耗状态恢复需要时间,等待高速振荡器稳定,所以这种模式的启动时间相对较长。 3. 待机模式(SLEEPMODE_NOTIMER) 在待机模式下,CPU和外围设备均停止工作,只有GPIO外部中断能够唤醒设备,这使得待机模式成为所有模式中最省电的。从待机模式唤醒后,需要等待高速和低速振荡器稳定。待机模式的功耗最低,但唤醒时间最长。 BlueNRG-1DK软件包提供了对所有这些硬件低功耗模式的支持。开发者在软件层面上通过调用“BlueNRG_Sleep()”函数来启用特定的低功耗模式,并通过参数来配置休眠时间和唤醒条件。该函数的参数包括: - sleepMode:指定要启用的低功耗模式,包括CPU暂停模式(SLEEPMODE_CPU_HALT)、睡眠模式(SLEEPMODE_WAKETIMER)、待机模式(SLEEPMODE_NOTIMER)。 - gpioWakeBitMask:指定可以从低功耗模式唤醒设备的IO引脚位掩码。 - gpioWakeLevelMask:设置唤醒源的电平条件。 - sleep_time:休眠时间,当设置为非零值时,可实现带有超时的低功耗模式。 开发者应根据应用需求选择最合适的低功耗模式,以达到省电的目的,同时考虑到唤醒时间和功耗的平衡。当BlueNRG-1从低功耗模式唤醒时,系统会产生一次复位,应用程序需重新加载外设配置和环境。不过,低功耗软件通过保存和恢复机制保证了从应用的角度看来,低功耗唤醒是完全透明的,也就是说,CPU将在执行完低功耗函数调用后继续执行下一条指令。 文档还提醒开发者注意,BlueNRG-1的所有低功耗模式的电流消耗在数据表中有详细列出,以帮助开发者做出更精确的功耗管理。 总而言之,BlueNRG-1的低功耗模式及其对应的软件支持大大增强了蓝牙设备的电池续航能力,使它们更适合长时间无人值守的运行环境,如健康监测设备、环境监控设备等。
剩余13页未读,继续阅读
- 粉丝: 6
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助