search
LoginSignup
5

More than 3 years have passed since last update.

posted at

PNGからM5Stackで表示できるBitmapのテキストデータに変換するPythonツール

M5Stackを買いました!
どうやら人気らしくネットでの在庫がなくなっているようです。(2019.04現在)
DSC_1633.JPG

何をしてよいのか分からなかったのですが、SDカードに入ったjpeg画像は簡単に表示できるということを知って、早速表示してみました。
ArduinoIDEはすでに入っていたので簡単なスケッチを書くだけです。

void setup(void) {
  M5.begin();
  M5.Lcd.drawJpgFile(SD, "/miku.jpg");
}

DSC_1632.JPG
コードを書くよりも、16GB以下のマイクロSDカードを部屋で探す方が時間がかかりました(笑)

次はM5.LCD.drawRGBBitmapを使って、ドット絵などの小さい画像を表示させます。
画像を切り替えてアニメーションさせるために、SDカードの画像ファイルではなくプログラム内に画像データとして置きます。
M5Stack Animation Test

このときに画像をテキストデータに変換するのですが、適当なツールが見つけられなかったので、簡単なコンバータをPythonで作りました。
ソースコードはこちら。
https://github.com/iikagenlabo/png2img

python png2img.py <pngfile>

とすると、画面にテキストデータが表示されます。
コピペするかリダイレクトでファイルにしてコードに埋め込んでください。

//  例
const unsigned short img0[] = {
  0x0000,0x0000,0x0000,0x3800,0xD800,0xC800,0xC800,0xC800,
  0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,
  0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,
  0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,0xC800,
};

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
5