‘/’改变“时”位
‘*’改变“分”位
‘—’改变“秒”位
附带有即时温度显示
#include
#define uchar unsigned char
#define uint unsigned int
uchar table2[]="2013/03/06 WEN";
uchar table[]="0123456789";
uchar table1[]="12:00:00";
sbit lcdrs=P1^0;
sbit lcdrw=P1^1;
sbit lcden=P1^2;
uint v,fen0=0,fen1=0,shi0=0,shi1=0,n,m,k=0,water,n1,m1;
uchar num;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=100;y>0;y--);
}
void wcom(uchar com)
{
lcdrs=0;
P3=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void wdat(uchar dat)
{
lcdrs=1;
P3=dat;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void init()
{
lcden=0;
wcom(0x38);
wcom(0x0c);
//
wcom(0x06);
wcom(0x01);
}
void main()
{
water=P0;
lcdrw=0;
init();
n=0;
m=0;
// P1=0xff;
wcom(0x84);
for(n=0;n<7;n++)
{
wdat(table1[n]);
}
wcom(0xc0);
for(m1=16;m1>0;m1--)
{
wdat(table2[n1]);
n1++;
}
while(1)
{
wcom(0x06);
for(v=0;v<10;v++)
{
wcom(0x8b);
wdat(table[v]);
delay(1000);
}
if(v==10)
{ wcom(0x8a);
wdat(table[m+1]);
m++;
if(m==6)
{
m=0;
wcom(0x8a);
wdat(table[0]);
wcom(0x88);
wdat(table[fen0+1]);
fen0++;
if(fen0==10)
{
fen0=0;
wcom(0x88);
wdat(table[0]);
wcom(0xc7);
wdat(table[fen1+1]);
fen1++;
if(fen1==6)
{ fen1=0;
wcom(0x87);
wdat(table[0]);
wcom(0x85);
wdat(table[shi0+1]);
shi0++;
if(shi0==10)
{
shi0=0;
wcom(0x85);
wdat(table[0]);
wcom(0x84);
wdat(table[shi1+1]);
shi1++;
k++;
}
if(k==2&&shi0==4)
{
shi1=0;
shi0=0;
fen1=0;
fen0=0;
v=0;
m=0;
wcom(0x84);
for(n=0;n<7;n++)
{
wdat(table1[n]);
}
}
}
}
}
}
}
}