Firefly开源社区

打印 上一主题 下一主题

qpps工程下,在 sleep 下不能被client连接的

400

积分

0

威望

0

贡献

注册会员

Rank: 8Rank: 8

积分
400
QQ
发表于 2016-4-13 14:53:11      楼主
你对低功耗蓝牙的理解就是sleep下就能自动被连接吗?如果是这样,那么你的理解是错误的。
1.无论何时,sleep模式下都是不能够被连接的。
2.蓝牙能否正常的被连接,关键在于是否启用了蓝牙广播,蓝牙会用极短的时间内完成广播发送,然后进入sleep模式。在广播发出的时候,系统绝对不会是sleep状态的。反之,即使系统全速运行,你没有启用蓝牙广播,也是无法连接的。
3.sleep作为一个睡眠,是即使BLE在正常工作的时候也会出现的一个状态,于是才能够低功耗。也就是手机即使和BLE设备在连接状态下,也会出现进入sleep模式的情况,并且是大多数时间都是。
4.例程的低功耗模式已经很成熟,对于何时进入低功耗无须太过于纠结,也请尽量不要手动干预,如果你在使用中电流过大,可以参照main函数的LED指示进行判断进入了哪一级的低功耗,依此排查不能进入低功耗的原因。
没个性,不签名!
回复

使用道具 举报

400

积分

0

威望

0

贡献

注册会员

Rank: 8Rank: 8

积分
400
QQ
发表于 2016-4-14 09:10:50      沙发
longdelu 发表于 2016-4-13 23:32
有可能设置的连接事件太频繁所致吗?我设置的连接时间为10ms 1次,并且不允许从机延迟

如果连接过于频繁确实会导致电流比较大。
没个性,不签名!
回复

使用道具 举报

400

积分

0

威望

0

贡献

注册会员

Rank: 8Rank: 8

积分
400
QQ
发表于 2016-4-14 15:08:42      板凳
longdelu 发表于 2016-4-14 09:55
这就是它在连接状态造成功耗比较高的原因吗?还是说由于连接太频繁,虽然说协议栈也会进入sleep模式,但 ...

其实连接的时候也是会sleep的,但是连接参数和数据吞吐率决定了芯片的sleep时间。如果你想比较仔细的分析睡眠状态,可以用两个IO口指示睡眠状态(如main),然后用逻辑分析仪抓取IO状态
没个性,不签名!
回复

使用道具 举报

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

本版积分规则

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