基于.单片机的简易电子时钟设计.docx

上传人:王** 文档编号:920666 上传时间:2024-03-01 格式:DOCX 页数:16 大小:48.64KB
下载 相关 举报
基于.单片机的简易电子时钟设计.docx_第1页
第1页 / 共16页
基于.单片机的简易电子时钟设计.docx_第2页
第2页 / 共16页
基于.单片机的简易电子时钟设计.docx_第3页
第3页 / 共16页
基于.单片机的简易电子时钟设计.docx_第4页
第4页 / 共16页
基于.单片机的简易电子时钟设计.docx_第5页
第5页 / 共16页
基于.单片机的简易电子时钟设计.docx_第6页
第6页 / 共16页
基于.单片机的简易电子时钟设计.docx_第7页
第7页 / 共16页
基于.单片机的简易电子时钟设计.docx_第8页
第8页 / 共16页
基于.单片机的简易电子时钟设计.docx_第9页
第9页 / 共16页
基于.单片机的简易电子时钟设计.docx_第10页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于.单片机的简易电子时钟设计.docx》由会员分享,可在线阅读,更多相关《基于.单片机的简易电子时钟设计.docx(16页珍藏版)》请在优知文库上搜索。

1、基于单片机的简易电子时钟设计1设计任务与要求1.1 设计背景数字钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的开展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。尽管目前市场上已有现成的数字钟集成电路芯片出售,价格廉价、使用也方便,但鉴于单片机的定时器功能也可以完成数字钟电路的设计,因此进展数字钟的设计是必要的。在这里我们将已学过的比较零散的数字电路的知识有机的、系统的联系起来用于实际,来培养我们的综合分析和设计电路,写程序、调

2、试电路的能力。单片机具有体积小、功能强可靠性高、价格低廉等一系列优点,不仅已成为工业测控领域普遍采用的智能化控制工具,而且已渗入到人们工作和和生活的各个角落,有力地推动了各行业的技术改造和产品的更新换代,应用前景广阔。1.2 课程设计目的(1)稳固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力;(2)培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力;(3)过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。1.3 设计要求1) .时制式为24小时制。2) .采用LED

3、数码管显示时、分,秒采用数字显示。3) .具有方便的时间调校功能。4) .计时稳定度高,可准确校正计时精度。2总体方案设计2.1 实现时钟计时的基本方法利用MCS-51系列单片机的可编程定时/计数器、中断系统来实现时钟计数。(1)计数初值计算:把定时器设为工作方式1,定时时间为50ms,那么计数溢出20次即得时钟计时最小单位秒,而100次计数可用软件方法实现。假设使用T/C0,方式1,50ms定时,fosc=12MHzo那么初值X满足(216-X)X1/12MHZXI2Us=50000UsX=1553600111100101100003CB0H(2)采用中断方式进展溢出次数累计,计满20次为秒

4、计时(1秒);(3)从秒到分和从分到时的计时是通过累加和数值比较实现。2.2 电子钟的时间显示电子钟的时钟时间在六位数码管上进展显示,因此,在内部RAM中设置显示缓冲区共8个单元。1.ED8LED7LED6LED5LED4LED3LED2LEDl37H36H35H34H33H32H31H30H时十位时个位分隔分十位分个位分隔秒十位秒个位2.3 电子钟的时间调整电子钟设置3个按键通过程序控制来完成电子钟的时间调整。A键调整时;B键调整分;C键复位2.4 总体方案介绍2.4.1 计时方案利用AT89S51单片机内部的定时/计数器进展中断时,配合软件延时实现时、分、秒的计时。该方案节省硬件成本,且能

5、使读者在定时/计数器的使用、中断及程序设计方面得到锻炼与提高,对单片机的指令系统能有更深入的了解,从而对学好单片机技术这门课程起到一定的作用。2.4.2 控制方案AT89S51的PO口和P2口外接由八个LED数码管(LED8LEDD构成的显示器,用PO口作LED的段码输出口,P2口作八个LED数码管的位控输出线,Pl口外接四个按键A、B、C构成键盘电路。AT89S51是一种低功耗,高性能的CMoS8位微型计算机。它带有8KFlash可编程和擦除的只读存储器(EPROM),该器件采用ATMEL的高密度非易失性存储器技术制造,与工业上标准的80C51和80C52的指令系统及引脚兼容,片内Flash

6、集成在一个芯片上,可用与解决复杂的问题,且成本较低。简易电子钟的功能不复杂,采用其现有的I/O便可完成,所以本设计中采用此的设计方案。3系统硬件电路设计根据以上的电子时钟的设计要求可以分为以下的几个硬件电路模块:单片机模块、数码显示模块与按键模块,模块之间的关系图如下面得方框电路图1所示。图1硬件电路方框图3.1 单片机模块设计3.2 .1芯片分析AT89C51单片机引脚图如下:图2AT89C51引脚图MCS-51单片机是标准的40引脚双列直插式集成电路芯片,其各引脚功能如下:VCC:+5V电源。VSS:接地。RST:复位信号。当输入的复位信号延续两个机器周期以上的高电平时即为有效,用完成单片

7、机的复位初始化操作。XTALl和XTAL2:外接晶体引线端。当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。PO0:PO口为一个8位漏极开路双向I/O口,当作输出口使用时,必须接上拉电阻才能有高电平输出;当作输入口使用时,必须先向电路中的锁存器写入“1,使FET截止,以防止锁存器为“0状态时对引脚读入的干扰。Pl:Pl口是一个内部提供上拉电阻的8位双向I/O口,它不再需要多路转接电路MUX;因此它作为输出口使用时,无需再外接上拉电阻,当作为输入口使用时,同样也需先向其锁存器写“1,使输出驱动电路的FET截止。P2口:P2口电路比Pl口电路多

8、了一个多路转接电路MUX,这又正好与PO口一样。P2可以作为通用的I/O使用,这时多路转接电路开关倒向锁丰存器Q端。P3:P3特点在于,为适应引脚信号第二功能的需要,增加了第二功能控制逻辑。当作为I/O口使用时,第二功能信号引线应保持高电平,与非门开通,以维持从锁存器到输出端数据输出通路的畅通。当输出第二功能信号时,该位应应置“1,使与非门对第二功能信号的输出是畅通的,从而实现第二功能信号的输出,具体第二功能如表1所示。1.1.2 晶振电路右图所示为时钟电路原理图,在AT89S51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,输出端为引脚XTAL2。而在芯片内部,XTALI和X

9、TAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。时钟电路产生的振荡脉冲经过触发器进展二分频之后,才成为单片机的时钟脉冲信号。图3晶振电路1.1.3 复位电路单片机复位的条件是:必须使RST/VPD或RST引(9)加上持续两个机器周期即24个振荡周期)的高电平。例如,假设时钟频率为12MHz,每机器周期为ls,那么只需2Us以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。单片机常见的复位如以以下图。电路为上电复位电路,它是利用电容充电来实现的。在接电瞬间,RESET端的电位与VCC一样,随着充电电流的减少,RESET的电位逐渐下降。只要保证RESET为高电

