完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
你好,
大多数用BLE进行深度睡眠的例子遵循这种模式: CyByPro SeaServEx(;)//Service BLE堆栈事件CyByLyStudiLPM(CyByLyBelsSeBoeSt入睡);/ /将祝福放置到最低功率模式InStase= CyTrimeActualSeCudio();/ /禁用中断BeleStase= CyByLyGeBLISSTATE();/ /获得当前祝福状态(BelsSist.)TE=CyByLyBelsStayeEcOxon on BelsStase= = CyByLyBelsStesteLoeSt入睡){CysSpMyStudiLeSeP();//1.3UA电流消耗}否则(BelsStand)= CyByLyBelsStaseEnviaStRead)//OpLe为活动{CySysMsLePeP();//1.6Ma电流消耗} CyExwittimeLabor(InStand);/ /重新启用中断 这个问题是,关键部分禁用中断[ CyTimeMalkField]。这意味着我的ISRS不开火。如果我把睡眠带到临界区之外,祝福被困在一个叫做睡眠的内部状态循环中。 我怎么能在祝福中入睡,但是服务中断? 谢谢,戴夫 |
|
相关推荐
1个回答
|
|
|
重要的是,处理低功率跃迁的代码在临界区段中被保护,并且中断不允许改变操作线程。在代码段中,这个关键部分由CyTimeMalkSeCudio()函数在开始时绑定,而CyExtIdMalkSeCudio()函数在结尾处绑定。如果你不把代码放在这个关键部分,它可能会导致系统和祝福在进入祝福的低功率模式之间的竞争条件,导致设备进入一个未知的状态,从中无法恢复。
所以你需要把低功耗代码放在关键部分。 |
|
|
|
|
只有小组成员才能发言,加入小组>>
788个成员聚集在这个小组
加入小组cyUSB3014一直显示2.1,不能到3.0情况,谁遇到过
7478 浏览 0 评论
2492 浏览 1 评论
2184 浏览 1 评论
4046 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
2095 浏览 6 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
7955浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
6531浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
760浏览 2评论
736浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
8380浏览 2评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-18 01:39 , Processed in 0.603120 second(s), Total 72, Slave 55 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3168