📄 lcdqd.c
字号:
#include <AT89X51.h>
#define Data P0
sbit RS=P1^7;
sbit RW=P1^6;
sbit E=P2^6;
void delay(unsigned int k)
{
unsigned int i,j;
for(i=k;i>0;i--)
for(j=50;j>0;j--) ;
}
unsigned char ReadStatus(void)
{
Data = 0xFF;
RS = 0;
RW = 1;
E = 1;
while (Data & 0x80);
return(Data);
delay(2);
E = 0;
}
void wr_com(unsigned char com)
{
ReadStatus();
Data=com;
RS=0;
RW=0;
E=1;
delay(2);
E = 0;
}
void wr_dat(unsigned char dat)
{
ReadStatus();
Data = dat;
RS = 1;
RW = 0;
E = 1;
delay(2);
E = 0;
}
void LCD_Init(void)
{
Data =0x0;
wr_com(0x38);
delay(5);
wr_com(0x38);
delay(5);
wr_com(0x38);
delay(5);
wr_com(0x38);
wr_com(0x08);
wr_com(0x01);
wr_com(0x06);
wr_com(0x0C);
}
void GotoXY(unsigned char x,unsigned char y)
{
x&=0x01;
y&=0x0F;
y|=(x==0)?0x80:0xC0;
wr_com(y);
do{
y=ReadStatus();
}while((y&0x80)==0x80);
}
void disp(unsigned char x,unsigned char y,unsigned char _char)
{
GotoXY(x,y);
wr_dat(_char);
}
void main(void)
{ LCD_Init();
while(1)
{disp(0,0,'6');
disp(1,7,'8');}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -