液晶表示プログラムの説明

<はじめに>

 このプログラムは秋月で1000円くらいで売ってる
 lcdを秋月のH8マザーボードにつけて使うときの
 液晶の表示プログラムです。ですが、マザーボードで
 使わなくても、データバスを4ビットにして使う場合
 はポートの部分を自分の仕様に合うように変更するだ
 けで、使用できます。

<ファイル構成>

 lcd.c ソースファイル
 lcd.h ヘッダファイル
 lcd.txt 説明ファイル(このファイル)

<使い方>

 まず、自分のハードウエアに合わせてポートを変更してください。
 (マザーボードで使う場合は変更不要です。)
 具体的には、lcd.c の初めに記述してあるマクロ定義のところを変更して、
 init_lcd() の初めに記述してあるポートの入出力の方向を設定する部分

  /* P3を出力に設定 */
  P3.DDR |= 0x3F;

 を変更してください。
 それ以外は変更しなくても大丈夫です。
 あとは、コンパイルして、オブジェクトファイルをリンカのサブコマンド
 ファイルに記述して、読み込むようにすればOKです。
 下に説明するような関数を作ってみました。大概のことは不便なくできると
 思います。

<関数の説明>

 1.LCDの初期化

   void init_lcd(void);

  まず、プログラムの一番最初にこの関数を呼び出してください。
  LCDの初期化を行います。初期化直後はカーソルはホーム
  ポジションに有ります。

 2.LCDへの文字の書込み(行指定あり)

   void lcd_write(int line, char *buff);
     line:行数
     buff:文字列の先頭の文字へのポインタ

  たとえば、1行目に"LCD ON"と表示する場合

   lcd_write(1,"LCD ON");

  と書いてください。

 3.LCDへの(カーソル位置からの)書込み

   void lcd_print(char *buff);
     buff:文字列の先頭の文字へのポインタ

  たとえば、カーソル位置に"LCD ON"と表示する場合

   lcd_print("LCD ON");

  と書いてください。

 4.LCDの画面消去

   void lcd_clear(int line);
     line:消去する対象を選択
     0:1行目と2行目を消去してホームポジションにカーソルを移動。
     1:1行目を消去してホームポジションにカーソルを移動。
     2:2行目を消去して2行目の先頭にカーソルを移動。

  たとえば、1行目を消去する場合

   lcd_clear(1);

  と書いてください。

 5.カーソルの行頭への移動

   void lcd_home(int line);
     line:行数

  たとえば、2行目の先頭にカーソルを持っていく時は

   lcd_home(2);

  と書いてください。

 6.カーソルの移動

   void lcd_cursor(int line, int x);
     line:行数
     x:左から何文字目か

  たとえば、1行目のひだりから3文字めにカーソルを持っていく場合

   lcd_cursor(1,3);

  と書いてください。

<終わりに>

 このプログラムは自由に変更して自由に配布してもらっていいです。
 もし、バグが見つかったら教えてほしいです。
 バスの幅を8ビットにしたやつもそのうち暇があったら書くかもしれません。

 京大機械研究会 福間 剛士
  e-mail:t-fukuma@ma2.seikyou.ne.jp


データライブラリへもどる