📄 12864yejing.c
字号:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit rd=P2^6;
sbit wr=P2^5;
sbit e=P2^7;
sbit psb=P3^2;
sbit reset=P3^4;
uchar table[]="人体健康20100419";
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void write_com(uchar com)
{
wr=0;//写指令
rd=0;
delay(5);
P0=com;
e=1;
delay(5);
e=0;//以上都是根据指令表写出
delay(5);
}
void write_data(uchar date)//写数据
{
wr=0;
rd=1;
delay(5);
P0=date;
e=1;
delay(5);
e=0;
delay(5);
}
void init()
{
reset=1;
delay(100);
write_com(0x30);
delay(200);
write_com(0x30);
delay(100);
write_com(0x0f);//设置BCD
delay(200);
write_com(0x01);//清除显示
delay(1000);
write_com(0x06);
delay(500); //结束
}
void display1(void)//显示字符
{
uchar i;
uchar a;
a=0x10;
write_com(0x80);//设置地址
delay(50);
for(i=0;i<16;i++)
{
write_data(a);
delay(50);
a++;
}
}
void display2(void)//显示汉字
{
uchar i;
uchar a,b;
a=0xBA;
b=0xC0;
write_com(0x80);//设置地址
for(i=0;i<8;i++)
{
write_data(a);
write_data(b);
delay(50);
b++;
}
}
void display3(void)//直接写人
{
uchar i;
write_com(0x80);//第一行
for(i=0;i<16;i++)
{
write_data(table[i]);
delay(50);
}
}
void main()
{
init();
while(1)
{
// display1();
// display2();
display3();
while(1);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -