光あれスイッチ音楽の前に。単球のLEDの表示もPWMを利用するなどいろいろ楽しめるものですが、少し慣れてくるとにぎやかな、あるいは表現力の高い表示装置が欲しくなってきます。そのような時に皆さんが強い興味を示す表示装置の一つが、ドットマトリックスLEDでしょう。ここではOPT-DML-2Sを対象として、ArduinoでのドットマトリックスLEDの基本的な操作法を紹介します。REDUINO-VALKYRIEやREDUINO-GHOSTでは、このような魅力的な表示装置を面倒なワイヤワークを行うことなくワンタッチで利用できます。OPT-DML-2Sは、8×8ドットのマトリックス(配列)を構成したLEDで、各ドットは赤と緑の2色LEDで構成されており、これらの2色の表示/非表示の組み合わせで、黒、赤、緑、橙の4色を表示できます。文字LCDの4ビットモードで利用する信号線で制御することができ、Arduinoで簡単かつ省ピン構成で制御することが出来ます。Yahoo!ショップredDML:ドットマトリックスLED表示ライブラリREDUINOシリーズでは、redDML:ドットマトリックスLED表示ライブラリを利用することで、ドットマトリックスLEDを簡単に利用することができます。IDEのライブラリに追加してご活用ください。通常は、上記のredDMLライブラリを利用すれば良いのですが、内部的な処理を含めて知りたい方のために、以下に、ドットマトリックスLEDを利用するための基本的な操作ルーチン群を紹介します。ドットマトリックスLEDの操作ルーチンで使用する変数と定数を定義します。定義する主な変数は以下の様になります。ドットマトリックスLEDを操作するI/Oピンを記録する変数ドットマトリックスに表示するデータを記録する配列ドットマトリックスLEDの初期化ルーチンDML_initを示します。初期化ルーチンの処理内容は以下の通りです。引数として与えられたI/Oピンの組み合わせを以降のドットマトリックスLEDの操作のために記録します。ドットマトリックスLEDを操作できる様に、与えられたI/Oピンを出力用に設定します。ドットマトリックスLEDに表示するデータを初期化します。この初期化ルーチンの呼び出し方式では、ドットマトリックスLEDを操作するために割り当てたI/Oピンを自由に指定できるため、引数を変更するだけで、I/Oピンのどのような割当にも対応できます。ドットマトリックスLEDへの出力ルーチンとして基本的な2種類を用意しました。DML_clear:表示データをクリアするルーチンDML_plot:座標と色を指定して点を打つルーチンこれらの出力ルーチンは、ドットマトリックスLEDの各点に対応するメモリ上のデータを操作するだけで、実際にドットマトリックスLEDを操作して点灯したり消灯したり操作は含んでいません。メモリ上で操作された点ごとのデータをドットマトリックスLEDの表示に反映させる操作は、以下のDML_updateが担当しています。DML_updateは、ダイナミック表示方式の中核的な操作を担っており、スケッチの中では、DML_updateを定期的かつ短い周期で呼び出し続ける必要があります。ここまでで、ドットマトリックスLEDを操作する基本的なルーチン群は、出来上がりです。プログラムの利用それでは、ドットマトリックスLEDプログラムを利用したスケッチを記述してみましょう。スケッチの初期化処理を記述するsetup()では、ドットマトリックスLED表示ルーチンを初期化するDML_initの呼び出しを行います。ここではVALKYRIEでの利用を想定して引数を記載しています。コメントでGHOSTでの引数も記載しておきます。スケッチの繰り返し処理を記載するloop()には、ドットマトリックスLEDの表示更新を行うDML_updateの呼び出しを記載し、継続的かつできるだけ定期的に呼び出される様にします。