数字钟(闹钟+秒表+整点报时+校时)
- 格式:docx
- 大小:819.89 KB
- 文档页数:13
数字钟报告数字钟是一种很常见的计时工具,与传统机械钟相比,数字钟拥有更多的功能和便利性。
本次报告将详细介绍数字钟的特点、功能和使用方法。
数字钟的特点主要有以下几点:第一,数字钟使用数字显示时间,清晰明了,更容易读取。
相比于指针式的机械钟,数字钟的时间显示更加准确,误差较小。
第二,数字钟一般采用LED(发光二极管)显示屏或LCD(液晶显示屏)显示屏。
LED屏幕的亮度高,适合在光线较暗的环境下查看。
LCD屏幕则更节能省电,适合长时间使用。
第三,数字钟通常具备闹钟功能和定时器功能。
用户可以通过设置闹钟来提醒自己起床、上班等重要的时间节点。
定时器功能可以帮助用户掌握时间,做好时间分配。
数字钟的功能主要包括时间显示、闹钟、定时器等。
首先,数字钟的核心功能是准确显示时间。
用户可以通过设置按钮来调整时间,以保证钟表时间和实际时间一致。
有些数字钟还可以自动与网络时间同步,确保时间的准确性。
其次,数字钟一般都带有闹钟功能。
用户可以通过设定时间和铃声类型来设置闹钟。
闹钟可以帮助人们按时起床、上班或做其他事情。
另外,数字钟还常常具备定时器功能。
用户可以根据需要设定定时器的时间和模式,比如做饭时设定定时器提醒自己关火,或者在学习时设定定时器提醒休息。
最后,数字钟的使用方法也非常简单。
首先,用户需要根据说明书或者按键标识来设置时间、闹钟和定时器等功能。
设置好后,数字钟会自动运行。
用户可以随时查看时间,并通过按键来开启或关闭闹钟、定时器等功能。
总结来说,数字钟是一种准确、便利、功能丰富的计时工具。
它不仅可以准确显示时间,还可以帮助人们按时起床、做事、掌握时间。
在日常生活中,数字钟扮演着重要的角色,使我们的生活更加有序和高效。
第一章数字钟的工作原理第一节介绍20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力的推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品跟新换代的节奏也越来越快。
数字钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。
由于数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,节省了电能。
因此在许多电子设备中被广泛使用。
数字钟是一种典型的数字电路,包括了组合逻辑电路和时序电路。
通过设计加深对刚刚学习了的数字电子技术的认识。
本次设计以数字电子为主,分别对一秒信号源、秒计时显示、分计时显示、小时计时显示、整点报时及校时电路进行设计,然后将它们组合来完成时、分、秒的显示并且具有整点报时和走时校时的功能。
并通过本场设计加深对数字电子技术的理解以及更熟练是有计数器、触发起和各种逻辑门电路的能力。
电路主要使用集成计数器,例如74LS160、CD4518、译码集成电路,例如CD4511、LED数码管及各种门电路和基本的触发器等,电路使用5号电池供电,很合适在日常生活中使用。
第二节设计方案论证方案一:采用小规模集成电路实现采用集成逻辑电路设计具有能实现,时分秒计时功能和多点定时功能,计时数据的更新每秒自动进行一次,不需程序干预。
方案二:EDA技术实现采用EDA作为主控制外围电路进行电压,时钟控制键盘和LED控制,此方案逻辑电路复杂,且灵活性较低,不利于各种功能的扩展,在对电路进行检测比较困难。
方案三:单片机编程实现在按键较少的情况下,采用独立式4个按键,经软件设计指定的I/O 口,送出逻辑电平,控制数码管显示,根据数字电子钟的设计要求与原理以及特性,本系统采用单片机AT89C52串口输出的形式来设计电路,使功能及效果更完美。
用verilog-HDL多功能数字钟Verilog HDL实验报告基于Verilog HDL语言的多功能数字钟设计一、试验目的设计一个有如下功能的数字钟:(1)计时功能:包括时、分、秒。
(2)定时与闹钟功能:能在所设定的时间发出铃音。
(3)校时功能:对小时、分钟和秒钟进行手动校时。
(4)整点报时功能:每到整点能够发出“嘀嘀嘀嘀嘟”四短一长的报时。
二、试验原理ALERT HOUR[7..0]MIN[7..0]SEC[7..0]LD_ALERT LD_HOUR LD_MINCLK CLK_1K MODE TURN CHANGEclockCLK CLK_1K MODE TURN CHANGEALERTHOUR[7..0]MIN[7..0]SEC[7..0]LD_ALERT LD_HOUR LD_MIN多功能数字钟端口示意图数字钟设有五个输入端,分别为时钟输入(CLK )、模式(MODE )、产生声音的时钟信号(CLK_1K )、切换(TURN )和调时(CHANGE )键。
输出共七个,其中HOUR[7..0]、MIN[7..0]和SEC[7..0]采用BCD 计数方式,分别驱动2个数码管。
硬件电路原理图如下:三、试验内容1. 代码/*信号定义:clk: 标准时钟信号,其频率为4Hz;clk_1k:产生闹铃声、报时音的时钟信号,其频率为1024Hz;mode:功能控制信号;为0:计时功能;为1:闹钟功能;为2:手动校时功能;turn:接按键,在手动校时功能时,选择是调整小时还是分钟;若长时间按住改建,还可使秒信号清零,用于精确调时;change: 接按键,手动调整时,每按一次,计数器加1;如果长按,则连续快速加1,用于快速调时和定时;hour,min,sec:此三信号分别输出并显示时、分、秒信号,皆采用BCD码计数,分别驱动6个数码管显示时间;alert:输出到扬声器的信号,用于产生闹铃音和报时音;闹铃音为持续20秒的急促的“嘀嘀嘀”音,若按住“change”键,则可屏蔽该音;整点报时音为“嘀嘀嘀嘀嘟”四短一长音;LD_alert:接发光二极管,指示是否设置了闹钟功能;LD_hour:接发光二极管,指示当前调整的是小时信号;LD_min:接发光二极管,指示当前调整的是分钟信号*/moduleclock(clk,clk_1k,mode,change,turn,alert,hour,min,sec,LD_alert,LD_hour,LD_mi n);input clk,clk_1k,mode,change,turn;output alert,LD_alert,LD_hour,LD_min;output[7:0] hour,min,sec;reg[7:0] hour,min,sec,hour1,min1,sec1,ahour,amin;reg[1:0] m,fm,num1,num2,num3,num4;reg[1:0] loop1,loop2,loop3,loop4,sound;reg LD_hour,LD_min;reg clk_1Hz,clk_2Hz,minclk,hclk;reg alert1,alert2,ear;reg count1,count2,counta,countb;wire ct1,ct2,cta,ctb,m_clk,h_clk;always @(posedge clk)beginclk_2Hz<=~clk_2Hz;if(sound==3) begin sound<=0; ear<=1; end //ear信号用于产生或屏蔽声音else begin sound<=sound+1; ear<=0; endendalways @(posedge clk_2Hz) //由4Hz的输入时钟产生1Hz的时基信号clk_1Hz<=~clk_1Hz;always @(posedge mode) //mode信号控制系统在三种功能间转换begin if(m==2) m<=0; else m<=m+1; endalways @(posedge turn)fm<=~fm;always //产生count1,count2,counta,countb四个信号begincase(m)2:begin if(fm)begin count1<=change; {LD_min,LD_hour}<=2; endelsebegin counta<=change; {LD_min,LD_hour}<=1; end{count2,countb}<=0;end1:begin if(fm)begin count2<=change; {LD_min,LD_hour}<=2; endelsebegin countb<=change; {LD_min,LD_hour}<=1; end{count1,counta}<=2'b00;enddefault:{count1,count2,counta,countb,LD_min,LD_hour}<=0;endcaseendalways @(negedge clk) //如果长时间按下“change”键,则生成“num1”信号用于连续快速加1if(count2) beginif(loop2==3) num2<=1;elsebegin loop2<=loop2+1; num2<=0;endendelse begin loop2<=0; num2<=0; endalways @(negedge clk) //产生num2信号if(count1) beginif(loop3==3) num3<=1;elsebegin loop3<=loop3+1; num3<=0; endendelse begin loop3<=0; num3<=0; endalways @(negedge clk)if(counta) beginif(loop4==3) num4<=1;elsebegin loop4<=loop4+1; num4<=0; endendelse begin loop4<=0; num4<=0; endassign ct1=(num3&clk)|(!num3&m_clk); //ct1用于计时、校时中的分钟计数assign ct2=(num1&clk)|(!num1&count2); //ct2用于在定时状态下调整分钟信号assign cta=(num4&clk)|(!num4&h_clk); //cta用于计时、校时中的小时计数assign ctb=(num2&clk)|(!num2&countb); //ctb用于在定时状态下调整小时信号always @(posedge clk_1Hz) //秒计时和秒调整进程if(!(sec1^8'h59)|turn&(!m))beginsec1<=0;if(!(turn&(!m))) minclk<=1;end//按住“turn”按键一段时间,秒信号可清零,该功能用于手动精确调时else beginif(sec1[3:0]==4'b1001)begin sec1[3:0]<=4'b0000; sec1[7:4]<=sec1[7:4]+1; endelse sec1[3:0]<=sec1[3:0]+1; minclk<=0;endassign m_clk=minclk||count1;always @(posedge ct1) //分计时和分调整进程beginif(min1==8'h59) begin min1<=0; hclk<=1; endelse beginif(min1[3:0]==9)begin min1[3:0]<=0; min1[7:4]<=min1[7:4]+1; endelse min1[3:0]<=min1[3:0]+1; hclk<=0;endendassign h_clk=hclk||counta;always @(posedge cta) //小时计时和小时调整进程if(hour1==8'h23) hour1<=0;else if(hour1[3:0]==9)begin hour1[7:0]<=hour1[7:4]+1; hour1[3:0]<=0; endelse hour1[3:0]<=hour1[3:0]+1;always @(posedge ct2) //闹钟定时功能中的分钟调节进程if(amin==8'h59) amin<=0;else if(amin[3:0]==9)begin amin[3:0]<=0; amin[7:4]<=amin[7:4]+1; endelse amin[3:0]<=amin[3:0]+1;always @(posedge ctb) //闹钟定时功能中的小时调节进程if(ahour==8'h23) ahour<=0;else if(ahour[3:0]==9)begin ahour[3:0]<=0; ahour[7:4]<=ahour[7:4]+1; endelse ahour[3:0]<=ahour[3:0]+1;always //闹铃功能if((min1==amin)&&(hour1==ahour)&&(amin|ahour)&&(!change))//若按住“change”键不放,可屏蔽闹铃音if(sec1<8'h20) alert1<=1; //控制闹铃的时间长短else alert1<=0;else alert1<=0;always //时、分、秒的现实控制case(m)3'b00: begin hour<=hour1; min<=min1; sec<=sec1; end//计时状态下的时、分、秒显示3'b01: begin hour<=ahour; min<=amin; sec<=8'hzz; end//定时状态下的时、分、秒显示3'b10: begin hour<=hour1; min<=min1; sec<=8'hzz; end//校时状态下的时、分、秒显示endcaseassign LD_alert=(ahour|amin)?1:0; //指示是否进行了闹铃定时assign alert=((alert1)?clk_1k&clk:0)|alert2; //产生闹铃音或整点报时音always //产生整点报时信号alert2beginif((min1==8'h59)&&(sec1>8'h54)||(!(min1|sec1)))if(sec1>8'h54) alert2<=ear&clk_1k; //产生短音else alert2<=!ear&clk_1k; //产生长音else alert2<=0;endendmodule2. 仿真图四、小结及体会为了做多功能数字钟,我借了多本关于Verilog HDL的程序设计书。
数字时钟(带显⽰,校正,整点报时等)《课程设计成果说明书》规范要求课程设计说明书是课程设计主要成果之⼀,⼀般在2000~3000字。
1.说明书基本格式版⾯要求:打印时正⽂采⽤5号宋体,A4纸,页边距上、下、左、右均为2cm,⾏间距采⽤固定值20磅,页码底部居中。
⽂中标题采⽤4号宋体加粗。
2.说明书结构及要求(1)封⾯(2)课程设计成绩评定表(3)任务书(指导教师下发)(4)摘要摘要要求对内容进⾏简短的陈述,⼀般不超过300字。
关键词应为反映主题内容的学术词汇,⼀般为3-5个,且应在摘要中出现。
(5)⽬录要求层次清晰,给出标题及页次。
最后⼀项为参考⽂献。
(6)正⽂正⽂应按照⽬录所确定的顺序依次撰写,要求论述清楚、简练、通顺,插图清晰整洁。
⽂中图、表及公式应规范地绘制和书写。
(7)参考⽂献课程设计任务书2009—2010学年第2 学期学院机电⼯程学院班级 A08电信(2)班专业电⼦信息⼯程学⽣姓名(学号) 课程名称数字电⼦技术课程设计设计题⽬多功能时钟电路完成期限⾃ 2010 年 6 ⽉ 28 ⽇⾄ 2010 年 7 ⽉ 2 ⽇共1 周设计依据根据所学数字电⼦技术知识进⾏设计,包括:1,计数器原理及其应⽤;2,数码管及其应⽤;3,译码器原理及其应⽤;4,数值⽐较器及其应⽤;5,数据选择器原理及其应⽤;设计要求及主要内容设计的数字时钟应⽤于对时间的计时,要求:1、1、能进⾏正常时分秒计时功能,分别由6个数码管显⽰⼩时分钟和秒钟;1、2、具有清零功能;1、3、具有开、关功能;附加功能:能进⾏整点报时和校对;参考资料数字电⼦技术基础(第五版)阎⽯⾼等教育出版社 2008.5/doc/b9e02b6e7e21af45b307a8a8.html其他相关参考资料(可⾃⼰查找)指导教师签字⽇期课程设计成绩评定表2009 —2010 学年第 2 学期学院机电⼯程学院班级专业电⼦信息⼯程学⽣姓名(学号) 课程设计名称《数字电⼦技术课程设计》题⽬多功能时钟电路指导教师评语指导教师签名:年⽉⽇答辩评语及成绩答辩⼩组教师签名:年⽉⽇摘要随着电⼦技术的发展,在诸如计时、控制等领域,设计出应⽤具有时间设置(⼩时和分钟),开、关功能的多功能数字钟具有⼗分重要的意义。
物理与电子工程学院课程设计题目:数字电子钟专业电子信息工程班级12级电信三班学号学生姓名李长炳指导教师张小英张艳完成日期:2013 年7月数字电子钟前言:数字钟是一个将“时”、“分”、“秒’’显示于人的视觉器官的计时装置。
它的计时周期为24小时,显示满刻度为23时59分59秒,另外应有校时功能和报时闹铃等功能。
一、基本原理主体电路1.1 振荡电路晶体振荡器的作用是产生时间标准信号。
我采用由门电路或555定时器构成的多谐振荡器作为时间标准信号源。
本系统中的振荡电路选用555定时器构成的多谐振荡器,见图1。
多谐振荡器的振荡频率可由式估算。
2图11.2 时、分、秒显示电路模块设计①秒的产生采用74LS160产生60进制的加法计数器,输出端Q0,Q1,Q2,Q3分别接到七段数码管的相应的各端,由上图的555产生的秒脉冲链接秒的两个160的cp,第一片的进位来控制第二片的EP,ET来构成秒。
如下图所示图2注意:两个CP都是连接到555的输出。
4②分的产生采用74LS160产生60进制的加法计数器,输出端Q0,Q1,Q2,Q3分别接到七段数码管的相应的各端,由上图的秒产生的进位连接秒的两个160的cp,第一片的进位来控制第二片的EP,ET来构成秒。
如下图所示图3注意:两个CP都是连接的秒的进位的输出。
③小时的产生采用74LS160产生24进制的加法计数器,输出端Q0,Q1,Q2,Q3分别接到七段数码管的相应的各端,由上图的分产生的进位连接秒的两个160的cp,第一片的进位来控制第二片的EP,ET来构成秒。
如下图所示图4注意:两个CP都是连接的秒的进位的输出。
61.3闹钟我设置的闹钟是00:03响的。
会响一分钟,采用与非门和或门组成的电路。
可以得出以下的电路图当达到00:03时就开始响,当不是00:03是就停止了,喇叭一端节地。
仿真图如下所示。
图51.4整点报时整点报时就是当达到了整点的时候就开始响,我设计的是响10秒钟的报时。
目录1 绪论 (1)2 设计主体 (1)2.1 振荡器 (1)2.1.1 555定时器的电路结构及工作原理 (2)2.1.2 用555定时器构成多谐振荡器 (4)2.2 分频器 (5)2.3 校正电路 (6)2.3.1 校“秒”电路 (7)2.3.2 校“分”电路 (7)2.3.3 校“时”电路 (8)2.4 整点报时电路 (8)2.5 计数器、译码器和显示器 (9)3 心得体会 (10)参考文献 (12)具有整点报时功能的数字钟1 绪论数字钟是集模拟技术与数字技术为一体的一种综合应用。
数字钟与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用,数字电子钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序逻辑电路。
此次设计数字电子钟是为了了解数字电子钟的原理,从而学会制作数字电子钟,而且通过数字电子钟的制作进一步的了解各种在制作中用到的中小规模集成电路的作用及实现方法,且由于数字电子钟电路包括组合逻辑电路和时序逻辑电路,通过它可以进一步学习与掌握各种组合逻辑电路与时序电路的原理与使用方法。
2 设计主体数字钟是用计数器、译码器和显示器等集成电路实现“时”、“分”、“秒”按照数字方式显示的计数装置,主要由振荡器、分频器、校正电路、计数器、译码器和显示器六部分组成,如框图2-1所示。
图2-1 数字钟框图2.1 振荡器振荡器是数字钟的核心。
振荡器的稳定度及频率的精确度决定了数字钟计时的准确程度,通常选用石英晶体构成振荡器电路,也可以选择555定时器。
我在这里选择的是555定时器。
555定时器是一种应用极为广泛的中规模集成电路,因集成电路内部含有3个5KΩ电阻而得名。
该电路使用灵活、方便,只需接少量的阻容元件就可以构成施密特触发器、单稳态触发器和多谐振荡器,且价格便宜。
555定时器广泛应用于信号的产生、变换、控制与检测。
目前生产的555定时器有双极型和CMOS两种类型,主要厂商生产的产品有NE555、FX555、LM555和C7555等,它们的结构和工作原理大同小异,引出线也基本相同,有的还有双电路封装,称为556。
目录一、引言 (2)二、方案论证选择 (3)2.1设计要求 (3)1.基本要求 (3)2.发挥部分 (3)2.2系统框图 (3)分钟+调整 (3)秒钟 (3)时钟+调整 (3)秒表 (3)闹钟功能 (3)定时报闹 (3)万年历功能 (3)三、电路仿真与设计 (4)3.1核心芯片及芯片管脚图 (4)3.2时、分计数电路模块设计 (4)3.3切换电路模块设计 (5)3.4调整电路模块设计 (6)(1)方案一:利用74125的三态。
(6)(2)方案二:利用74162的置数端(LOAD),置数调整。
(7)3.5整点报时电路模块设计 (8)3.6秒表电路模块设计 (9)3.6定时报闹电路模块设计 (11)3.7万年历电路模块设计 (12)四、遇到的问题.......................................................................... 错误!未定义书签。
五、心得体会.............................................................................. 错误!未定义书签。
一、引言电子钟亦称数显钟(数字显示钟),是一种用数字电路技术实现时、分、秒计时的装置,与机械时钟相比,直观性为其主要显著特点,且因非机械驱动,具有更长的使用寿命,相较石英钟的石英机芯驱动,更具准确性。
电子钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及车站、码头、剧院、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大地方便。
相对于其他时钟类型,它的特点可归结为“两强一弱”:比机械钟强在观时显著,比石英钟强在走时准确,但是它的弱点为显时较为单调。
数字钟的核心即数字电子技术课程中有关时序逻辑电路、组合逻辑电路的内容。
这些也是我们学电子的学生应该掌握的最基本知识。
通过这次试验,不仅可以加深我对数字电子技术课程的理解,也可以提高自己的动手能力以及实际问题中解决问题的能力,培养对数字电子技术的兴趣。
第一章课题的来源及意义第一节介绍20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力的推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品跟新换代的节奏也越来越快。
数字钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。
由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、集成电路有体积小、功耗小、功能多、携带方便等优点,因此在许多电子设备中被广泛使用。
电子钟是人们日常生活中常用的计时工具,而数字式电子钟又具有体积小、重量轻、走时准确、结构简单、耗电量少等优点而在生活中广泛应用,因此本次设计就用数字集成电路和一些简单的逻辑门电路来设计一个数字式电子钟,使其完成计时及报时校时功能。
本次设计以数字电子为主,分别对一秒信号源、秒计时显示、分计时显示、小时计时显示、整点报时及校时电路进行设计,然后将它们组合来完成时、分、秒的显示并且具有整点报时和走时校时的功能。
并通过本次设计加深对数字电子技术的理解以及更熟练是有计数器、触发起和各种逻辑门电路的能力。
电路主要使用集成计数器,例如74LS161、CD4518;译码集成电路,例如CD4511、LED数码管及各种门电路和基本的触发器等,电路使用5号电池供电,很合适在日常生活中使用。
第二节目前研究现状在做这次设计前,首先了解了一些现在数字钟的研究状况,通过查找,我总结了下面一些方法,通过对比,我选择了适合自己的方法,来实现我的设计。
一、采用小规模集成电路实现采用集成逻辑电路设计具有能实现,时、分、秒计时功能和多点定时功能,计时数据的更新每秒自动进行一次,不需程序干预。
二、EDA技术实现采用EDA作为主控制外围电路进行电压,时钟控制键盘和LED控制,此方案逻辑电路复杂,且灵活性较低,不利于各种功能的扩展,在对电路进行检测比较困难。
数字钟一、设计任务本任务为:数字钟。
设计任务具体内容如下:基本设计任务依据命题题意,本设计采用89C51进行24小时计时并显示。
要求其显示时间范围是00:00:00~23:59:59,具备有时分秒校准功能。
数字钟上面要带有闹钟,闹钟与时钟之间能随时切换,闹钟具备时分秒设置功能。
控制设计任务由于本设计采用手动校准时钟与手动设置闹钟方案,所以要求用较少的按键来达到切换闹钟与时钟、时钟时分秒校准、闹钟时分秒设置等功能。
软件设计任务数字钟的所有计时都要由软件控制实现。
用软件对几个按键所得信号进行相应改变,以控制时钟与闹钟的显示。
通过软件对闹钟与时钟进行比较,当时钟所显示时间与闹钟一样时,要启动报时模块。
三、总体设计经过对各个方案分析比较,最终确定总方案如图3-1所示。
该系统所有模块都由主单片机控制。
其中,设计各个模块,包括单片机、显示模块、电机驱动、光电探测由四节AA电池供电。
电机驱动采用L298驱动芯片控制。
用光电传感器对边线的探测来控制距离。
通过单片机的机器周期计算时间计数周期,以达到计时目的。
图3-1 系统方案图系统硬件电路设计3.1.1 显示及控制模块图3-4 语音报时模块系统软件设计3.2.1 软件计时的分析与计算单片机内部定时器有4种工作模式,方式0是13位计数器,由于计时时间过短,中断频率高,所以不选用此模式;方式2是自动重装式计数器,是8位计数器,同样中断频率过高;方式3也是8位计数器;方式1是16位计数器,综合考虑,选用方式1做精确计时。
由于51单片机是12分频,因此机器周期=晶振频率/12。
在该设计中,选用频率为12MHz的晶振,因此机器周期=1μs。
定时1s需要1000000个机器周期,因此通过20次定时器中断完成1s的定时,每次完成50000个周期的定时,因此每次给定时器的初值应该是TH0=B0H,TL0=3CH。
3.2.2 系统软件设计设计两套存储方案,一套存储时钟,一套存储闹钟,两者互不干涉,只有当两者相等时才会调用闹钟播放子程序,而当每次整点时则会调用整点报时子程序。
总结设计报告
数字钟
2017-3-16
自动化B
鲁宇轩
设计内容简介
数字钟的主要由74160计数器、7447译码器和显示电路来实现基本功能,而校时、整点报时、秒表和闹钟电路实现其扩展功能。
整个电路的秒脉冲(即1HZ)由事先封装好的分频电路产生,秒脉冲送入74160计数器,‘秒’‘分’‘时’的计数器分别送到对应的译码器,然后再将信号送到显示电路显示时间。
本次数字钟的设计计时周期为24小时制,显示满刻度为23时59分59秒,星期显示方面为周一~周六+周日。
扩展功能的校时电路为自动校时,在校准‘分’‘时’显示后,可以在这个数的基础上继续运行,在整点报时功能中,当数字钟运行至整点前4秒时(例:23时59分56秒)即开始报时,持续5秒后停止,整点报时功能不可手动关闭。
秒表功能方面,设计给定脉冲为100HZ,为4位显示,最大设计计时为60.99秒,可以手动暂停/开始和清零。
最后是闹钟功能,闹钟设计响应时间为60秒,并且可以手动开启/关闭闹钟。
设计框图
单元模块设计
一、‘秒’电路
秒电路由两片74161计数器加秒脉冲来实现60进制的计数,再通过两片7447译码器将信号给到显示模块来实现秒的功能。
二、‘分’电路
‘分’电路和秒电路一样为60进制,由两片74160计数器和秒进位脉冲来实现分功能,再由7447译码器将信号给至显示电路
三、‘时’电路
‘时’电路和‘秒’‘分’电路有所不同,‘时’电路为24进制,可由两片74160计数器和分进位脉冲实现‘时’功能,再由译码器将信号给显示电路。
四、星期电路
基本功能中星期显示最为复杂,因为计数器默认初始值为0,可能导致下载至实验箱初始星期显示为0,另外根据要求需显示星期一、二、三、四、五、六、日,又加大了星期电路的设计难度,为解决上述问题,此处采用逻辑门通过一些逻辑关系来实现星期功能。
通过真值表对应的关系,画出卡诺图,化简得到A、B、C、D与QA、QB、QC、QD对应的逻辑关系,虽然逻辑电路比较复杂,但是很好的解决了计数器默认初始值为0导致星期显示存在0的情况,并且实现了周六到周日到周一的完美跳转。
五、校时功能
当重新接通电源或走时出现误差时都需要进行校正,本次校时电路采用的是自动校时,校准对象为‘分’‘时’‘星期’。
初始QN端口数据为1
在没有进位脉冲和校时需求的情况下,校时取非(位0)再与1与非为1,校时(为1)与进位端(为0)取与非为1,两个1信号再取与非后为0,输出信号给到低位的置数端,此时0信号使其既不计数也不校时。
而在有进位脉冲而没有校时需求的情况下,校时端取非(为0)再和1与非为1,校时(为1)与进位端(为1)取与非为0, 此后1再与0取与非得到1,此时1信号使其计数直到进位脉冲消失(即计数一个脉冲)。
最后在有校时需求的情况下,由于T触发器的作用,使校时翻转为0,校时取非(为1)再和1与非得到0,另外无论进位信号是1还是0和校时(为0)取与非均为1,此后0再和1与非得到1,自动校时功能打开,再次给T触发器脉冲即可关掉校时。
六、整点报时功能
一般电子钟都具有整点报时功能,即在时间出现整点时,电子钟会自动报时,以示提醒。
其作用方式为秒计数的个位和十位以及分计数的个位和十位都为零时,触发发声器,即其全部为0000的时候,将这16位全部接到非门,将低电平转换成高电平,然后两两相与,最后输出接上发声器,即可实现正点报时功能,本次报时时间延长至5秒从56秒时蜂鸣器便发出声响直至整点。
秒表功能实现计时,最大计时时间为60.99秒
闹钟功能的实现运用了8位数字比较器74688,来比较闹钟设定时间和当前数字钟运行时间,当其一致时触发蜂鸣器。
当前闹钟功能和秒表均可单独运行,但需让其能够在屏幕上显示,就涉及到屏幕复用的问题,要让屏幕能够实现数字钟和闹钟秒表的切换,且切换至秒表闹钟功能后数字钟仍在后台运行,就要运用到8位2选一数据选择器:
经过闹钟、秒表、校时扩展功能的添加,导致实验台按键不足,key1、key2、key3分别校时‘分’、‘时’‘星期’,key4用来手动清零秒表,key5是开始和暂停秒表计时,key6和key7原计划用来设定闹钟的时间,key8切换屏幕显示,这样一来闹钟功能就无法关闭,一旦到了设定的时间便会持续响一分钟,这显然是不符合常理的,所以决定添加按键复用,通过将key1和key8通过一些逻辑关系,实现了在数字钟显示时key1用来校准‘分’电路,而当切换至秒表和闹钟功能时,key1又可以用来调整闹钟的分钟位,相应的将key2和key8联合,实现了在数字钟显示时key2为‘时’校准按键,切换至秒表和闹钟功能时,key2同样可以调整闹钟的‘时’,至此key6和key7按键空出,再将闹钟开启和关闭功能赋予于key6,这样一来闹钟便可以自由开启和关闭,并且还多出一个key7按键,为日后增加其他扩展留下了可能。
九、总结
大二上学期,我们就学习了电子技术基础(数字部分和模拟部分),光凭课本上的知识,显得非常的枯燥无趣,并且我们也不是很清楚这个学科的具体用途,但是通过这两周的课程设计,收获可谓颇多,不仅让我学习了如何通过网络去查阅自己所需要的资料,还让我深入得运用了数电的知识去独立设计了数字钟,不论是结果还是过程,都十分的让人印象深刻,通过将自己所学的知识运用到现实生活的物件,让我们了解到大学所学知识的用途,这样更加激励我们在以后的学习中投入更多的精力。
通过这次课程设计不光有收获,而且还有一些对以后这类课程设计的反思:设计的过程中要预先给自己将来扩展留足够的空间,否则会造成电路十分的混乱,倘若出现逻辑问题,就十分的难被发现,事先将各个模块封装好这样修改电路也是个别模块的小修小改,另外在动手连接电路之前,可以再多想想有没有更加简洁的逻辑,否则太过复杂的逻辑造成电路响应时间延长,引起不必要的麻烦。