|
#define uchar unsigned char
#define uint unsigned int
void write_data(char ddata);
void write_com(char command);
void init();
sbit dula=P2^6;
sbit wela=P2^7;
sbit rw=P2^1;
sbit rs=P2^0;
sbit lcden=P2^2;
//sbit rw=P2^5;
//sbit rs=P2^6;
//sbit lcden=P2^7;
void delay(uint x)//延時
{
uint a,b;
for(a=x;a>0;a--)
for(b=10;b>0;b--);
}
void write_com(uchar com)//寫命令
{
P1=com;
// P0=com;
rs=0;
lcden=0;
delay(10);
lcden=1;
delay(10);
lcden=0;
}
void write_data(uchar date)//寫數據
{
P1=date;
//P0=date;
rs=1;
lcden=0;
delay(10);
lcden=1;
delay(10);
lcden=0;
}
void init()//LCD初始化
{
rw=0;
//dula=0;
//wela=0;
write_com(0x38); //顯示模式設置:16×2顯示,5×7點陣,8位數據接口
delay(20);
write_com(0x0e); //顯示模式設置
delay(20);
write_com(0x06); //顯示模式設置:光標右移,字符不移
delay(20);
write_com(0x01); //清屏幕指令,將以前的顯示內容清除
delay(20);
}
|
|