GL12864-STATION は基本的で利用範囲の広い128X64ピクセルのグラフィック液晶ディスプレイを装備し、SPIとI2CでArduinoやPICに接続できる文字表示拡張ボードキットです。
GL12864-STATION はArduino の入門者にはもちろん、Arduino の基本機能を一通り習得し、応用に取り組みたい人が手元に置いておくと重宝する文字液晶拡張ボードです。
GL12864-STATIONの組み立て例
GL12864-STATION の特徴を以下に示します。
ネットショップ:
接続端子:
GL12864-STATIONのグラフィック液晶ディスプレイの操作にはU8g2ライブラリ、GPIO MCP23008の操作にはMCP23008ライブラリを使用します。
U8g2ライブラリは、以下のURLからダウンロードできますが、Arduino IDEのライブラリマネージャで簡単にインストールすることができます。
https://github.com/olikraus/u8g2
MCP23008ライブラリに関しては以下のページを参照しダウンロードしてください。
ライブラリの利用例として、タクトスイッチを押すと、対応するLEDが点灯したり、文字液晶ディスプレイに対応する数値が表示されるスケッチを示します。
#include <U8g2lib.h> #include <MCP23008.h> U8G2_ST7920_128X64_1_HW_SPI u8g2(U8G2_R0, /* CS=*/ 10) ; MCP23008 gpio(4) ; // I2Cアドレスは0x24(4) #define BACKLIGHT 7 #define SOUNDER 8 // 接続に合わせて設定 void setup() { u8g2.begin() ; gpio.begin(MCP23008_GL12864) ; // GL12864-STATION用の初期化 gpio.digitalWrite(BACKLIGHT, HIGH) ; // バックライトを点ける } void loop() { u8g2.firstPage(); do { // タクトスイッチ2-5の変化は文字液晶に for (uint8_t i = 0; i < 7; i++) { if (gpio.digitalRead(i)) u8g2.drawRFrame(18 * i, 16, 16, 24, 5); else u8g2.drawRBox(18 * i, 16, 16, 24, 5); } u8g2.setFont(u8g2_font_ncenB10_tr); u8g2.drawStr( 15, 62, "Push Button"); } while ( u8g2.nextPage() ); if (~gpio.readPORT() & 0x7F) tone(SOUNDER, 400) ; else noTone(SOUNDER) ; delay(100) ; }
GL12864-STATIONの回路図
回路図ではタクトスイッチにプルアップ抵抗が配置されていますが、通常利用ではMCP23008の内蔵プルアップ機能を利用するため、キットにはプルアップ抵抗は含まれていません。