python 连接蓝牙_Python键盘——优化功耗进行中

7afb9573884be3e874656375d3b20f68.png

更新:

经过几天优化,蓝牙连接下按住按键,功耗从 5.57 mA 降到 0.55 mA,而保持蓝牙连接的闲置状态下,功耗从 470uA 降到 400 uA。

这还没有达到最优化。硬件上,可以加大几个电阻降低功耗;软件上,可以加入休眠模式、调整矩阵扫描频率,进一步省电。量产版本功耗会进一步降低的~


这几天在优化Python键盘的功耗,就来聊一聊功耗。键盘里面跑Python,天生会给人一种功耗很高的感觉,就因为Python的运行速度通常比C慢很多。

那么,跑Python的键盘功耗到底什么水平?

实际测一下才知道,让实测数据来说话,下图中键盘的功耗是0.47mA(这里就用电流来粗糙的表示功耗吧),是电脑通过蓝牙连上键盘情况下的功耗。

54f63fa177c311a248dd711a43ec93bf.png
连上蓝牙的电流

当击键的时候,万用表测到的峰值在5.67mA。按住按键不放,功耗为5.57mA(这里还要很大的优化空间)。

174f3375d341281608178f58ae81c9bd.png
击键峰值电流

休眠模式还没有实现,键盘长时间没有使用,可以进入休眠状态,然后按任意键唤醒,这样的功耗非常低,休眠具体的功耗实现后再更新。

用万用表测电流,是比较粗略的,只显示一个数值,很多时候我们希望显示一个电流的变化曲线,有个专门为此设计的集成测电流功能的开发板,键盘上的M.2核心模块,可以拆下来,放在开发板上开发测试,优化功耗。

072f288a2e05c0e23a7a4298697b81a5.png
Makerdiary nRF52840 M2 Developer Kit

用Python写了桌面小工具把检测到的电流实时显示出来,用起来是下图这样子的:

ec6221b300cedba0f96a61e644c75030.png
点亮和熄灭R、G、B灯的电流变化曲线

图片中阶梯状的曲线是M.2模块依次点亮和熄灭R、G、B灯的电流曲线。这样我们可以分析出哪段代码的功耗具体是多少,以数据为依据优化代码。

继续优化代码去~

另外,文中的键盘是 M60 Keyboard,详见 http://python-keyboard.gitee.io/,开发板为 nRF52840 M2 Developer Kit,见 https://github.com/makerdiary/nrf52840-m2-devkit

e91b33ff3d7b335184690e51b37c45ef.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值