概要
Arduino UNO R4 WiFi LEDマトリックス用美咲フォントライブラリ UNO R4 WiFi 概要Arduino UNO R4 WiFiを入手しました。このArduinoには、8x12のLEDマトリックスが付属しています。このLEDマトリックスに、美咲フォントを表示するためのライブラリを作成しました。
美咲フォントをArduinoで利用するためのライブラリである、Arduino-misakiUTF16で取得したビットマップを、LEDマトリックスに表示します。
i 当初公開していたバージョンから変更しています(2024-07-28/2023-12-31)。 garretlab_LEDMatrixライブラリgarretlab_ArduinoGraphicsとgarretlab_LEDMatrixというライブラリを作成しました。利用するには、以下のライブラリが必要です。
- Arduino_LED_Matrixライブラリ
- Arduino UNO R4 WiFiに付属しているLEDマトリックスを制御するためのライブラリです。
- ArduinoGraphicsライブラリ
- LEDマトリックスライブラリと併用すると、LEDマトリックスに、テキストを表示したり、スクロールしたりすることができます。
- ドキュメントを日本語に翻訳しました。
- Arduino-misakiUTF16
- Arduino用の美咲フォントドライバライブラリです。
今回作成したライブラリでは、Arduino-misakiUTF16ライブラリで取得したビットマップデータ(8ビットx8)を、ArduinoLEDMatrixの機能を利用して、表示しているだけです。
当初は、美咲フォントを表示するプログラムを、Arduino_LED_Matrixライブラリに追加したような形にしていました。しかし、Arduino_LED_MatrixライブラリとArduinoGrphicsライブラリの役割分担と同じように、美咲フォントをビットマップ化する部分は、garretlab_ArduinoGraphicsライブラリで実現し、ビットマップを表示する部分をgarretlab_LEDMatrixライブラリとして実現することで、他のデバイスでも美咲フォントを表示できるようにしてみました。
日本語表示以外の関数は、Arduino_LED_MatrixライブラリやArduinoGraphicsライブラリの機能をそのまま使えるはずです。
関数 説明 garretlab_LEDMatrix() コンストラクタ。 int begin() LEDマトリックスの利用を開始する。 void textFont(const Font& which) 使用するフォントを設定する。美咲フォントは、Font_Misakiです。 void beginText(int x = 0, y = 0) テキストの先頭文字の表示位置を指定する。x=0, y=0が、LEDマトリックスの一番左上です。負数を指定することもできます。省略時は0です。 int print()/println() LEDマトリックスに表示する文字を設定します。美咲フォントを表示するときは、println()を使っても、CR/LFは取り除きます。 void endText(int scrollDirection = NO_SCROLL) LEDマトリックスにテキストを表示します。スクロールする方向は、NO_SCROLL(スクロールなし)、SCROLL_LEFT(左スクロール)、SCROLL_RIGHT(右スクロール)、SCROLL_UP(上スクロール)、SCROLL_DOWN(下スクロール)を選択することができます。省略時はNO_SCROLLです。 void endDraw() LEDマトリックスに表示します。 void textScrollSpeed(unsigned long scrollSpeed) テキストをスクロースするスピード(1ドットずれるまでに要する時間)を、ミリ秒単位で設定します。デフォルト値として150msを設定しています。具体的な使い方は、ライブラリに付属のスケッチ例を参照してください。
コードhttps://github.com/garretlab/garretlab_LEDMatrix
バージョン Hardware:Arduino UNO R4 WiFiSoftware:Arduino IDE 2.2.1/Arduino UNO R4 Boards 1.0.5 最終更新日August 18, 2024