数字时钟Word文档下载推荐.docx
《数字时钟Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数字时钟Word文档下载推荐.docx(9页珍藏版)》请在冰豆网上搜索。
与传统机械表相比,它具有走时准确,显示直观等特点。
它的计时周期为24小时,显满刻度为“23时59分59秒”,另外具有校时功能。
二、电路组成及工作原理
本文数字时钟设计原理主要利用利用AT89S52单片机,由单片机的P0口控制数码管的段码,P2口控制数码管的位码,P1口接四个发光二极管提示时间的走动,P3口与按键相接用于时间的校正.在设计中引入一个电源电路,是外部电源系统产生+5V电压,用于给CPU及显示电路提供工作电压,这是数字时钟正常工作时的电压。
分钟和秒种采用60进制,小时采用24,可实现对一天,24小时的累计。
显示电路将“时”、“分”、“秒”、计数器的输出,通过八个七段LED显示器显示出来。
校时电路是直接加一个脉冲信号到时计数器或者分计数器或者秒计数器来对“时”、“分”、“秒”显示数字进行校对调整。
三、电路设计与实验器件
1、电路原理图
2、实验器件
最小系统部分:
5V电源一个
12MHz晶振一个
30PF电容一个
复位按钮一个
1.0UF电容一个
1K电阻一个
显示部分:
四位数码管两个
9015PNP三极管八个
330欧姆电阻八个
510欧姆电阻八个
调时设置部分:
按键三个
稳压二极管两个
器件介绍
共阳八段数码管结构如图,图中三个LED表示数码管的一段。
阳极全部连在一起,通过阴极选择点亮哪一段,从而显示0~9,也可以显示a~z,共有2的8次方256种组合。
实验内容主要包含软件和硬件两个部分,软件部分就是在电脑上用KeiluVision2软件编写和调试单片机应用程序,并用Proteus软件进行仿真。
(一)软件部分
d0equ11000000b
d1equ11111001b
d2equ10100100b
d3equ10110000b
d4equ10011001b
d5equ10010010b
d6equ10000010b
d7equ11111000b
d8equ10000000b
d9equ10010000b
flagequ0030h
org0000h
jmpstart
org0003h
jmpint0p32
org0013h
jmpint1p33
org0030h;
r1sec,r2min,r3hour
start:
movie,#10000101b;
打开外部中断0和外部中断1
movtcon,#00000101b;
设置中断为下降沿有效
movip,#00000100b;
设置外部中断1为高一级中断
movdptr,#table
movflag,#0ffh
movr1,#0
movr2,#0
movr3,#12
lp:
calldisplay
incr1
cjner1,#60,lp
movr1,#0
incr2
cjner2,#60,lp
movr2,#0
incr3
cjner3,#24,lp
movr3,#0
jmplp
jmp$
jmpstart
display:
movr5,#250
lpr5:
calldelay
movp2,#0ffh
movp1,#10111111b
movp2,#11011011b
calldelay
mova,r3;
hour
movb,#10
divab
movca,@a+dptr
movp1,a
movp2,#01111111b
calldelay
mova,b
movp2,#10111111b
mova,r2;
min
movp2,#11101111b
movp2,#11110111b
mova,r1;
sec
movp2,#11111101b
movp2,#11111110b
djnzr5,lpr5
ret
table:
dbd0,d1,d2,d3,d4,d5,d6,d7,d8,d9
int1p33:
jnbp3.3,$
incflag
movr0,flag
cjner0,#1,int1o;
比较用的数值根据所要实现功能的多少进行改动
int1o:
reti
int0p32:
movr0,flag;
0ffh调hour,0调min,1进入stopwatch,
;
2停止stopwatch并显示记下的时间,3正常工作状态
;
p3.0加,p3.1减
cjner0,#0ffh,adjustmin
;
调小时
jnbp3.0,inchour
jnbp3.1,dechour
hour加
inchour:
incr3
cjner3,#24,out
jmpout
dechour:
decr3
cjner3,#0ffh,out
movr3,#24
adjustmin:
调分钟
cjner0,#1,stopwatch
jnbp3.0,incmin
jnbp3.1,decmin
incmin:
incr2
cjner2,#60,out
decmin:
decr2
cjner2,#0ffh,out
movr2,#60
stopwatch:
马表
out:
delay:
movr6,#10
lpr6:
movr7,#20
djnzr7,$
djnzr6,lpr6
end
(二)硬件部分
见实物。
五、硬件调试结果与分析
通过模式按键将单片机在调时模式时,按下减按键使“小时”减一此时并不影响电子时钟的正常走时。
六、实验总结
经过这个课程设计,我们学会使用三极管进行数字信号的反向(0变1)。
掌握了数码管的结构原理。
初步练习了电子元件的焊接,加强了对单片机编写程序和调试的技能。