10、平的时间大于两个机器周期,便能正常复位。该电路除具有上电复位功能外,假设要复位,只需按图中的RESET键,此时电源VCC经电阻Rl、R2分压,在RESET端产生一个复位高电平。图4单片机复位电路3.2 数码显示模块设计系统采用动态显示方式,用Po口来控制LED数码管的段控线,而用P2口来控制其位控线。动态显示通常都是采用动态扫描的方法进展显示,即循环点亮每一个数码管,这样虽然在任何时刻都只有一位数码管被点亮,但由于人眼存在视觉残留效应,只要每位数码管间隔时间足够短,就可以给人以同时显示的感觉。图5数码显示电路3.3 按键模块以以下图为按键模块电路原理图,A为复位键,B为时钟调控键,C为分钟调控

11、键。图6按键模块电路原理图4、系统软件设计4.1 软件设计分析在编程上,首先进展了初始化,定义程序的的入口地址以及中断的入口地址,在主程序开场定义了一组固定单元用来储存计数的时.分.秒,在显示初值之后,进入主循环。在主程序中,对不同的按键进展扫描,实现秒表,时间调整,复位清零等功能,系统总流程图如以以下图7:图7系统总体流程图4.2 源程序清单ORGOOOOHMOV30H,#l设置时钟的起始时间12.00.00,分配显示数据内存MOV31H,#2MOV32H,#0MOV33H,#OMOV34H,#0MOV35H,#OMOVTMOD,#01启动计数器XSO:SETBTRO使TRO位置1MOVTL

12、0,#OOHXS:MOV40H,#0FEHMOVDPTR,#TABMOVP2,40HMOVA,30HMOVCA,A+DPTRMOVPO,A1.CALLYSlMSMOVPO,#OFFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,31HADDA,#10扫描控制字初值取段码表地址从P2 口输出取显示数据到A查显示数据对应段码段码放入PO中显示IMSPo端口清零取扫描控制字放入A中A中数据循环左移放回40H地址段内进位显示MOVCA,A+DPTR1.CALLYSlMSMOVP0,#0FFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,32HMOVCA,A+DP

13、TRMOVPO,A1.CALLYSlMSMOVPO,#OFFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,33HADDA,#10LCALLYSlMSMOVPO,#OFFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,34HMOVCA,A+DPTRMOVPO,A1.CALLYSlMSMOVPO,#OFFHMOVA,40HRLAMOV40H,AMOVP2,40HMOVA,35HLCALLYSlMSMOVPO,#OFFHMOVA,40HRLAMOV40H,AJBTFOJIA如果TFO为1时,那么执行JIA,否那么顺序执行JNB P 1.0,P100JNB P

14、l. 1,Pl000JNB P 1.2,P10000AJMP XSPlOO: MOV 30H,#0为0那么转移到Pl(K)为0那么转移到PlOoo为0那么转移到PloOOO跳转到XS清零程序MOV31H,#0MOV32H,#OMOV33H,#OMOV34H,#0JIA:CLRTFOTFO清零PlOOOO: JNB P 1.2,P10000为0那么转移到PlOOOoMOVA,35H秒单位数据到ACJNEA,#9JIAl与9进展比较,大于9就转移到JlAlMOV35H,0秒个位清零MOVA,34H秒十位数据到ACJNEA,#5,JIA10与5进展比较,大于5就转移到JIAlOMOV34H,#0秒十位清零MOVA,33H取分的个位到ACJNEA,#9,JlA100与9进展比较,大于9就转移到JlA100MOV33H,#O分的个位清零MOVA,32H分十位数据到ACJNEA,#5,JIA1000与5进展比较,大于5就转移到JIA100OMOV32H,#O分的十位清零P1000:JNBP1.1,P1OOO为0那么转移到P100oMOVA,31H时个位数据到ACJNEA,#9,JIA10000与9进展比较,大于9就转移到JlA100(X)MOVA,30H时十位数据到ACJNEA,#2,JIA100000与2进展比较,大于5就转移到JlAIOoOoOMOV30H,#0时的十位清零AJMPXSO

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 通信/电子 > 电子设计

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!