📄 driver.bak
字号:
#include<reg52.h>
#include<img.h>
#define uchar unsigned char
#define uint unsigned int
// sbit RST=P2^4;
sbit PSB=P2^3;
sbit RS=P2^0;
sbit RW=P2^1;
sbit EN=P2^2;
void delay(uint t)
{
uint i;
for(i=0;i<t;i++);
}
void busy()
{
uchar flag;
RS=0;
RW=1;
flag=P1;
while((bit)flag==1);
}
void write_command(uchar p)
{
P1=p;
RS=0;
RW=0;
EN=1;
delay(200);
EN=0;
}
void write_data(uchar p)
{
P1=p;
RS=1;
RW=0;
EN=1;
delay(200);
EN=0;
}
void clr_line(uchar line)
{
uchar i;
if(line==1)
write_command(0x80);
else if(line==2)
write_command(0x90);
else if(line==3)
write_command(0x88);
else if(line==4)
write_command(0x98);
for(i=0;i<16;i++)
{
write_data(' ');
}
}
void hz_disp(uchar line,uchar add,uchar *p)
{
clr_line(line);
write_command(add);
while(*p!='/')
{
write_data(*(p++));
}
}
void init_lcd()
{
PSB=1;
EN=0;
write_command(0x0c);
}
void init_msg()
{
uchar i,j;
write_command(0x34);
for(i=0;i<32;i++)
{
for(j=0;j<16;j++)
{
if(j<8)
{
write_command(0x80+j);
write_command(0x80+i);
write_data(img[i*16+j*2]);
write_data(img[i*16+j*2+1]);
}
else
{
write_command(0x80+j);
write_command(0x80+i);
write_data(img[16*32+i*16+(j-8)*2]);
write_data(img[16*32+i*16+(j-8)*2+1]);
}
}
}
write_command(0x36);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -