商品名 | 122X32モノクログラフィックLCDシールド | |
税抜き小売価格 | 3333円 | |
販売店 | スイッチサイエンス |
2015年06月09日 | 元々1ページだったサポートページを7ページに分割。 |
2016年01月13日 | 7ページ構成から8ページ構成に変更。 |
注:Arduino Pro 328 5V 16MHzをお使いの方は、ハードウェアシリアルを使えませんから、次の章にお進みください。
次に示すスケッチで、ハードウェアシリアルを用いて画面に"Hello, world!"と表示できます。
#include <mglcd.h> // この行はMGLCDライブラリを呼び出すために必要
mglcd_serial MGLCD(&Serial,500000); // Leonardoユーザーは&Serialを&Serial1に書き換える必要あり
void setup()
{
while(MGLCD.Reset()); // LCDの初期化が終わるまで待つ
MGLCD.print("Hello, world!");
}
void loop()
{
}
最初の#include <mglcd.h>は、MGLCDライブラリを使う場合に必ず書かなければならない行です。グラフィックLCDシールドもMDLCDライブラリを使いますから、この行をスケッチの最初に書いてください。
次のmglcd_serial MGLCD(&Serial,500000);は、ハードウェアシリアルを使う場合に必要になる行です。Arduino Leonardoをお使いの方は、&Serialを&Serial1に書き換えてください。Arduino Leonardo以外のArduinoでは、0番と1番のピンに割当てられているハードウェアシリアルの変数名がSerialであるのに対して、Arduino LeonardoではSerial1となっているからです。(Arduino LeonardoではSerialはパソコンとの通信に使う) もしArduino Leonardoでも、それ以外のArduinoでも動作するようにスケッチを書きたければ、次の様にしてください。
#ifdef USBCON // Leonardo
mglcd_serial MGLCD(&Serial1,500000);
#else // Not Leonardo
mglcd_serial MGLCD(&Serial,500000);
#endif
こうすることで、Arduino Leonardoの場合はmglcd_serial MGLCD(&Serial1,500000);が、他のArduinoの場合はmglcd_serial MGLCD(&Serial,500000);がコンパイルに使われます。
&Serealの後の500000という数字はシリアル通信の速度を表わしています。この場合は500000bps(500kbps)ですが、使用できる通信速度は、300bps、600bps、1200bps、2400bps、4800bps、9600bps、14400bps、19200bps、28800bps、38400bps、57600bps、115200bps、250000bps、そして500000bpsです。
mglcd_serial型の変数(この場合はMGLCD)を宣言する事で、その変数を用いてLCDにアクセス(表示や情報取得など)をします。
while(MGLCD.Reset());は、LCDの初期化をし、その初期化が終わるのを待つために必要です。他のMGLCDライブラリの関数を呼び出す前に実行してください。
MGLCD.print("Hello, World!");でHello, World!の文字列をLCD画面に表示します。
それでは、このスケッチを実際に実行しましょう。次の手順に従って実行してください。
注:上の例ではArduino Unoを選択していますが、ご自分のお使いのArduinoに合わせて選択してください。
注:上の例ではCOM15を選択していますが、ご自分の環境に応じたCOM番号を選択してください。
右矢印ボタンをクリックして、スケッチをArduinoに書き込みます。
しばらくすると、次の様なメッセージが出て、スケッチの書き込みが終了します。
以上の手順でスケッチを実行すると、次の様に画面にHello, world!が表示されるはずです。
スケッチを書き換えて、再び実行する時は、Arduino Leonardoを使っている場合、単に右矢印のアイコンをクリックしてスケッチを書き込む(手順6を実行する)だけでOKです。
Arduino Leonardo以外のArduinoをお使いの場合は、SW5をEXT側に切り替えた後にスケッチを書き込み、SW5をINT側に戻すという操作が必要になります。Arduino Leonardo以外のArduinoの場合、一つのUSARTをシールドとのシリアル通信と、パソコンとのシリアル通信に共用しています。そのため、パソコンからスケッチを書き込む場合、シールドをつないだままでは混線してしまい、うまくスケッチがうまく書き込めません。ハードウェアシリアルを使うシールドを利用する時は、スケッチの書き込み時には一旦シールドを取り外すというのが原則なのですが、グラフィックLCDシールドの場合は、SW5をEXT側に切り替えるだけで、Arduinoとは電気的に切り離されます。
次のページでは、ソフトウェアシリアルでグラフィックLCDシールドを使う方法を説明します。
商品名 | 128×64モノクログラフィックLCDシールド | |
税抜き小売価格 | 3600円 | |
販売店 | スイッチサイエンス | |
サポートページ | 128×64モノクログラフィックLCDシールドサポートページ |
商品名 | GLCD学習シールドキット | |
税抜き小売価格 | 1410円 | |
販売店 | スイッチサイエンス | |
サポートページ | GLCD学習シールドキットサポートページ |
商品名 | S12232ZA | |
税抜き小売価格 | 400円 | |
販売店 | スイッチサイエンス | |
サポートページ | S12232ZAサポートページ |