2015年06月03日 | MGLCDライブラリVer.0.34Aのリリースにあわせて、記述を変更。 |
MGLCDライブラリとは、今回使用するSG12864ASLB-GB以外にも、秋月電子で売っているSG12232Cやaitendoで販売されているS12232ZA、そして、私の開発した122X32モノクログラフィックLCDシールドなど、色々なモノクログラフィックLCDモジュールをArduinoで簡単に動作させるためのライブラリです。7X5ドットの英数かなフォントを搭載しており、文字列が簡単に表示できること、簡単に直線や円などのグラフィックを描けること、LCDの種類が変わっても、ソースの変更はほんの一部でいい事などの特長があります。
まずは、MGLCDライブラリをインストールしましょう。なおMGLCCライブラリの対応しているArduin IDEは1.0.1~1.6.Xです。MGLCDライブラリのこの原稿を書いている段階での最新バージョンは0.34Aです。下記のリンクから、MGLCD Ver 0.34Aをダウンロードしてください。
Arduino IDEが1.0.1~1.0.4の方は次の方法でMGLCDライブラリインストールしてください。
ダウンロードしたZIPファイルを展開すると、MGLCDという名前のフォルダができますから、それをWindows環境の場合は"マイドキュメント\Arduino\libraries"フォルダの中に移動(またはコピー)してください。(移動やコピーはArduino IDEが起動していない状態で行ってください) もし"マイドキュメント\Arduino"フォルダの中に"libraries"というフォルダがなければ、そのフォルダを作成した後に、MGLCDフォルダを移動/コピーしてください。
当方にMacの環境がないので未確認ですが、Arduino公式サイト(arduino.cc)に載っている"Installing Additional Arduino Libraries"によると、Mac環境の場合は"Documents/Arduino/libraries"フォルダ(日本語環境なら"書類/Arduino/libraries"フォルダか?)の中にMGLCDフォルダを移動あるいはコピーすればいいようです。
Arduino IDEが1.0.5の方は、前述の方法でMGLCDライブラリをインストールすることもできますが、これから説明する方法を使うと、ZIPファイルを解凍する必要がなく、簡便です。
まず、Arduino IDE 1.0.5を起動し、スケッチ→ライブラリを使用→Add Library...メニューを選んでください。
そうすると、インストールするライブラリのZIPファイルを選択するダイアログボックスが開きますから、MGLCD_034A.zipを選択して、開くボタンをクリックすると、ライブラリがインストールできます。
注:上の図ではMGLCD_034.zipを選択していますが、MGLCD_034A.zipを選択してください。
ライブラリがインストールされると、以下のようなメッセージが出ます。
1ページで紹介した回路図の回路を、MGLCDライブラリに付属のデモスケッチで動かしてみましょう。次の手順に従って、デモスケッチを動かしてください。
注:Arduino Pro 328 5V 16MHzやOnBoardを使う場合は、FT232RL搭載小型USB-シリアルアダプタ 5V(FTDI BASIC)などのUSBシリアル変換器を用いてArduinoをUSBケーブルに接続します。
注:下の例ではArduino Unoを選択していますが、ご自分のお使いのArduinoを選択してください。
注:下の例ではCOM28を選択していますが、ご自分の環境に応じたCOM番号を選択してください。
しばらくすると、次の様なメッセージが出て、スケッチの書き込みが終了します。
そうすると、次の写真や動画の様に、demoスケッチが実行されます。
MGLCDライブラリは、Arduino Unoおよび同様のアーキテクチャを持ったArduino(Arduino Pro 5V16MHzなど)で動作させた場合に、最高の速度で動作するようにチューニングされています。各Arduinoで描画速度にどの程度の差が出るかをご紹介します。
描画速度の計測用のスケッチが、MGLCDライブラリに付属しています。ファイル→スケッチブックの例→MGLCD→mglcd_SG12864→SpeedTestメニューを選ぶと、そのスケッチが開きます。demoスケッチと同様の手順で実行してください。
色々なArduinoで実行した結果を次の表にまとめます。FPS(Frames Per Second)の値は、大きいほど描画速度が速いことを示しています。Arduino Mega2560やArduino Leonardoを使うと、描画速度が約1/4になってしまうことが分かります。
Arduinoの種類 | 描画速度 [FPS] |
---|---|
Arduino Uno | 22.22 |
Arduino Mega2560 | 5.65 |
Arduino Leonardo | 5.63 |
Arduino Pro 5V 16MHz | 22.27 |
OnBoard(Arduino Uno互換モード) | 22.27 |
以下に各ArduinoでSpeedTestスケッチを動作させた場合の写真を掲載します。なお、OneBoard以外の写真では、試験時間を短縮するためにヘッダシールドを用いています。
次のページでは、スケッチの作り方について簡単な説明をします。
商品名 | Arduino Uno用ブートローダスケッチライタシールドキット | |
税抜き小売価格 | 1440円 | |
販売店 | スイッチサイエンス | |
サポートページ | Arduino Uno用ブートローダライタシールドキットサポートページ |
商品名 | Arduino用ブートローダ/スケッチライタキット | |
税抜き小売価格 | 3000円 | |
販売店 | スイッチサイエンス | |
サポートページ | Arduino用ブートローダ/スケッチライタキットサポートページ |