Cypress技术论坛
直播中

张琳

7年用户 191经验值
私信 关注
[问答]

BLE怎么进入低功耗模式?

我正在努力设计一个HID设备的省电方法。
省电应用说明指出,在保持连接的同时,可以进入低功耗模式。它没有解释如何做到这一点。
理想情况下,该设备将希望具有活动模式、慢速轮询模式、空闲模式和停止模式。
HID鼠标RDK示例确实具有这些状态,因此看起来是理想的模型。这个例子的第一个问题是,在主代码体中根本没有注释,所以很难找出到底发生了什么。
除了停止以外的所有状态,CPU睡眠是相同的IE:
如果(CyBythGETBLISSTATE())= CyByLyBelsStaseE.OCOON on CyByLyGETBLESSTATE()= CyByLyBelsStisteOxDeLoSe] {CysSpMyStudiSeLeP();
但这是(我认为)每10MsScink间隔唤醒CPU,所以在所有3个状态之间似乎没有太大的差别。
我的问题是:
是否有另一个可用的模式来维持连接但消耗较少的功率(较长的连接间隔)?
当连接被维护时CPU是否必须定期唤醒(假设没有用户任务悬而未决)?
在代码BeFeYySypMyDeStudio()中,有一个ACEGULLIN。如果中断被禁用,CPU怎么会完全醒来呢?当然是这样。这是否意味着即使中断被禁用,BLE也会在连接间隔唤醒它?
我在所有模式中获得大约4mA电流,但这可能是因为我只使用标准万用表,也许这只是读取峰值。
谢谢

回帖(15)

张琳

2019-9-19 12:00:06
实验更令人恼火的是,IOS与其他主机有不同的限制,特别是最大从属延迟4。它允许很长的连接间隔。
相反,Windows主机允许更高的从延迟值,但对连接间隔的相对较低的限制。
因此,为了最大限度地节省电力,需要使用两套参数,这取决于它连接到哪个主机。
1 举报

张琳

2019-9-19 12:18:16
当你想要更好地观察功耗时,我建议使用示波器。增加一个并联电阻(也许10欧姆,所以你得到4mV的4mA)到你的电源线,并跟踪它的范围。这样你就能更好地了解发生了什么事。
举报

姜钰

2019-9-19 12:34:49
这些可能会有帮助(AN92584-)
HTTP://wwwyCypC./DooptTys/Appult- NoSe/AN8623 3-PSOC-4低功耗模式和功率还原技术AN8623 3PSOC®4低功耗模式和功率降低技术
HTTP://wwwyCypC./DooptTys/Appult- NoSe/AN90114-PSOC-400家庭低功耗系统设计技术AN90114-PSoC®4000系列低功耗系统设计技术
HTTP//wwwyCypC./DooptTys/Appult- NoSe/AN92584设计低功耗和可估计的电池寿命AN92584-低功耗设计和估计BLE应用的电池寿命
http://Visual.CyPress .com /视频库/搜索/PSoC + 4 +低+电源/
问候,Dana
举报

杨军

2019-9-19 12:45:57
谢谢Dana,我以前读过所有这些,但又重读了92584。它没有明确地说,但意味着CPU将永远被唤醒的祝福在连接间隔,即使当祝福是在睡眠模式。所以也许没有保存的可能。
在这个应用笔记中引用了一个项目,它应该演示低功耗模式,但是在项目或代码中没有关于如何实际运行和更改模式的指令。所以那里没什么帮助。似乎有些数据需要从主机发送给它,但它并没有说。
我会回到鼠标RDK并尝试解开它做什么,并得到一个合适的电流测量方法。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分