电子时钟程序设计之欧阳育创编Word文档格式.docx
《电子时钟程序设计之欧阳育创编Word文档格式.docx》由会员分享,可在线阅读,更多相关《电子时钟程序设计之欧阳育创编Word文档格式.docx(8页珍藏版)》请在冰豆网上搜索。
运用这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现意想不到的错误。
2.2设计元件
元件
规格
数量
单片机
AT89C51
1
晶振
12MHz
晶振电容
30pF
2
按键
4
电阻
10K,1K,220欧,
各1,1,15
电容
10uF(+)
七段数码管
共阳极四位、两位
各1,1
USB接口
USB延长线
1/2
底座
40脚
2.3设计图
2.4设计程序
#include<
reg51.h>
stdio.h>
intrins.h>
chardatatime[6];
voiddelay(unsignedchark);
sbitcheck=P0^0;
sbitinter0=P3^2;
sbitinter1=P3^3;
chardatawhich=0;
chardatacount=0;
voidsmadd(unsignedchark);
voidsmsub(unsignedcharn);
charcodebuf[]={0x00,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0xff,0x6f};
charcodesel[]={0x01,0x02,0x04,0x08};
voidmain()
{
chari;
for(i=0;
i<
500;
i++);
time[0]=0;
time[1]=1;
time[2]=8;
time[3]=0;
time[4]=2;
time[5]=1;
TMOD=0X01;
TH0=(65535-5000)/256;
TL0=(65535-5000)%256;
IP=0x07;
IE=0X87;
TR0=1;
while
(1)
{
for(i=0;
6;
i++)
{
P1=sel[i];
P2=buf[time[i]];
delay(10);
}
if(check==0)
{
delay(8);
TR0=0;
which=(which+1)%3;
while(check==0);
TR0=1;
}
}
}
voiddelay(unsignedchark)
{chari;
for(;
k>
0;
k--)
80;
i++)
{;
}
voidtime_tr0()interrupt1using2
TH0=(65535-5000)/256;
count++;
if(count==100)
{
smadd(0);
voidint0_i()interrupt0using3
TR0=0;
smadd(which*2);
while(inter0==0);
voidint1_i()interrupt2using1
delay(20);
smsub(which*2);
;
while(inter1==0);
voidsmsub(unsignedcharn)
delay(80);
if(time[n]>
0)
time[n]=time[n]-1;
}
elseif(time[n]==0&
&
(n==3||n==1))
time[n]=5;
smsub(n+1);
(n==4||n==2||n==0))
time[n]=23;
(n==5))
time[n]=0;
voidsmadd(unsignedcharn)
charflag=0;
if((n==0)||(n==2)||(n==4))
if(n==4&
time[5]==2&
time[4]==3)
time[4]=0;
time[5]=0;
flag=1;
if(time[n]==9)
time[n]=0;
smadd(n+1);
elseif(time[n]<
9&
flag==0)
time[n]=time[n]+1;
elseif((n==1)||(n==3))
{
if(time[n]==5)
else
elseif(n==5)
if(time[n]==2&
(time[n-1]==3))
time[5]=0;
time[4]=0;
time[n]=time[n]+1;
}
2.5伟福系统仿真如图所示:
3.设计总结
通过这次的设计使我认识到我对单片机方面的知识知道的太少了,对于书本上的很多知识还不能灵活运用,有很多我们需要掌握的知识在等着我去学习,我会在以后的学习生活中弥补我所缺少的知识。
本次的设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我所学到的知识运用到我以后的工作中去。
在大学的课堂的学习只是在给我们灌输理论知识,而我们应把所学的用到我们现实的生活中去,此次的电子时钟设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己,使自己适应于以后的竞争。