Firefly开源社区

打印 上一主题 下一主题

sleep mode

31

积分

0

威望

0

贡献

游客

积分
31

sleep mode

发表于 2015-6-9 12:44:00      浏览:10849 | 回复:11        打印     [复制链接] 楼主
代码中,要进入休眠需要检查几项:
1. ke_timer_empty   休眠定时器队列是否为空,检测能不能进入深度休眠的,因为sleep timer 是针对sleep唤醒的。
2. dev_get_bf()         任何设备在工作,就不能进入休眠。

第二项返回的东西是代表什么设备?外设吗? 是不是需要人工关闭才行?

另外 进入休眠/深度休眠,蓝牙协议栈也停止运作了,此时应该是属于断开状态了?假如我APP连接着的话,模块休眠,APP端的连接是否也断开了?
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-6-9 18:08:17      沙发
FireBLE_blue 发表于 2015-6-9 14:28
是的,指的就是外设,比如IIC 正在通信,中途不能进入睡眠

进入睡眠后,协议栈部分会自主唤醒程序继续往 ...

那不会断开连接的话,如果APP端如果在其休眠时,发送一串数据,那么蓝牙模块是不是就会被唤醒?
因为DEEP sleep 模式时,手册里面说的是,只能由引脚中断唤醒
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-6-12 11:28:47      板凳
安安 发表于 2015-6-10 09:37
蓝牙此时处于sleep模式。当连接断开,外设不工作,设备不广播的时候,才会进入到Deep sleep模式。

我现在是准备在工作的时候,当我工作完毕,主动让其进入深度休眠。
而不用DEMO本身的处理方式

那么也需要先关闭外设,关闭广播,才能调用深度休眠进入深度休眠?
还是直接调用深度休眠函数?
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-6-12 15:37:57      地板
安安 发表于 2015-6-12 14:27
1.进入深度睡眠模式仅仅是进入睡眠,不附带关闭外设工作,断开蓝牙连接的功能。
2.深度睡眠会断掉16M晶 ...

因为不知道到底哪个外设需要关闭。怕把自己打开的外设关闭后,还有一些自己未知的,默认也打开的外设还在活动而使得其不能自动进入睡眠。因为我这边进入睡眠后不用唤醒,设置成了按钮复位。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表