1、寫數據和指令需在LCDEN電平上升沿,為實現其應該:在程序執行其他指令時保證LCDEN=0;
在完成執行讀寫數據和指令之后必須立刻拉低LCDEN電平;
保證在執行寫數據指令子函數前LCDEN=0例如:
……
LCDEN=0;
……
void write_dat(char a)
{
char e=1;
while(e)e=read();
RS=1;
RW=0;
P0=a;
LCDEN=1;
for(e=127;e>0;e--);
LCDEN=0;
}
不能只在寫數據指令子函數中執行拉高LCDEN電平之前進行LCDEN電平拉低操作而不進行延時,例如這是錯的:
void write_cmd(char a)
{
char e=1;
while(e)e=read();
LCDEN=0;
RS=0;
RW=0;
P0=a;
LCDEN=1;
for(e=127;e>0;e--);
}
2、若使用畫面滾動滾屏方式,寫入數據前設置的顯存地址是光標停止的位置。例如
寫入"QQ 814921012"
地址設置:write_cmd(0x82);
則屏幕最終顯示為:12_
3、在程序開始進行屏幕初始化時,應該執行清屏命令。在程序過程中也應適時加入清屏命令。
4、滾屏是首尾地址連接起來,形成一個環。執行滾屏命令后,屏幕立刻滾動,執行一次滾動一次。
兩行一起滾動,無法分開。