LCDモジュール/ACM1602NI-FLW-FBWのスケッチ
(1)Wire LibraryとPICマイコン用のサンプルプログラムを参照して、以下のスケッチを作成しました。
#include <Wire.h>
const char table[]={"This is program for The AMC1602 "};
void setup()
{
Wire.begin(); // I2C初期化
LCD_begin();
byte i;
writeCmd(0x80);//ディスプレイON、CURSOR-OFF、blinking-OFF
delay(5);
for(i=0;i<16;i++)
{
writeData(table[i]);
delay(5);
}
writeCmd(0xC0);//2行目の先頭に移動
delay(5);
for(i=16;i<32;i++)
{
writeData(table[i]);
delay(5);
}
}
void loop() {}
void LCD_begin(void)
{
// LCD初期化
delay(15);
writeCmd(0x01);//クリア ディスプレイ
delay(5);
writeCmd(0x38);//8ビットモード、2ライン、5x8ドット
delay(5);
writeCmd(0x0f);//ディスプレイON、CURSOR-ON、blinking-ON
delay(5);
writeCmd(0x06);//CURSOR移動、スクロールOFF
delay(5);
}
void writeCmd(uint8_t cmd)
{
uint8_t rs_flg;
Wire.beginTransmission(0x50);
rs_flg = 0x00;
Wire.write(rs_flg);
Wire.write(cmd);
Wire.endTransmission();
}
void writeData(uint8_t dat)
{
Wire.beginTransmission(0x50);
Wire.write(0x80);
Wire.write(dat);
Wire.endTransmission();
}