2016年02月24日 | 公開。 |
この動画では「近日中にライブラリを公開」としていますが、現在では既にMGLCDライブラリを公開しています。
この連載では、人気の小型グラフィックLCDモジュールのAQM1248Aを、Arduinoで制御する方法について、原理的な説明を含めて詳細に紹介しています。
原理的な事には興味がなく、とりあえず画面に思った通りの図形や文字列を表示できればいいと思われる方は、13ページから読み始めてください。MGLCDライブラリというグラフィックLCD用のライブラリを用いて、ハードウェア的な知識を使わずに画面表示を行う方法を説明しています。
また、AQM1248Aを搭載したシールドの組み立て方がAQM1248Aを使ったArduino用シールド2種という記事に載っていますので、そちらも是非ご覧ください。
秋月電子でAQM1248Aという、128X48ピクセルのモノクログラフィックLCDモジュールが販売されています。安価(2016年2月時点で400円)で小型の液晶なので、ちょっとした表示に重宝します。この記事では、このAQM1248AをArduinoで動作させる方法について説明します。
AQM1248Aの写真を写真1~写真3に示します。
AQM1248Aは横34mm×縦20mmという小さなLCDモジュールで、表示部分は横28.1mm×9.1mmしかありませんが、128X48ピクセルの比較的高解像度の表示をします。そのため、小さなスペースに多くの情報を表示するのに向いている液晶だといえます。
例えば8X6ドットのフォントを使うと、21桁×6行もの文字を表示する事ができます。ただし、文字がとても小さくなるので、老眼の人にはきついかも知れません。
またAQM1248Aにはバックライトはないので、暗いところでは画面が見づらくなります。
マイコンとの接続インターフェースはSPIバスと、データ/コマンドの区別のための信号線1本となります。(詳しくは後述) SG12232CやSG12864ASLB-GB などの様にパラレルインターフェースのLCDモジュールに比べ、信号線が少なくなる反面、動作速度を上げにくい欠点もあります。とはいえ、こんな小さな液晶に、高速で情報を表示させることは稀でしょうから、あまり動作速度は気にしなくてもいいかも知れません。
SG12232CやSG12864ASLB-GBはCOB型の液晶モジュールでした。COBというのはChip On Boardの略で、液晶を制御する制御ICが、プリント基板に実装されているタイプの液晶モジュールの事を指します。液晶と制御回路の基板が重なるため、厚みがあり、また面積的にも大型で、価格も高めになりやすいという特徴があります。
一方で、今回取り上げるAQM1248Aは、COG型の液晶モジュールです。COGというのはChip On Glassの略で、一枚のガラス上に液晶と制御ICの両方を形成するタイプの液晶モジュールです。COB型の液晶モジュールに比べ、小型かつ安価に作れるのが特長です。
COG型の液晶モジュールは、通常、FPCケーブル(フレキシブル基板でできたケーブル)で信号線が引き出されており、手作業で基板に実装するのが難しいという、電子工作ファンにはありがたくない性質もあるのですが、その点、AQM1248Aはリード端子で信号線が引き出されており(写真3参照)、手半田で実装しやすいのが良いところです。
ところで、液晶表示には数V~十数Vの、マイコンの電源電圧より高い電圧が必要です。そのため液晶モジュールには、マイコンと同じ電源電圧(3~5V程度)を与えると液晶表示に必要な高電圧を生成する電源回路が、通常内蔵されています。その昇圧回路(電圧を上げる回路)には、通常チャージポンプ回路という、コンデンサとMOSスイッチを組み合わせた回路が使われます。
COB型の液晶モジュールには、チャージポンプ回路用のコンデンサが内蔵されていますが、COG型の液晶モジュールにはコンデンサを外付けする必要があります。これは、チャージポンプ回路用のコンデンサとして通常μF級の容量の大きなコンデンサが使われるため、ガラス基板上に形成するには、形状が大きすぎるからです。
AQM1248Aの場合も、チャージポンプ回路用のコンデンサを何個も外付けする必要があります。(図1参照) 外付けのコンデンサやプルアップ抵抗の数が多い事と、ピンピッチが1.27mmと、ユニバーサル基板に挿入できない寸法であることから、ユニバーサル基板上に試作回路を組む場合は、別売の超小型グラフィックLCD用ピッチ変換基板(2016年2月時点で450円)を利用する方がいいでしょう。このピッチ変換は、ピンピッチを2.54mmに変換するだけでなく、図1の抵抗やコンデンサが全て含まれています。
LCDモジュールとピッチ変換基板は、セットで購入する事もできます。セットの価格は750円(2016年2月時点)と、LCDモジュールとピッチ変換基板を別々に購入するより100円安くなっています。
図中の部品番号(R1やC1など)は、ピッチ変換基板上の表記と対応しています。
電源電圧は、図1に示した通り、2.4~3.6Vの範囲に設定できます。3.3Vで動作するマイコンと接続する場合、電源回路の電圧誤差を考慮しても、余裕を持って2.4~3.6Vに入るので、使いやすいといえます。(COG型のグラフィックLCDモジュールで、電源電圧の上限が3.3Vの物もありますが、この場合、3.3V動作のマイコンと接続すると、設計余裕が取れません)
5V動作のマイコン(例えば8ビットのArduinoのほとんど)と接続する場合には、3V前後の電源回路(ただし、Arduinoの場合は3.3Vの電源回路が内蔵されており、それを使える)と信号電圧の変換回路を設ける必要があります。5Vの電源や信号線をAQM1248Aに直接接続すると、故障してしまいます。
コントラスト(表示するグラフィックの濃さ)を調整するには、SPIバスから調整用のコマンドを発行します。ソフトウェア的にコントラスト調整をするので、調整用の半固定抵抗は必要ありません。
次のページでは、AQM1248Aの信号線について説明します。
商品名 | 122X32モノクログラフィックLCDシールド | |
税抜き小売価格 | 3333円 | |
販売店 | スイッチサイエンス | |
サポートページ | 122X32モノクログラフィックLCDシールドサポートページ |
商品名 | GLCD学習シールドキット | |
税抜き小売価格 | 1410円 | |
販売店 | スイッチサイエンス | |
サポートページ | GLCD学習シールドキットサポートページ |