您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 单片机课程设计数字电子钟_湖南工学院
1单片机技术课程设计说明书数字电子钟系、部:学生姓名:指导教师:职称专业:班级:完成时间:2摘要本电子钟采用ATMEL公司的AT89S52单片机为核心,使用12MHz晶振与单片机AT89S52相连接,通过软件编程的方法实现以24小时为一个周期,同时8位7段LED数码管(两个四位一体数码管)显示小时、分钟和秒的要求,并在计时过程中具有定时功能,当时间到达提前定好的时间进行蜂鸣报时。该电子钟设有四个按键S1、S2、S3和S4键,进行相应的操作就可实现校时、定时、复位功能。具有时间显示、整点报时、校正等功能。走时准确、显示直观、精度、稳定等优点。整个过程就是先设计和焊接好硬件电路,再通过汇编语言编写应用程序来实现我们需要的功能,这期间,进行的软件仿真和调试是本设计的重点和难点。关键词电子钟;AT89S52;硬件设计;软件设计ABSTRACTThesystemuseasinglechipAT89C51ofATMEL’sasitscoretocontrolThecrystaloscillatorclock,usingofE-12MHZisconnectedwiththemicrocontrollerAT89S52,throughthesoftwareprogrammingmethodtoachievea24-hourcycle,andeight7-segmentLEDdigitaltube(twofourinonedigitaltube)displayshours,minutesandsecondsrequirements,andinthetimecourseofatimingfunction,whenthetimearrivedaheadofscheduledtimetobuzzagoodtimekeeping.TheclockhasfourbuttonsS1,S2,S3andS4key,andmaketheappropriateactioncanbeachievedwhentheschool,timing,reset.Withatimedisplay,alarmclocksettings,timerfunction,correctiveaction.Accuratetraveltime,displayandintuitive,precision,stability,andsoon.Thewholeprocesshavethreepoint.First,designinghardwarecircuitdesignandsoldering.second,throughtheassemblylanguagetowriteapplicationstorealizethatweneedtofunctionality,thisperiod,simulationanddebuggingarethefocusofthisdesignanddifficulty.KeywordsElectronicclock;;AT89S5;HardwareDesign;SoftwareDesign3目录1设计课题任务、功能要求说明及方案介绍……………………………………41.1设计课题任务………………………………………………………………41.2功能要求说明………………………………………………………………41.3设计总体方案介绍及原理说明……………………………………………42设计课题硬件系统的设计………………………………………………………52.1设计课题硬件系统各模块功能简要介绍…………………………………52.2设计课题电路原理图、PCB图、元器件布局图…………………………52.3设计课题元器件清单………………………………………………………63设计课题软件系统的设计………………………………………………………73.1设计课题使用单片机资源的情况…………………………………………73.2设计课题软件系统各模块功能简要介绍…………………………………73.3设计课题软件系统程序流程框图…………………………………………83.4设计课题软件系统程序清单………………………………………………124设计结论、仿真结果、误差分析、教学建议…………………………………134.1设计课题的设计结论及使用说明…………………………………………134.2设计课题的仿真结果………………………………………………………134.3设计课题的误差分析………………………………………………………144.4设计体会……………………………………………………………………144.5教学建议……………………………………………………………………15参考文献……………………………………………………………………………16致谢……………………………………………………………………………17附录……………………………………………………………………………1841设计课题任务、功能要求说明及方案介绍1.1设计课题任务设计一个具有特定功能的电子钟。具有时间显示、报时等功能。并有时间设定,时间调整功能。1.2功能要求说明设计一个具有特定功能的电子钟。该电子钟上电或按键复位后能自动显示系统提示符“P.”,进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从0时0分0秒开始运行,进入时钟运行状态;再次按电子钟启动/调整键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按启动/调整键再次进入时钟运行状态。1.3设计课题总体方案介绍及工作原理说明本电子钟主要由单片机、4*1独立键盘、显示接口电路和复位电路构成,设计课题的总体方案如图1.1所示:图1.1总体设计方案图本电子钟的所有的软件、参数均存放在AT89S52的FlashROM和内部RAM中,减少了芯片的使用数量简化了整体电路也降低了整机的工作电流。由于AT89S52芯片内部FlashROM有8KB,RAM有256个字节,故软件下载编译时有足够的存储空间。键盘采用动态扫描方式。利用单片机定时器及计数器产生定时效果通过编程形成数字钟效果,再利用数码管动态扫描显示单片机内部处理的数据,同时通过端口读入当前外部控制状态来改变程序的不同状态,实现不同功能。四位一体LED数码显示键盘4*1复位电路晶振电路AT89S52单片机P3P1P0数码管驱动74LS245数码管470欧限流电阻蜂鸣器52设计课题硬件系统的设计2.1设计课题硬件系统各模块功能简要介绍本设计的硬件系统主要采用以下基本模块来实现,单片机最小系统模块,输入模块、输出模块、电源模块。(1)单片机最小系统模块:包括低功耗、高性能CMOS8位微控制器AT89S52;复位电路;晶振电路。本本模块AT89S52系统控制核心,单片机系统复位由复位电路完成,单片机内部有一个高增益、反相放大器,其输入端为芯片引脚XTAL1,其输出端位位引脚XTAL2。通过这两个引脚在芯片外并接石英晶体振荡器和两只电容。这样就构成一个稳定的自激振荡器。(2)输入模块:本模块共用到了6个按键,1个电源开关,一个复位键,单片机运行期间,利用按键完成复位操作。4个按键独立式键盘,S1键控制电子钟的启动\调整状态,S2键为时针加1键,S3为分针加1键,S4键为秒针加1键。且S1、S2、S3、S4任一键都独自连一个I/O(P1.0、P1.1、P1.2、P1.3)口线,说明它们可以独立实现相应的电子钟功能。(3)输出模块:本次设计显示为8位,采用两个四位一体数码管(共阳极)作为显示窗口,既可以节约成本又能简化电路。数码管驱动为74LS245芯片。(4)电源模块:现在市面上销售的编程器有很多都是由PC机的USB口直接供电为了降低本设计的成本及节省设计时间,没有另外设计编程器,而直接购买了市场上的USB供电及下载器。2.2设计课题电路原理图、PCB图、元器件布局图设计课题电路原理图,见附录二;设计课题电路的PCB图,见附录三;设计课题电路的元器件布局图,见附录四;62.3设计课题元器件清单设计课题元器件清单如表2.1所示。表2.1设计所用元器件清单名称数量参数电阻3个1K共阳数码管2个4位一体电阻1个4.7kISP下载口插座1个普通插座1个40PIN电阻24个470电阻1个200按键9个单排插4个40PIN三极管9个驱动一套74ls245USB供电接口及供电线一套晶振及其插座一套12MHz电容2个33pF极性电容1个22μF排阻2个10K芯片1块AT89S52发光二极管9个开关1个短路帽4个温度传感器1个18B20蜂鸣器1个铜柱(带螺母)4个73设计课题软件系统的设计3.1设计课题使用单片机资源的情况设计课题使用单片机资源的情况如下:P0口输出数码管段选信号,P2口输出数码管位选信号;晶振12.02M;调整选择键S0:P1.0;增加键S1:P1.1;按一次使时针位加1;增加键S2:P1.2;按一次使分针位加1增加键S3:P1.3;按一次使秒针位加1;P3.1为蜂鸣器发声报时;70H-7FH;16个寄存器单元作为显示单元;66H做整点报时缓冲单元;寄存器R4做定时器0计数单元(不可再使用);寄存器R3做调整加1时合并单元(不可再使用)3.2设计课题软件系统个模块功能简要介绍本设计的软件系统主要采用以下基本模块来实现,主程序、调整程序、整点报时程序、中断服务程序、键盘输入程序模块、数码管及其驱动模块和延时模块。主程序:主要是用于对输入信号的处理、输出信号的控制和对各个功能程序模块的运用及其控制。调整程序:主要用于对时间的校准。整点报时程序:主要用于整点报时。中断服务程序:主要是用于电子钟的准确运行、数据输入过程中的闪烁。键盘输入程序模块:主要是用于确定按键并得到特定的键码值。数码管及其驱动模块:主要是用于驱动数码管及利用数码管显示时间。延时模块:程序中有两种延时子程序,一种是短延时用于判键按下等,一种是长延时。83.3设计课题软件系统程序流程框图系统软件采用汇编语言按模块化方式进行设计,然后通过Keil软件开发平台将程序转变成十六进制程序语言,接着使用Proteous进行仿真,读出显示数据。主程序流程框图如3.1所示;加1子程序如3.2所示;中断服务程序程序如3.3所示;键盘扫描子程序框图如3.4所示;显示子程序框图如3.5所示;开始程序初始化关闭定时器T0送“P.”显示代码S1键是否按下开中断EA=1键盘扫描子程序时、分、秒“—”数值处理,送缓冲区显示NY图3.1主程序流程框图9取十位数取个位数,并占A低半字节把十位数交换到低半字节个位数送缓冲单元取十位数占A高半字节加1十进制调整ADD1十位数送缓冲单元返回图3.2加1子程序流程框图10现场保护循环次数减1现场恢复秒值加1计数器重新加载秒显示缓冲单元清0分显示缓冲单元清0TIMET0分值加1返回是否满20次是否满60s是否满60min是否满24h时显示缓冲单元清0时值加1NYYYNNNY图3.3中断子程序11图3.4键盘扫描子程序图3.5显示子程序开始结束有键闭合键是否释放保存键值调显示子程序调延时去抖动YN有键闭合NNYY位控码送位控口(P3口)开始段控码送段控口(P0口)延时5毫秒修改段控码8位显示扫描是否完成查表取段控码修改位控码结束NY123.4设计课题软件系统程序清单设计课题软件系统程序清单,详见附录一。134设计结论、仿真结果、误差分析、教学建议4.1设计课题的设计结论及使用说明本设计为基于单片机的电子钟的设计。刚开始,我们很多地方理不清头绪,无从下手,但通过认真研究设计课题,找书上网查资料买元件,确定基本设计方案,对所用芯片功能进行查找、调试,然后画电路图制PCB板、打孔、溶铜、焊接等,真的经历了许多困难,却积累了很多宝贵的经验,本设计用2个四位一体的共阳数码管做为显示器,它显示时间值;设计中有4个按键,调整选择键S0:P1.0;增加键S1:P1.1;按一次使时针位加1;增加键S2:P1.2;按一次使分针位加1增加键S3:P1.3;按一次使秒针位加1;P3.1为蜂鸣器接口。当整点时间到时,蜂鸣器
本文标题:单片机课程设计数字电子钟_湖南工学院
链接地址:https://www.777doc.com/doc-4382999 .html