液晶.txt
来自「89s50控制带字库液晶」· 文本 代码 · 共 77 行
TXT
77 行
/*液晶相关程序*/
void trans_tel(Uchar *a ,Uchar *aa) /*号码数据转化程序,a是存放电话号码的,aa是存放转化后的*/
{ Uchar j;
for(j=0;j<11;j++)
{
aa[j]=a[j]-'0';
aa[j]+=0xb0;
}
}
/*********************液晶写控制字函数****************************/
void Write_command(Uchar CMD)
{
RS=0;
E=1;
P0=CMD;
Delay(T);
E=0;
}
/*********************液晶写数据函数****************************/
void Write_data(Uchar date)
{
RS=1;
E=1;
P0=date;
//E=0;
Delay(T);
E=0;
}
void xianshi_TEL(Uchar *pp)
{ Uchar j;
Write_command(0x80);
for(j=0;j<7;j++)
{
Write_data(0xA3);
Write_data(pp[j]);
}
Write_command(0x90);
for(j=7;j<11;j++)
{
Write_data(0xA3);
Write_data(pp[j]);
}
Write_command(0x80);
}
/*************************液晶初始化********************************/
void InitLcd(void)
{
//RW=0; /*写*/
Delay(T); /*上电后>40ms的延时*/
Write_command(0x30); /*8位方式,基本指令方式 00110000*/
Delay(T); /*>100us的延时*/
Write_command(0x30); /*再次设定:8位方式,基本指令方式 00110000*/
Delay(T); /*>100us的延时*/
Write_command(0x0f); /*液晶整体状态打开,光标ON,光标反白ON 00001111*/
Delay(T); /*>100us的延时*/
Write_command(0x1); /*清DDRAM添满20H,设定DDRAM的位址计数器AC=0 00000001 清屏*/
Delay(T); /*>10ms的延时*/
Write_command(0x6); /*光标右移,DDRAM的位址计数器AC+1 00000110*/
Delay(T);
Write_command(0x98); /*>10ms的延时*/
}
void Xianshi_1(void)
{ Write_data(0xA3); /* 1, */
Write_data(0XB1);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?