当前位置:文档之家› 电子钟可闹铃、设置日期和时间

电子钟可闹铃、设置日期和时间

uchar code tt[12]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,
0x7d,0x07,0x7f,0x6f,0x40,0x00
}; //数码管显视代码
uchar code array[]={
0x18, 0x30, 0x1C, 0x10, 0x20, 0x40, 0x1C, 0x10,
0x20, 0x20, 0x26, 0x20, 0x2B, 0x20, 0x30, 0x20,
0x2B, 0x40, 0x20, 0x30, 0x1C, 0x10, 0x18, 0x20,
0x15, 0x20, 0x1C, 0x20, 0x20, 0x20, 0x26, 0x40,
0x20, 0x20, 0x2B, 0x20, 0x26, 0x20, 0x20, 0x20,
}; //array[i]=0x00代表歌曲演唱完毕
//array[i]=0xff代表是休止符
/*******************************************************************
*函数名称:leap()
*功能:计算二月份天数
*入口参数:year
*出口参数:无
*******************************************************************/
uchar leap(uchar year) //判断是否闰年并返回二月份的天数
{ //闰年返回29,平年返回28
year+=2000;
if(year%4==0)
{if(year%100==0)
/***************************lns主程序snl***************************/
#include <absacc.h> //包含头文件
#include <reg52.h> //包含头文件
/***************************数据类型定义***************************/
uchar h2=0,m2=1,s2=1; //定义定时时、分、秒变量并初始化
uchar year=7,month=9,day=8; //定义年、月、日变量并初始化
uchar wday=6; //定义星期变量并初始化
uchar *h=&h1,*m=&m1,*s=&s1; //定义显视位变量并初始化
uchar *p; //定义调节指针
{if(year%400==0)
lse return 29;
}
else return 28;
}
/*******************************************************************
*函数名称:mon()
0x26, 0x40, 0x20, 0x20, 0x2B, 0x20, 0x26, 0x20,
0x20, 0x20, 0x30, 0x80, 0xFF, 0x00, 0x20, 0x20,
0x1C, 0x10, 0x18, 0x10, 0x20, 0x20, 0x26, 0x20,
0x2B, 0x20, 0x30, 0x20, 0x2B, 0x40, 0x20, 0x20,
#define uchar unsigned char //数据类型定义
/*************************定义变量并初始化*************************/
uchar n=31; //定义月份天数变量并初始化
uchar ms=0; //定义毫秒变量并初始化
uchar h1=0,m1=0,s1=0; //定义计时时、分、秒变量并初始化
0x18, 0x10, 0x20, 0x10, 0x1C, 0x10, 0x18, 0x40,
0x1C, 0x20, 0x20, 0x20, 0x1C, 0x20, 0x18, 0x20,
0x20, 0x80, 0xFF, 0x00, 0x20, 0x30, 0x1C, 0x10,
0x18, 0x20, 0x15, 0x20, 0x1C, 0x20, 0x20, 0x20,
0x30, 0x30, 0x20, 0x30, 0x1C, 0x10, 0x18, 0x40,
0x1C, 0x20, 0x20, 0x20, 0x26, 0x40, 0x13, 0x60,
0x18, 0x20, 0x15, 0x40, 0x13, 0x40, 0x18, 0x80,
0x00, 0x00
*功能:计算并返回每个月的天数
*入口参数:month
*出口参数:无
*******************************************************************/
0x26, 0x20, 0x20, 0x20, 0x30, 0x80, 0x20, 0x30,
0x1C, 0x10, 0x20, 0x10, 0x1C, 0x10, 0x20, 0x20,
0x26, 0x20, 0x2B, 0x20, 0x30, 0x20, 0x2B, 0x40,
0x20, 0x15, 0x1F, 0x05, 0x20, 0x10, 0x1C, 0x10,
0x1C, 0x10, 0x18, 0x10, 0x20, 0x20, 0x26, 0x20,
0x2B, 0x20, 0x30, 0x20, 0x2B, 0x40, 0x20, 0x30,
0x1C, 0x10, 0x18, 0x20, 0x15, 0x20, 0x1C, 0x20,
0x20, 0x20, 0x26, 0x40, 0x20, 0x20, 0x2B, 0x20,
uchar k1=0,k2=0,k3=0,k4=0,k5=0; //定义控制变量并初始化
uchar counter=0; //定义铃声节拍变量并初始化
uchar count=0; //定义铃声音符变量并初始化
sbit sound=P1^0; //定义铃声输出位
uchar a[8]={1,2,3,4,5,6,7}; //定义显视输出位数组并初始化
相关主题