1. 引言BlueNRG-2 作为一款高性能低成本的低功耗蓝牙 SoC 解决方案,实现了在有限的资源下兼容蓝牙 5.2 协议的功能。客户在使用 BlueNRG-2 芯片设计产品时,通常会将其当作方案中的主控芯片来用,控制外围器件,最常见的应用就是使用 GPIO 输出高低电平控制外部器件或作为某些器件的开关使能信号,本文讨论下 BlueNRG-2 在低功耗模式下,客户关于 GPIO 口使用上的一些常见问题。 ; S5 r& J* k7 \1 j 2. 问题描述 在低功耗模式下 GPIO 端口是否可以保持固定电平的输出状态?如何设置? 3. 问题回复 3.1. BlueNRG-2 共有 3 个 GPIO 管脚在低功耗模式下可以设置成输出,并保持输出状态。根据BlueNRG-2 的规格书,这三个管脚分别是 GPIO9, GPIO10, GPIO11。 & V V" T8 {8 `: w1 q4 P3 T. i 3.2. 以上 3 个管脚如被配置成输出管脚,其电平状态在正常工作模式和低功耗模式下是由不同的寄存器组来控制的。3.2.1. 低功耗模式下,由下列系统控制寄存器组中高亮显示的 SLEEPIO_XX 相关寄存器来控制(如图 1)。 ~) @# q& J( l$ M( ] 9 ~- H9 x8 E' X1 r) W 3.2.2. 在正常工作模式下,由 GPIO 模块的相关寄存器来控制。, `* E; |3 x+ c $ N7 ]3 B7 j" }2 p. W 3.2.3. 在文件“BlueNRG1_gpio.c”中可以找到设置正常工作模式和低功耗模式GPIO 状态的 API 函数。 % P: ?' e: ~- Z: {8 s1 _ $ V/ F- L0 q) l' n& |# J 完整版请查看:附件 |
[NUCLEO-C031C6评测] 驱动LCD 第二步 初始化屏幕
[NUCLEO-C031C6评测] 驱动LCD第一步
【STM32MP135-DK】裸机开发
STM32MP135F-DK 开箱&开发环境搭建&硬件设计分析
【STM32U599】4.引入RTC与MVP开发
基于STM32CUBEMX驱动TMOS模块STHS34PF80之获取状态数据(5)
基于STM32CUBEMX驱动TMOS模块STHS34PF80之中断获取信号(4)
基于STM32CUBEMX驱动TMOS模块STHS34PF80修改检测阈值(3)
基于STM32CUBEMX驱动TMOS模块之驱动STHS34PF80进行人体检测(2)
基于STM32CUBEMX驱动TMOS模块STHS34PF80之获取ID(1)