以前有分享M60鍵盤優化功耗過程,有挖坑說,量產版功耗能夠更低,今天就來把坑填上,優化後的結果是:python
量產版M60鍵盤跑Python固件的睡眠功耗爲 0.05mA,連上藍牙空閒狀態的功耗是 0.16mA。git
睡眠狀態
藍牙鏈接狀態async
其中,比較關鍵的點是:優化
- 按鍵檢測引入中斷檢測方式,,沒有按鍵時啓動中斷檢測,任何按鍵按下則當即觸發中斷。中斷方式相比周期掃描,至關省電,並且有更快的響應速度。1.
- 把沒有用到的外設及時關掉,MCU能sleep則sleep2.
- 優化電路,把電路的靜態功耗下降3.
固然了,鍵盤功耗最大實際上是燈。好比,用一個藍色呼吸燈指示藍牙廣播狀態,功耗就飆到2mA以上了,還好能夠設定藍牙廣播一段時候自動關閉,不會耗太多電量。spa
上圖中,你可能會好奇爲何用9鍵呼吸燈顯示藍牙廣播狀態,由於M60鍵盤的Python固件目前支持10個藍牙設備切換,能夠經過B + 0到9切換設備,並用相應的位置燈指示。ip
爲何是支持10個設備呢?由於M60的數字鍵就10個,鍵有點不夠用。若是你有超過10個設備用同一個鍵盤,能夠在下面留言,能夠給你特別的支持。get