📄 shiyan1.c
字号:
#include<AT89x51.H>
#define uchar unsigned char
#define begin 1
sbit RS=P0^2;
sbit RW=P0^3;
sbit E=P0^4;
void init(void);
void fbusy(void);
void wc51r(uchar);
void wc51ddr(uchar);
void fun(uchar *s);
void delay(uchar);
void display();
uchar i,a,b,c,t,n;
main()
{
TMOD=0x01;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
EA=1;
ET0=1;
TR0=1;
init();
wc51r(0x86+begin);
delay(2);
fun(":");
delay(2);
wc51r(0x89+begin);
delay(2);
fun(":");
delay(2);
display();
wc51r(0x80);
fun("LOVE");
delay(2);
while(1)
{
display();
delay(20);
}
}
void fbusy()
{
E=0;
RS=0;
RW=1;
E=1;
while(P2&0x80);
E=0;
}
void init()
{
wc51r(0x01);
wc51r(0x38);
wc51r(0x06);
wc51r(0x0c);
}
void wc51r(uchar j)
{
fbusy();
E=0;
RS=0;
RW=0;
E=1;
P2=j;
E=0;
delay(2);
}
void wc51ddr(uchar j)
{
fbusy();
E=0;
RS=1;
RW=0;
E=1;
P2=j;
E=0;
delay(2);
}
void fun(uchar *s)
{
while(*s>0)
{
wc51ddr(*s);
s++;
}
}
void display()
{
wc51r(0x84+begin);
delay(2);
wc51ddr(c/10+0x30);
delay(2);
wc51ddr(c%10+0x30);
delay(2);
wc51r(0x87+begin);
delay(2);
wc51ddr(b/10+0x30);
delay(2);
wc51ddr(b%10+0x30);
delay(2);
wc51r(0x8a+begin);
delay(2);
wc51ddr(a/10+0x30);
delay(2);
wc51ddr(a%10+0x30);
}
void delay(uchar t)
{
for(i=0;i<250;i++)
for(;t>0;t--);
}
void timer() interrupt 1
{
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
n++;
if(n==20)
{
n=0;
a++;
if(a==60)
{
a=0;
b++;
if(b==60)
{
b=0;
c++;
if(c==24)
c=0;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -