|
#include<reg51.h>
char word0[15]="H.I.T. CHINA";
char word1[10][10]={"ice","flower","water","grass","sun","moon","air",
"family","word","mother"};
char num;
int i,j,a;
j=0;
i=0;
sbit Icden=P3^5;
sbit Icdrs=P3^4;
void delay(int z)
{
int x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void write_com(char com)
{
Icdrs=0;
P0=com;
delay(5);
Icden=1;
delay(5);
Icden=0;
}
void write_data(char date)
{
Icdrs=1;
P0=date;
delay(5);
Icden=1;
delay(5);
Icden=0;
}
void init()
{
Icden=0;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
write_com(0x80+0x01);
}
void main()
{
init();
delay(100);
for(num=0;num<15;num++)
{
write_data(word0[num]);
delay(20);
}
a=P1;
switch(a)
{
case0xfe: {write_com(2);
write_com(0x80+0x40);
for(num=0;num<10;num++)
{
write_data(word1[i][num]);
i++;
j++;
delay(20);
}
}
break;
case0xfd:{ write_com(2);
write_com(0x80+0x40);
for(num=0;num<10;num++)
{
write_data(word1[i][num]);
i++;
delay(20);
}
}
break;
case0xfb:{write_com(2);
write_com(0x80+0x40);
--i;
for(num=0;num<10;num++)
{
write_data(word1[i][num]);
}
}
break;
case0xf7:{write_com(2);
write_com(0x80+0x40);
++i;
for(num=0;num<10;num++)
{
write_data(word1[i][num]);
}
}
break;
}
}
|
|