ST意法半导体
登录
直播中
李英
7年用户
1397经验值
私信
关注
[问答]
使用STM32WB55,退出待机模式后所有外设都需要重复初始化的原因?如何解决?
开启该帖子的消息推送
我的客户在他们的开发中使用
STM32
WB55,最近他面临以下问题。
当 WB 进入待机状态时 - 确定。退出待机模式后,所有外设都需要重复初始化(进程、时钟、内存等),但 CPU2 已经处于工作模式(C2DS=0 和 CRPF=1)并且没有与 CPU1 完全
通信
(进入中断 IPCC_C1_RX_IRQHandler 不在)。
我们已经在ST社区找到了这个问题的解决方案。正如我提到的,有一个软重置。
您能否建议如何避免软重置?
回帖
(1)
张博
2023-1-29 12:06:05
即使 CPU2 仍处于 CSTOP(它没有启动),C2DS 位也会从待机状态复位。换句话说,从 Standby 唤醒后该值不正确。
上电后通过设置C2BOOT启动CM0+。从待机唤醒后,这不会产生相同的效果。相反,必须针对 CM0+ 事件输入生成一个事件。在 BLE 示例中,您将遵循同时执行这两项操作的代码。参见示例
STM32Cube_FW_WB_V1.8.0ProjectsP-NUCLEO-WB55.NucleoApplicationsBLEBLE_Peripheral_LiteSrchw_ipcc.c
void HW_IPCC_Enable(无效)
{
/**
* 当设备退出待机时,需要使用EXTI机制唤醒CPU2
*/
LL_C2_EXTI_EnableEvent_32_63( LL_EXTI_LINE_41 );
LL_EXTI_EnableRisingTrig_32_63( LL_EXTI_LINE_41 );
__SEV( ); /* 设置内部事件标志并向 CPU2 发送事件 */
__WFE( ); /* 清除内部事件标志 */
LL_PWR_EnableBootC2( );
返回;
}
即使 CPU2 仍处于 CSTOP(它没有启动),C2DS 位也会从待机状态复位。换句话说,从 Standby 唤醒后该值不正确。
上电后通过设置C2BOOT启动CM0+。从待机唤醒后,这不会产生相同的效果。相反,必须针对 CM0+ 事件输入生成一个事件。在 BLE 示例中,您将遵循同时执行这两项操作的代码。参见示例
STM32Cube_FW_WB_V1.8.0ProjectsP-NUCLEO-WB55.NucleoApplicationsBLEBLE_Peripheral_LiteSrchw_ipcc.c
void HW_IPCC_Enable(无效)
{
/**
* 当设备退出待机时,需要使用EXTI机制唤醒CPU2
*/
LL_C2_EXTI_EnableEvent_32_63( LL_EXTI_LINE_41 );
LL_EXTI_EnableRisingTrig_32_63( LL_EXTI_LINE_41 );
__SEV( ); /* 设置内部事件标志并向 CPU2 发送事件 */
__WFE( ); /* 清除内部事件标志 */
LL_PWR_EnableBootC2( );
返回;
}
举报
更多回帖
rotate(-90deg);
回复
相关问答
stm32wb55
待机
stop睡眠 唤醒
后
蓝牙工作不正常
2023-06-16
723
stm32wb55
控制器要如何做才能进入
待机
模式
呢?
2022-12-12
285
stm32wb55
使用Ble协议栈,进入stop
模式
后
,运行一段时间
后
出现死机,为什么?
2024-05-24
110
stm32wb55
使用Ble协议栈,进入stop
模式
后
, 长时间运行死机如
何解
决?
2023-08-04
275
如何控制
stm32wb55
的电源呢
2022-12-20
197
STM32WB
BLE广播在
退出
待机
模式
后
停止是为什么?怎么解决?
2022-12-28
304
请问是否可以通过BLE唤醒
STM32WB
MCU的
待机
模式
?
2022-12-06
243
如何将
STM32WB55
BLE设备与P-NUCLEO-
WB55
加密狗进行配对呢?
2022-12-14
206
是否可以将MAC层代码集成到
STM32WB55
中?
2022-12-27
190
为什么无法在
STM32WB55
BLE服务器上发现GATT服务?
2023-01-13
171
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分