n_shinichi’s blog

日々の備忘録、 趣味のあれこれなど紹介 (すみません、メニュー、リンク、カテゴリー分けがうまくできてません、★記事一覧★で見てください...) NHK魔改造の夜ではDンソーのベテランアドバイザーってことで出ました♪

MENU

スタックチャン バッテリ電圧表示

スタックチャン、

 標準のM5Avatarを使ってると画面を占有されるので

 単純にそのままだとM5.Lcd.printf()の類で文字表示はできない。

 

ライブラリ見てると

 sprite機能を使い分けるとかしないといけない。。。かなって感じだった。

 SNSでもアドバイス頂いてやっぱりspriteでなんとかするか

 ライブラリをいじるかですねとのこと。 やっぱりか。。。

 

スタックチャン、画像で検索しても

 画面に文字出してるのって全く見掛けない。

 (吹き出しとかスクロールなどのスタックチャンの機能?で文字の表示はある。)

 なもんで簡単にはたぶん文字は出せないんだろうな・・・って気はしてた。 

 そもそもスタックチャンはそのままスタックチャンで提供してる表示だけを

 使うのが本来の正しい使い方。。。なのかな

 だから文字を出したりしようとも思ってる人はあまり いない?

 

スタックチャンの標準の顔、あれはシンプルでかわいい。

 ザッケード運動を考慮した動き、なるほどって思った。

 

自分はスタックチャンのかわいいいい感じは参考にさせてもらって

 ロボ作りに活かしたいと思ったところ

 なので画面占有しないスタックチャン表示に作り替えたもの作った。

 だいたい...あーやってるのかな・・・ってのは想像つくので

 ライブラリを参考にさせてもらって。

 

これで思い通りに文字の表示などもできる。

 こちらはバッテリ電圧を表示したところ。

 

バッテリ電圧もこれを機会に高精度?にしてみた。

 

というのも、そもそもM5Stackは自分の知る限りでは

 バッテリ電圧は内部的にモニタできない。

 

M5.Power.getBatteryLevel() では25%飛びの値で

 ざっとの残量みれるだけ。  だと思ってる。

 M5StickCとかは内部電圧が読めるけど。

 

M5Stackのボタン列を下にして下側のポートで短くHat風に

 モータ付けて動かしたいとこなんだけどGPIO21,22とかを

 使うとI2C での AXP192との通信ポートを取っちゃうので  

 M5.Power.getBatteryLevel() が使えない・・・

 

なので、しょうがないので。。。

 バッテリ電圧をADで読むことにした。

 バッテリー端子とGNDを10kΩで分圧してADで取り込んでる。

   後々、チップ抵抗にするのがいいかな。。。

 

 分解能は12bitあるので一旦、較正するとすっごい正確。

 mV単位まで当たり前に精度よく検出できる。意味ないけど。

 10mV単位まで表示するようにしてみた。

 

でもってスタックチャン表示しながら文字出力、

 バッテリー電圧表示してみたのがこちら。