電源管理ICであり, 電源管理機能を提供している
また, Core2には振動モーターが搭載されており, AXP192.setLDO3()からバイブレーションの制御を行うことができる
<aside> 💡
M5Stack Core2には390mAhのLiPoバッテリーが内蔵されている
390mAh: 1時間当たり390mAの電流を供給できるという能力を示す. 理論上1時間390mAの電流を供給するか, 195mAであれば2時間のように, 消費電流に応じて稼働時間が変わる
LiPo: リチウムポリマーバッテリーの略. リチウムイオンを使用する充電式バッテリーの一種
</aside>
M5.PowerはM5Stackシリーズの電源管理を統括するインタフェースで, 電源管理IC (Axp192) が搭載されているかどうかにかかわらず, M5Stackの電源関連の操作を抽象化して行うもの
M5.Power.Axp192は, AXP192を直接操作するためのインタフェース (AXP192が搭載されているデバイスはM5Stack Core2やM5StickC Plusなどがある)
M5.Power.powerOff(): 電源をOFFにするM5.Power.getBatteryLevel(): バッテリー残量を返す (0 ~ 100)M5.Power.isCharging(): 今, 充電されているかどうかを返す (bool値)M5.Power.lightSleep(micro_sec): 指定したマイクロ秒だけLight Sleepを行うM5.Power.deepSleep(micro_sec): 指定したマイクロ秒だけDeep Sleepを行う<aside> 💡
Sleepモード: 消費電力を抑えるための小電力モードのこと
Light Sleep: 通常の動作よりも低消費電力になる. CPUのクロックは停止するが, RAMや一部の周辺機器は動作を維持する. 復帰は非常に早く, 割り込みが発生するとすぐにCPUが復帰し, 再び動作を開始する
Deep Sleep: 最も消費電力を低くすることができ, デバイスによってはほぼ0になる. CPUクロックや大部分の周辺機器が停止し, RAMの内容も消去される. 不揮発性メモリにデータは残る. 復帰時に初期化が必要になる場合がある
</aside>
M5.Power.Axp192.powerOff(): 電源をOFFにするM5.Power.Axp192.getBatteryLevel(): バッテリー残量を返す (0 ~ 100)