サンプルプログラムを表示しているところ。 カタカナ表示もできます。 |
|
購入したI2CのLCDには小さいピンヘッダが付属していますが、ブレッドボードに刺さりにくいので丸ピンIC連結ソケットを替りに用います。 画像は下です。 | |
丸ピンIC連結ソケット 良く見ると、細い方と太い方があるのが分かります。 細い方をLCDの穴に入れて半田付けします。 | |
半田付けした裏側 | |
半田付けした表側。 一番左が一番ピンでリセットです。 この端子は普通Vddに繋ぐので、5番ピンに赤のコードで繋いであります。 | |
H8のCPUボードと繋げます。 CN10-26(GND)------>GND CN10-25(3.3V)----->Vdd CN10-14(SDA)------>SDA(橙) CN10-13(SCL)------>SCL(白) SDAとSCLは2.2kΩでVddにプルアップします。 |
LCD表示 | |
---|---|
#include "common.h" #include "primary.h" #include "interruptClass.h" BYTE getSW(); //スイッチ読み込み void startInit(char* str); void main() { startInit("\n*** LCD表示テスト ***\n"); I2CLCD display; display.write("LCD グラフィックテスト"); while(true); } void startInit(char* str) { init(); LED(1); // 緑 while(!getSW() ); LED(0); printf(str); } |
1 基本共通ヘッダ 2 IO関係ヘッダ 3 割り込みクラスのヘッダ 4 I2Cは割り込みを用いている 5 6 7 8 9 10 11 I2CLCDオブジェクトを作る。 12 半角カナが表示できる。 13 14 15 16 17 18 システムの初期化 19 緑のLEDを点ける 20 プッシュスイッチが押されるまで待つ 21 LEDを消灯 22 パソコン側に表示させる 23 |
上級 |
---|
void write(unsigned char ch); // 1文字表示 void write(char* ch); // 文字列表示 void writeInt(int x); // 整数の表示 void write(int x, int column, char zeroPad); // 書式指定して整数の表示 void home(); // カーソルを先頭に持っていく void clear(); // 画面クリア |
レベルメーターグラフィック表示 | |
---|---|
void main() { startInit("\n*** LCDグラフィックテスト ***\n"); I2CLCD display; display.setCG(0, (char*)0); display.clear(); for(int i=0; i<8; i++) display.write((char)i); for(int i=7; i>=0; i--) display.write((char)i); while(true); } |
1 2 3 4 I2CLCDオブジェクトを作る。 5 グラフィックモードにする。 6 画面クリア 7 だんだん大きくする 8 だんだん小さくする 9 10 |
ピン配置と半田付け | |
---|---|
ミニI2C液晶モジュール | |
---|---|
void main() { startInit("\n*** LCDmini表示テスト ***\n"); I2CLCD display(16); display.write("LCD miniM.Mizuno"); while(true); } |
1 2 3 4 コンストラクタの引数に全表示文字数を入れる。 5 この場合は8x2行で16を引数に入れている。 6 デフォールトは32である。 7 |