Lesson 06
【LED Matrix機能確認2】
こにんちは、管理人のomoroyaです。
「Arduino UNO R4 Minima」「Arduino UNO R4 WIFI」で遊ぶ入門編2。
電子部品と組み合わせて遊ぶ前に、本Lesson06では入門編2のLesson05同様に、
「Arduino UNO R4 WIFI」に搭載された新機能を確認していきます。
本LessonではLesson05の続きとなる「LED Matrix機能について」。
「Arduino UNO R4 Minima」にはなく、「Arduino UNO R4 WIFI」の独自機能です。
この機能を使うことにより、外部にLED表示部を設けることなく「Arduino UNO R4 WIFI」のみで自己完結できます。
Lesson05では、2次元配列と32bit整数の配列を利用することで「LED Matrix機能について」理解しました。
本Lessonでは、アニメーション表示を理解して遊んでみます。
Arduino入門編2では主に「Arduino UNO R4 Minima」「Arduino UNO R4 WIFI」を使った解説をしていきます。
R3と異なり、まだ安価な互換品が出ていません(2024年7月現在)ので正規品で遊んでいきます。
センサーは各種センサーがそろったキットがおすすめ。
はじめに
本Lessonで機能確認のため、使用するものは「Arduino UNO R4 WIFI」のみ。
簡単に遊べます。
Lesson 06 目標
本Lessonの目標は以下です。
2.LED Matrixにアニメーション表示させるスケッチを描いてみる
3.色々描いて遊んでみましょう!!
いつものように、遊ぶことが重要です。
準備
ではLessonの準備に取り掛かりましょう。
使用するものはLesson05と同じく「Arduino UNO R4 WIFI」のみ。
必要なもの
- USB接続用のPC(IDE統合環境がインストールされたPC)
→管理人が勝手に比較したBTOメーカーを紹介しています。 - Arduino UNO R4(WiFi)
- PCとUNOを接続するUSBケーブル
本Lessonでは、UNO本体のみですが電子工作に必要なものはそろえておきましょう!!
Jumper wire、抵抗は今後も頻繁に利用します。
Jumper wireはできれば、「オス-メス オス-オス メス –メス」の3種類を揃えておくことをお勧めします。
短めが使いやすい場合も。
抵抗も単品で揃えるよりはセットをおすすめします。
抵抗、LEDなどを個別でセット品を購入しても、そんなに使わない!
という方は、「電子工作基本部品セット」が使い勝手が良い。
使用部品説明
使用するものは「Arduino UNO R4 WIFI」のみのため割愛。
実践 回路作成
最初に回路図を確認してください。
Lesson05と同じとなります。
次に、回路図に合わせて部品を接続します。
最後にコードを書いて、「LED Matrix機能のアニメーション表示」を確認していきましょう。
「Arduino UNO R4 WIFI」のピン配置を確認したい方は入門編2のLesson02を参照してください。
回路図
「Arduino UNO R4 WIFI」のみ使用。
回路図がこちら。
Minimaのみ使用のため、結線はありません。
こちらがブレッドボード図。
Minimaのみ使用のため、結線はありません。
回路図は「fritzing」を利用しています。「fritzing」の使い方は下記を参照してください。
接続
下図に示すように、用意した部品を使用して接続しましょう。
使用するものは「Arduino UNO R4 WIFI」のみ。
結線不要です!!
コードの書き込み
接続が終わったら、USBケーブルを使用してUNOにプログラムを書き込んで行きましょう。
コードを書き終えたら、いつでも利用できるように「ファイル」⇒「名前を付けて保存」で保存しておきましょう。
コマンド説明
Lesson05で記載したコマンドを再掲しておきます。
コマンド | 内容 |
---|---|
ArduinoLEDMatrix() | LED Matrixを制御するためのメインクラス LED Matrixのオブジェクトを生成 ライブラリのメソッドにアクセスするために利用 例 ArduinoLEDMatrix matrix; 以下のコマンド説明には、ここで指定したmatrixを前提に記載 |
autoscroll(int32_t interval_ms) | 表示される各フレームの時間をミリ秒単位で設定 |
begin() | LED マトリックスを起動 例 matrix.begin(); |
next() | シーケンス内の次のフレームに手動で移動 例 matrix.next(); |
clear() | 描画をクリア 例 matrix.clear(); |
loadFrame(const uint32_t buffer[3]) | シーケンスに含まれない新しい単一フレームを読み込み 例 matrix.loadFrame(xxxx); |
renderBitmap(bitmap, rows, columns) | 指定されたビットマップを描画 例 matrix.renderBitmap(bitmap, 8, 12) //8×12のビットマップを描画 bitmap:描画するビットマップデータを含む配列 例えば、例で上述したframe[8][12]のframeを指定 |
renderFrame(uint8_t frameNumber) | 指定されたフレーム番号に基づいて特定のフレームを描画 例 matrix.renderFrame(1); |
loadSequence(const uint32_t frames[][4]) | アニメーション シーケンスをバッファーに読み込むが表示はしない 例 matrix.loadSequence(animation); |
play(bool loop = false) | レームのシーケンスの再生を開始 無期限にループするか、1 回再生するかを選択 例 matrix.play(true); |
sequenceDone() | シーケンスの再生が終了したかどうかを確認 |
全て記載していません。
他にもコマンドがあります!!
アニメーション部分 サンプルコード
使用するライブラリは「Arduino_LED_Matrix.h」のみ。
Lesson05で解説したように・・・
アニメーション表示用のコード部分については、公式のホームページに「Matrix Editor」があるため簡単に作れます。
本記事では、2×2の四角形が動く動作を作成します。
まずは、下記のように一コマづつ図を描きます。
※書き終えたら▶をクリックすることで動きを確認できます。
次に、右上の</>をクリックしてダウンロードします。
名前を変えずに、保存した場合は「animation.h」という名前でダウンロードされます。
ダウンロードしたものがこちら。
一旦ダウンロードしたファイルは適当な場所へおいておいてください。
後で、移動します。
下記、animation.hというファイルをスケッチ内でincludeすることで表示させます。
const uint32_t animation[][4] = { { 0x0, 0x0, 0xc00c00, 66 }, { 0x0, 0x3003, 0x0, 66 }, { 0xc, 0xc00000, 0x0, 66 }, { 0x3003000, 0x0, 0x0, 66 }, { 0x0, 0xc00c0000, 0x0, 66 }, { 0x0, 0x30, 0x3000000, 66 }, { 0x0, 0x0, 0xc00c, 66 }, { 0x0, 0x300, 0x30000000, 66 }, { 0xc, 0xc00000, 0x0, 66 }, { 0x30030000, 0x0, 0x0, 66 } };
アニメーション表示 本体コード
下記がアニメーションを表示させるための本体コード。
同じ場所に保存すると、xxxx.inoとは別にanimation.hというタブがIDEに現れます!
//入門編2 Lesson 06 サンプルスケッチ //LED Matrix機能確認 Animation編 //https://omoroya.com/ #include <Arduino_LED_Matrix.h> #include "animation.h" //作成したanimation.hの取り込み ArduinoLEDMatrix matrix; //LED Matrixのオブジェクトを生成 void setup() { matrix.loadSequence(animation); //アニメーション シーケンスをバッファーに読み込む matrix.begin(); //LED マトリックスを起動 matrix.play(true); // シーケンスの再生 true:無現ループ } void loop() { }
アニメーション表示 動作確認
では、さっそく動作を確認していきます。
2×2の四角系が動いている様子がわかります。
pic.twitter.com/q0PNtZDlWcArduino 入門2 Lesson 06 【LED Matrix機能確認2】「Arduino UNO R4 Minima」「Arduino UNO R4 WIFI」で遊ぶ入門編2。本Lesson06では「Arduino UNO R4 WIFI」に搭載された機能を確認。前Lessonに続き、本Lessonではアニメー…— おもろや (@omoroya777) October 6, 2024
まとめ
本Lessonは、以下を目標としました。
2.LED Matrixにアニメーション表示させるスケッチを描いてみる
3.色々描いて遊んでみましょう!!
本Lessonではアニメーション表示を理解して遊んでみました。
色んなアニメーションを作って遊んでみましょう!!
入門編2 Lesson 06 【LED Matrix機能確認2】 はここまで。
疑問点、質問などありましたら気軽にコメントください。
次回、Lesson 07は【LED Matrix機能確認3】です。
文字表示を解説したいと考えています。
最後に
疑問点、質問などありましたら気軽にコメントください。
この電子部品の解説をしてほしい!などなどなんでもOKです。
リンク切れ、間違いなどあればコメントいただけると助かります。
Arduino入門編、番外編、お役立ち情報などなどサイトマップで記事一覧をぜひご確認ください。
Arduino入門編、Arduino入門編2で使用しているUNOはAmazonにて購入可能です。
Arduino入門編では互換品を使用。
Arduinoはオープンソース。
複製して販売するのもライセンス的に問題なし。
そのため互換品の品質も悪くなく、それでいて値段は安いです。
正規品本体の値段程度で豊富な部品が多数ついています。
学習用、遊び用、お試し用には安価な互換品がおすすめです。
ELEGOO UNO キット レベルアップ チュートリアル付 uno mega2560 r3 nanoと互換 Arduino用
上記のものでも十分に多数の部品が入っていますが、最初からもっと多数の部品が入っているこちらもお勧めです。
Arduino入門編2では「Arduino UNO R4 Minima」「Arduino UNO R4 WIFI」にて遊ぶため今のところは正規品を使用。(まだ互換品が・・・ほぼない)
Amazonでお得に買う方法
Amazonでお得に購入するならAmazon Mastercard、Amazonギフト券がおすすめです。
時期により異なりますが、様々なキャンペーンを実施しています。
\Amazonギフト券/
Amazonギフトカード キャンペーン
\Amazon Mastercard お申込み/
Amazon Mastercard 申し込み
いずれの場合もプライム会員である方がお得!!
\Amazon Prime 30日間の無料会員を試す/
無料会員登録
コメント