一、多功能数字钟的设计与制作
(一)相关知识:多位数(DlGIT)的驱动方式
1.如采用直接驱动法驱动4个七段显示器,共需要4×8=32条的I/O线:而采用解码
器驱动也要4X4=16条的I/O线,形成了I/O端口的浪费。
2.扫描显示法所需的I/O数为8+n条(n个显示器),可节省硬件电路。
3.扫描显示法要注意两点:
(1)点亮时要让LED得到最大的顺向电流,通常一个LED需要10mA。在做四位数
的扫描时,每一个LED的平均电流值只有1/4的最高电流值,因此扫描时要得到适当的亮
度最好有30mA以上的瞬间电流,即将LED的限流电阻降低到20~100Ω。
(2)在切至下一个显示器时,应把上一个先关闭一段时问(约50μs),再将下一个显
示器扫描信号送出,以避免上一个的显示数据显示到下一个显示,即避免鬼影(TBLANK)
的产生.下图为显示器切换时间差示意图。
1
显示器切换时间差示意图。
4.扫描频率必须高于视觉暂留频率16Hz以卜(即62毫秒以上
(二)功能说明
1.开机时,显示12:00:00的时间开始计时。
2.P0.0控制“秒”的调整.每按一次加1秒,
P0.1控制“分”的调整.每按一次加1分
P0.2控制“时”的调整,每按一次加1个小时;
(三)硬件:如图所示
2
时钟电路图
(四)程序:shiz.ASM
ORG 00H ;主程序起始地址
AJMP START ;跳至主程序
ORG 0BH ;TIMER0中断起始地址
AJMP TIM0 ;跳至TIMER0中断子程序TIM0
START:MOV SP,#70H ;设置堆栈在70H
MOV 28H,#00 ;显示寄存器初值为0 0
3
MOV 2AH,#12H ;“时”寄存器l忉值为12H
MOV 2BH,#00 ;“分”寄存器初值为0 0H
MOV 2CH,#00 :“秒”寄存器初值为00H
MOV TMOD,#00000001B :设TIMER0为MODEl
MOV TH0,#HIGH(65536—4000) ;计时中断为4000微秒
MOV TL0,#LOW(6553 6—4000)
MOV IE,#10000010B ;TIMER0中断使能
MOV R4,#250 ;中断250次
SETB TR0 j启动TIMER0
LOOP: JB P0.0,N2 ;PO.O (秒)按了?不是则跳至N2检查PO.1
ACALL DELAY ;消除抖动
MOV A,2CH ;将秒寄存器的值载入A
ADD A,#01 ;A的内容加1
4
DA A ;做十进位调整
MOV 2CH,A ;将A的值存入秒寄存器
CJNE A,#60H,N1 ;是否等于60秒?不是则跳至N1
MOV 2CH,#00 ;是则清除秒寄存器的值为00
N1: JNB P0.0,$ ; P0.0(秒)放开了?
ACALL DELAY ;消除抖动
N2: JB P0.1,N4 ;p0.1 (分)按下了吗?不是则跳至N4检查P0.2
ACALL DELAY ;消除抖动
MOV A,2BH ;将分寄存器的值载入A
ADD A,#01 ;A的内容加1
DA A ;做十进位调整
MOV 2BH.A ;将A的值存入分寄存器
CJNE A,#60H,N3 ;是否等于60分?不是则跳至N1
5
MOV 2BH.#00 ;是则清除分寄存器的值为00
N3: JNB P0.1,$ ;p0.1 (秒)放开了?
CALL DELAY ;消除抖动
N4: JB P0.2,LOOP ;P0.2 1秒)按下了吗?不足则跳至LOOP
CALL DELAY ;消除抖动
MOV A,2AH ;将时寄存器的值载入A
ADD A.#01 :A的内容加1
DA A ;做十进位调整
MOv 2AH,A ;将A的值存入时寄存器
CJNE A,#24H,N5 ;是否等于24时?不是则跳至N5
MOV 2AH,#00 ;是则清除时寄存器的值为00
N5: JNB P0.2,$ ;P0.2(秒)放开了?
CALL DELAY :消除抖动
6
JMP LOOP
TIM0:MOV TH0,#HIGH(6 553 6—4000) ;重设计时4 000微秒
NOV TL0,#LOW(6553 6—4 000)
PUSH ACC :将A的值暂存于堆栈
PUSH PSW ;将PSW的值暂存于堆栈
DJNZ R4 X2 :计时1秒
MOV R4,#250
CALL CLOCK ;调用计时子程序CLOCK
CALL DISP :调用显示子程序
X2: CALL SCAN ;调用扫描子程序
POP PSW ;至堆栈取叫PSW的值
POP ACC :至堆栈取回ACC的值
SCAN: MOV R0,#28H ;(28H)为扫描指针
7
INC @R0 ;扫描指针加l
CJHE @R0.#6,X3 ;扫描完6个显示器?不是跳至X3
MOV @R0,#0 ;是则扫描指针为0
x3: MOV A,@R0 ;扫描指针载入A
ADD A,#20H ;A加常数20H(显示寄存器地址)=各时间
;显示区地址
;存入R1=各时间显示地址
MOV R1,A ;扫描指针存入A
MOV A,@R0 ;将A高低4位交换(P1高4位为扫描值,
SWAP A ;低4位为显示数据值)
ORL A,@R1 ;扫描值+显示值
MOV P1,A ;输出至P1
RET
8
CLOCK: MOV A,2CH ;(2CH)为秒寄存器
ADD A,#l ;加1秒
DA A ;做十进制调整
MOV 2CH, A ;存入秒寄存器
CJNE A,#60H,X4 ;是否超过60秒?不是则跳至X4
MOV 2CH,#00 ;是则清除为00
MOV A,2BH ;(2BH)为分寄存器
ADD A,#l ;加1分
DA A ;做十进制调整
MOV 2BH,A ;存入分寄存器
CJNE A,#60H.X4 ;是否超过60分?不是则跳至X4
MOV 2BH,#00 ;是则清除为0 0
MOV A,2AH 7(2AH)为时寄存器
9
ADD A,#l ;加l时
DA A ;做十进制调整
MOV 2AH,A ;存入时寄存器
CJNE A,#24H,X4 ;是否超过24时?不是则跳至x4
MOV 2AH.#00 ;是则清除为00
X4: RET
DISP:
MOV R1,#20H ;( 20H)为显示寄存器.R1=20H
MOV A,2CH ;将秒寄存器的内容存入A
MOV B,#10H ;设B累加器的值为10H
DIV AB ;A÷B,商(十位数)存入A.余数(个位数)
;存入B
NOV @R1,B :将B的内容仔入(20H)
10
INC R1 ;RI=21H
MOV @R1,A ;将A的内容存入(21H)
INC R1 ;R1=22H
NOV A,2BH ;将分寄存器的内容仃入A
NOV B,#10H ;设B累加器的值为10
DIV AB ;A÷B,商(十位数)存入A,余数(个位数)
;存入B
MOV @R1,B ;将B的内容存入(22H)
INC Rl ;R1= 23H
NOV @R1,A ;将A的内容存入(23H)
INC R1 ;R1=24H
MOV A,2AH ;将时寄存器的内容存入A
MOV B,#10H ;设B累加器的值为10H
11
DIV AB ;A÷B,商(十位数)存入A.余数(个位数)
;存入B
M0v @R1,B ;将B的内容存入(24H)
INC R1 ;R1=25H
MOV @R1,A ;将A的内容存入(25H)
RET
DELAY:MOV R6,#60 ;5毫秒
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
RET
END
12
因篇幅问题不能全部显示,请点此查看更多更全内容
小奈知识网还为您提供以下相关内容希望对您有帮助:
多功能数字钟
题目:多功能数码种的设计 一、设计目的 数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。因此,我们此次设计数字钟就是为了了解数字钟的原理,从
急求多功能数字钟的设计,要详细的制作过程,需要购买的元件以及电路板的...
其中主体电路完成数字钟的基本功能,扩展电路完成数字钟的扩展功能。论文安排如下: 1、绪论 阐述研究电子钟所具有的现实意义。 2、设计内容及设计方案 论述电子钟的具体设计方案及设计要求。 3、单元电路设计、原理及器件选择 说明电子钟的设计原理以及器件的选择,主要从石英晶体振荡器、分频器、计数器、显示器和校时电...
用Multisim10.0画出多功能数字钟电路图并仿真。
在Multisim中绘制电路时,需要注意元件的正确选择和连接,确保计数器和LED的连接方式符合上述描述。此外,还需合理设置时钟信号,确保秒和分的进位关系正确。通过Multisim的仿真功能,可以直观地观察到计数器的工作状态,验证设计的正确性。这对于学习数字电路设计和仿真技术具有重要意义。
多功能数字电子钟
摘要:本文针对数字电子钟的设计要求,提出了一种基于EWB仿真软件设计数字电子钟的方法。系统由石英晶体振荡器,分频器,计数电路,译码显示电路,校时电路,整点报时电路组成,最终在EWB仿真下基本通过。关键词:EWB,数字电子钟,74160,分频器,计数器,晶体振荡电路一、课题名称:多功能数字电子钟 二、设计...
求一份《多功能数字钟电路设计》的课程设计,谢谢!可以...
一、设计题目:多功能数字钟电路设计。二、设计要求:①准时计时,以数字形式显示时分秒的时间 。②小时的计时:24进制;分秒的计时60进制。③校正时间:当电路发生误差时,要求电路具有校正功能。④电源电压为4.5V~5.5 V。三、给定元件:①采用74系列的集成电路,74LS160、74LS48、74LS00、555定时器、 5EF1086KP数字...
51单片机多功能LED点阵显示数字时钟
这款数字时钟程序在PROTUES上运行良好,你可以自行在PROTUES上进行电路设计。程序使用了51单片机,通过P2.5,P2.6两个端口控制数码管显示,P1.0至P1.7端口分别用于控制按钮1至按钮8的状态检测。程序通过定时器0实现秒级计时功能,每0.256秒更新一次显示数据,确保时间显示的准确性。在主函数中,首先...
设计并制作一个24小时制多功能数字钟,并带有闹钟功能。 设计要求 1...
89s52单片机可以实现此功能!
实用多功能电子表的VHDL设计具有数字钟、数字跑表、闹钟设置、日_百度...
实用多功能电子表的VHDL设计涵盖数字钟、数字跑表、闹钟设置及日历功能。这要求设计者具备深厚的VHDL编程基础,以便精确地实现这些复杂功能。在数字钟的设计中,需要通过VHDL编程来确保时钟的准确性,这通常涉及到对时钟信号的精确计数和处理。例如,可以使用一个高速计数器来跟踪时钟脉冲,并通过适当的逻辑来...
数字钟的工作原理是怎样的?
数字钟以其显示时间的直观性、走时准确性而受到了人们的欢迎并很快走进了千家万户。作为一种计时工具,数字钟的基本组成部分离不开计数器,在控制逻辑电路的控制下完成预定的各项功能 (1)、时基T 产生电路:由晶振产生的频率非常稳定的脉冲,经整形、稳定电路后,产生一个频率为1Hz的、非常稳定的计数...
数字电子课程设计多功能数字钟的电路设计
用数字电路电路复杂成本高,做出的时钟还可能不是很准还是用单片机做吧,用最简单的51就够了。
Copyright © 2019- huatuo3.com 版权所有 蜀ICP备2023022190号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务