- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子时钟基于AT89c51单片机设计电路图及程序
电子时钟基于AT89c51单片机的设计
电子时钟原理图
开机显示仿真图: 当按下仿真键时电子时钟开机页面显示第一行显示JD12102Class--16,第二行显示动态TINE:12:00:04。
电子时钟调时间仿真图:当按下K1为1次时,光标直接跳到电子时钟的秒,可以按下K2进行调节。
当按下K1为2次时,光标直接跳到电子时钟的分,可以按下K2进行调节。
当按下K1为3次时,光标直接跳到电子时钟的时,可以按下K2进行调节。
当按下K1为4次时,光标直接跳完,电子时钟可以进行正常计时。
电子时钟闹钟调节仿真:当按下K3为1次时,直接跳到闹钟显示界面00:00:00,按下K2可以对闹钟的秒进行调节。
当按下K3为2次时,可以调到分,按下K2可以对闹钟的分进行调节。
当按下K3为3次时,可以调到时,按下K2可以对闹钟的时进行调节。
当按下K3为4次时,直接跳到计时界面,对闹钟进行到计时,时间到可以发出滴滴声。
#includereg51.h
#define uchar unsigned char //预定义一下
#define uint unsigned int
uchar table[]=JD12102Class--21; //显示内容
sbit lcden=P3^4; //寄存器EN片选引脚
sbit lcdrs=P3^5; //寄存器RS选择引脚
sbit beep=P3^6; //接蜂鸣器
extern void key1();
extern void key2();
extern void key3();
uchar num,hour=12,minite,second,ahour,aminite,asecond,a,F_k1,F_k2,F_k3; //定义变量
void delay(uint z) //延时
{
uint x,y;
for(x=z;x0;x--)
for(y=110;y0;y--);
}
void write_com(uchar com)
{
lcdrs=0;
P0=com; //送出指令,写指令时序
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void write_data(uchar date)
{
lcdrs=1;
P0=date; //送出数据,写指令程序
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void write_add(uchar add,uchar date)
{
uchar aa,bb;
aa=date/10;
bb=date%10;
write_com(0x80+add);
write_data(0x30+aa);
write_data(0x30+bb);
}
void init() //初始化
{lcden=0;
write_com(0x38); //设置16*2显示,5*7点阵
write_com(0x0c); //开显示,不显示光标
write_com(0x06); //地址加1,写入数据是光标右移1位
write_com(0x01); //清屏
write_com(0x80); //起点为第一行第一个字符开始
}
void display(uchar h,uchar m,uchar s) //显示设计程序
{{
write_com(0x80+0x16);}
{write_com(0xC0+0x00);
write_data(T);
write_data(I);
write_data(M);
write_data(E);
write_data(:);
write_data(0x30+(h/10));
write_data(0x30+(h%10));
write_data(:);
write_data(0x30+(m/10));
write_data(0x30+(m%10));
write_data(:);
write_data(0x30+(s/10));
write_data(0x30+(s%10));
write_data( );
write_data( );
write_data( );
} }
void main()
{init();
TMOD=0X01; //设置T0定时方式1
TH0=(65535-50000)/256; //设置初值
TL0=(65535-50000)%256;
EA=1; //开总中断
TR0=1; //启动T0
ET0=1;
for(num=0;num16;num++) //依次读出数据
{
write_data(table[nu
您可能关注的文档
最近下载
- 山东省青岛市2024-2025学年七年级上学期11月期中英语试题.docx VIP
- 灼热丝试验规范.doc VIP
- 不动产登记实务培训教程课件.pptx VIP
- 高中语文统编版必修 下册(2019)_2022届高考语文二轮复习“科幻小说与魔幻现实主义小说”专练 .doc VIP
- 小学语文大阅读《奇妙的数王国》 指导课件.pptx
- 灼热丝试验及标准.docx VIP
- 新能源零基础知识培训课件.pptx VIP
- 2025年上海市时事政治考试试卷带解析(考试直接用).docx VIP
- 2025年上海市时事政治考试试卷带解析含答案(考试直接用).docx VIP
- 高等有机化学 周环反应.ppt VIP
文档评论(0)