用51单片机的最小系统和LCD1602显示的电子时钟
second=50; minute=27; hour=19; week=6; day=7; month=12; year=13; count=0; s1num=0;
E=0;
delay(15); //延时15ms,首次写指令时应给LCD一段较长的反应时间 WriteInstruction(0x38); //显示模式设置:16×2显示, //5×7点阵,8位数据接口 delay(5); //延时5ms?,给硬件一点反应时间 WriteInstruction(0x38); delay(5);
WriteInstruction(0x38); //连续三次,确保初始化成功 delay(5);
WriteInstruction(0x0c); //显示模式设置:显示开,无光标, //光标不闪烁 delay(5);
WriteInstruction(0x06); //显示模式设置:光标右移,字符不移 delay(5);
WriteInstruction(0x01); //清屏幕指令,将以前的显示内容清除 delay(5);
WriteInstruction(0x80);
for(num=0;num<16;num++) //让液晶显示日期 { WriteData(table[num]); delay(5); }
WriteInstruction(0x80+0x40);
for(num=0;num<14;num++) //让液晶显示时间 { WriteData(table1[num]); delay(5); }
TMOD=0x01; //定时器中断初始化 TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1;