C言語でPIC18F、カラーグラフィックLCD(M028C9325TP) 接続2

C言語でPIC18F、カラーグラフィックLCD(M028C9325TP) 接続2

LCDモジュールに立てるピンソケットを入手したので、aitendoで入手したカラーグラフィックLCD(M028C9325TP (320 x 240ピクセル)への表示作業の続きをおこないました。

LCDとの結線は、先日決めた下記の通りです。
PIC   LCD
————–
RA0  DB8
RA1  DB9
・   ・
・   ・
RA7  DB15

RC0  RS
RC1  WR
RC2  RD
RC6  CS
RC7  RST

LCDモジュールとPIC18F26K22の電源は3.0V (写真左下の万能基板の回路で12Vから5.0Vを一旦作って、その5.0Vから3.0Vを作っています。)
LCDモジュールのバックライトLEDは常時点灯です(5Vに220Ωで接続。)。
タッチスクリーン関連の入力信号D_CSは、念のため抵抗でプルアップ、D_CLKとD_DINはGNDに固定しておきました。
C言語でPIC18F、カラーグラフィックLCD(M028C9325TP) を接続してグラフィックと文字表示
aitendoのこのLCDのホームページにC言語の参考コードが置いてあるのでそれをベースにして変更をおこないました。 参考コードはSTM32という別のCPU用です。 なので、上記結線に対応する形でPIC18F26K22用に変更しました。

レジスタアクセスの関数は全く使えそうにないので全て(といっても少しですが)作成して置き換えました。

LCDの初期化や文字表示、グラフィック関連の関数はほぼそのまま活用。主な変更点は、
ヘッダファイル関連をXC8用に整理 (main.cの雛形の先頭を参考にILI93xx.cに追加)
ヘッダファイルlcd.hにLCD関連関数のプロトタイプ宣言を追加 (main.cにincludeする)
USE_HORIZONTALのdefineを有効化
u8, u16,u32のtypedef(unsigned char, unsigned short, unsiged long)を追加

最後にテスト用のコードをmain()に書いて、無事にグラフィックと文字表示ができました。 写真のものはLCD_Draw_Circle,  LCD_ShowString関数を使っています。
PIC18F(PIC18F26K22)で、カラーグラフィックLCD(M028C9325TP)にグラフィックと文字表示
このLCDモジュールには、タッチスクリーンとSDカードソケットが付いています。 これらを試すかどうかは未定です。


関連記事
C言語でPIC18F、まずはLチカ (LED点滅
C言語でPIC18F、カラーグラフィックLCD(M028C9325TP) 接続
C言語でPIC18F、カラーグラフィックLCD(M028C9325TP) 接続2
C言語でPIC18F、SDカード読み書き
C言語でPIC18F、SDカードの画像ファイルをLCD(M028C9325TP)に表示

PIC18Fカテゴリの最新記事