M5Stack Core2の電源管理IC(AXP192)を調べてみた-1-
PM5Stack Core2をESP-IDFで開発したいがサンプルプロジェクトがないので自分で作ることにした。 まずは設定が必要そうな電源回りを調査した
参考資料
- M5Core2公式サイト (ただしAXP192のデーターシートは一部しかない)
M5Stack Docs - The reference docs for M5Stack products. - AXP192データシート (こちらには英語版と中国語版があった)
M5-Schematic/Core at master · m5stack/M5-Schematic · GitHub - M5 Core2 library
M5Core2/AXP192.cpp at master · m5stack/M5Core2 · GitHub - M5StackCのAXP192をすでに解析されている方がいましたので参考にさせて頂きました
M5StickCのバッテリー管理AXP192を調べる | Lang-ship
電源管理(AXP192) - M5StickC非公式日本語リファレンス
AXP192周辺接続図
下図が回路図から簡略化したAXP192の周辺接続図になる。
AXP192の電源入力はUSBがACINで外部給電(M5.BUSやEXT.PORTAの5V)がVBUSに割り当てられている。
VBUSがループしていて回路図だけでは理解できなかったがM5 Core libraryを読んで動作が分かった
- USB給電、バッテリー給電
ACIN → IPS_OUTで電源供給。昇圧チップ(SY7088)で5Vに昇圧して外部へ出力
この時にVBUS入力は使わない - 外部給電
VBUS → IPS_OUTで電源供給。EXTENをOFFにしてSY7088を無効にする
※最新のM5Core2 libraryではM5.begin()で選択可。↓のmode
void M5Core2::begin(bool LCDEnable, bool SDEnable, bool SerialEnable, bool I2CEnable, mbus_mode_t mode);