前回、LEDマトリクスをDMA駆動で光らせてみたのですが、LEDマトリクス用のライブラリが便利だったので改めて色々試してみました。構成LEDデータ入力はデジタル5ピン。電源はVhiピンを接続。Expressについての詳細は以下参照ください。目ん玉ペンダントArduinoライブラリLEDマトリクス点灯のために以下3つのライブラリを使用します。グラフィックをディスプレイに表示するためのライブラリhttps://github.com/adafruit/Adafruit-GFX-LibraryNeoPixel用ライブラリhttps://github.com/adafruit/Adafruit_NeoPixelNeoPixelマトリクス用ライブラリhttps://github.com/adafruit/Adafruit_NeoMatrix前回使用したDMA駆動用のNeoPixelマトリクスライブラリもあります。https://github.com/adafruit/Adafruit_NeoMatrix_ZeroDMAここでは、通常のマトリクスライブラリを使用しました。文字スクロールArduinoコードマトリクスライブラリのプログラム例のmatrixtest.pdeを参考に、”Hello”とスクロール表示します。0;matrix.setTextColor(colors[pass]);}matrix.show();delay(100);}8〜11行目でマトリクスのサイズや始点や配置方向を指定してます。第1、第2引数:マトリクスの幅と高さを指定します。ここでは8✕8のLEDマトリクスを使用しますので、それぞれ8とします。第3引数:Neopixelの入力ピンを指定。ここではデジタル5ピン。第4引数:マトリクスの始点と配置方法を指定します。最初のLEDピクセルは4つのコーナーの1つにある必要があります。始点はNEO_MATRIX_TOPまたはNEO_MATRIX_BOTTOMとNEO_MATRIX_LEFTまたはNEO_MATRIX_RIGHTのいずれかで指定できます。マトリクス配置は、行方向、列方向のNEO_MATRIX_COLUMNSまたはNEO_MATRIX_ROWSで指定し、進行方向はNEO_MATRIX_PROGRESSIVEまたはNEO_MATRIX_ZIGZAGで指定します。これらを”+”でつないで一つの引数とします。NEO_MATRIX_ZIGZAGとなります。第5引数:NeoPixelライブラリ同様に使用されているLEDピクセルのタイプを示します。2018年11月8日フォント追加Adafruit-GFX-Libraryのfontconvertを使用してフォントを追加して表示することが可能です。fontconvertが生成されます。make1makeフォント生成ここでは以下のフォントをダウンロードして表示してみます。https://fontmeme.com/jfont/celtic-hand-font/以下をターミナルで実行するとフォントののヘッダファイルが生成されます。myfont.h5はフォントサイズでこの値で生成するフォントのサイズを指定できます。以下で生成されたフォントを確認することができます。file欄に生成されたヘッダファイルの内容をコピペして”Extact”ボタンをクリックします。すると各文字が表示されます。表示されたドットの文字は修正することも可能です。file”をクリックすると修正されたファイルが生成されます。生成したヘッダファイル名はファイル内のPROGMEM前の名前を使用します。};ここではCELTICHD5pt7b.hとしてGFXライブラリのFontsフォルダにコピーします。Arduinoコード以下2行を追加するだけで追加したフォントの表示が可能です。2018年11月8日まぁデフォルトのフォントのほうが読みやすいね。このようにフォントの追加も可能です!グラフィック表示ここまでできると次は絵を出してみたくなりますよね。ここでは絵を2枚つくって交互にLEDマトリクスを表示します。絵の作成ミニドット絵メーカーで8✕8ピクセルの絵を2枚作りました。http://neutralx0.net/dot/画像のバイト配列生成image2cppというツールで画像データからバイト配列を生成します。http://javl.github.io/image2cpp/“ファイル選択”で画像を指定します。colorsにチェックを入れます。code”をクリックでバイト配列が生成されます。Arduinoコードimage2cppのサンプルコードoled_example.inoを参考にプログラムしました。myBitmap1、myBitmap2で生成したバイト配列を指定しています。作成した2枚の絵が交互に表示されています。NeoMatrixライブラリを使用して文字とグラフィックの表示を試してみました。便利なツールもあって簡単にカスタマイズできて色々広がりそうです。コメントをキャンセルメールアドレスが公開されることはありません。コメントのみでもOKです。コメントデータの処理方法の詳細はこちらをご覧ください。