#include<reg52.h>
#include<intrins.h>
//定义 1602 相关位
sbit RS=P2^0;
sbit RW=P2^1;
sbit E=P2^2;
sbit BF=P0^7;//定义忙信号位
//定义 1302 相关位
sbit SCLK=P1^0;
sbit IO=P1^1;
sbit RST=P1^2;
//定义 4 个按键
sbit k1=P3^2;//模式选择
sbit k2=P3^3;//进入具体设置选项时的循环移动,例如进入时间设置选项时按改键就可以选
择是调时还是分或者秒
sbit k3=P3^4;//加键
sbit k4=P3^5;//减键
sbit beep=P3^6;
#define delayNOP() ; {_nop_() ;_nop_() ;_nop_() ;_nop_() ;_nop_() ;} ;
#define uchar unsigned char
#define uint unsigned int
unsigned char code tab[10]={"0123456789"};
unsigned char code tab2[]={0x35,0x46,0x09,0x20,0x05,0x07,0x12};//2012 年 5 月 20 号 9 点 46
分 35 秒
uchar code tab1[][4]={"Mon","Tue","Wed","Thu","Fri","Sat","Sun"};//星期字符串组
void timeset();//时间设置
void dateset();//日期设置
void set(uchar x,uchar y);
void writedata(uchar dat);
uchar n=0;
uchar m=0,kk=4;
//1MS 延迟程序
void delay1ms()
{
uchar i,j;
for(i=0;i<10;i++)
for(j=0;j<33;j++) ;
}
//NMS 延迟程序
void delaynms(uint k)
{
while(k--)