单片机课程设计——时间控制器

单片机课程设计——时间控制器

ID:9812663

大小:114.50 KB

页数:15页

时间:2018-05-10

单片机课程设计——时间控制器_第1页
单片机课程设计——时间控制器_第2页
单片机课程设计——时间控制器_第3页
单片机课程设计——时间控制器_第4页
单片机课程设计——时间控制器_第5页
资源描述:

《单片机课程设计——时间控制器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、单片机课程设计——时间控制器一.设计要求:设计一个以AT89C52为核心的时间控制器。可以实现时间显示和设置闹钟功能。用89S52单片机设计一个时间控制器,有8位数码管显示年月日及时分秒,具有日历和时钟功能,有一路输出控制电灯,有一路输出控制蜂鸣器,可以设置年月日及时分秒,可以设置一张时间表,该时间表记录什么时间开、关电灯,什么时间开、关蜂鸣器,而单片机按这张时间表来控制电灯和蜂鸣器。该时间表要求掉电时仍能保存不掉数据,所以需要用一片EEPROM来保存数据,如用24C02/04/08等。二.设计原理:在AT80C52单片机内部对机器周期进行计数,从而得到定时。由于AT89C

2、52的内部计数器是16位的,振荡脉冲频率为12MHZ,这样一个机器周期为1μs,计满一次为65536μs。显示器选用8位共阳极数码管,分别表示时、分、秒。同时选用两个74HC273作为片选和位选锁存器。同时经过P0口外加四个键盘用以调整时间。软件部分分为四大模块:调整初始时间、设置闹铃时间实现闹铃功能、显示时间和脉冲计数模块。脉冲计数模块,通过AT89C52的T0进行计数,设置T0计数溢出时,由内部硬件置位,同时开放中断,使系统进入中断服务程序。在定时器运行前,在其中先预置入计数初值,为了计算方便,在次设置中预置的初值为(65536-1000),这样一次“硬件计时周期”就可

3、定时1000μs。在中断服务程序设置进行1000次“硬件计时周期”就可得到1S。同理进行分、小时的计时。三.流程图:开始设置INT0中断向量开启INT0中断初始化时间延时1秒,秒数加1秒数已为60?分钟数加1,秒钟数清0分钟数已为60?小时数加1,分钟数1小时数已为24?小时数清0四.设计原理图:五.程序清单:SYSTEMequ0NMLIGHTONequ6NMLIGHTOFFequ7NMALARMONequ8ANALARMOFFequ9YEAR1equ10HYEAR2equ11HYEAR3equ12HYEAR4equ13HMONTH1equ14HMONTH2equ15HDA

4、Y1equ16HDAY2equ17HHOUR1equ18HHOUR2equ19HMINUTE1equ1AHMINUTE2equ1BHSECOND1equ1CHSECOND2equ1DHWEEKDAY1equ1EHWEEKDAY2equ1FH;timetableLIGHTONTequ100LIGHTOFFequ200ALARMONequ300ALARMOFFequ400org00hjmpstartorg03hjmpInt0Procorg1BHjmpT1Procorg13HjmpInt1Procorg30hstart:movDPTR,#SYSTEMmovxA,@DPTRjnzN

5、ext3;havevalueinexternalROMmovA,#01Hmovx@DPTR,AcallInitmovR4,#1;firstdisplayDateclrC;LEDturnoffinthefirstmovP3.0,CNext3:movTL1,#9cHmovTH1,#0ffHmovTMOD,#11H;Timer1mode1setbTR1setbET1setbIT0;smartheresetbIT1setbPX0setbEX0setbEX1setbEASECOND:movR5,#2callWaitSecondcplP3.1jbP1.3,Next7callSetDat

6、eNext7:jbP1.4,Next8callSetTimeNext8:movDPTR,#SECOND2movxA,@DPTRincAmovx@DPTR,A;secondsincrease1,thenwritetoROMxrlA,#10jnzSECONDmovA,#0movDPTR,#SECOND2movx@DPTR,A;clearSECOND2movDPTR,#SECOND1movxA,@DPTRincAmovx@DPTR,A;incSECOND1movxA,@DPTRxrlA,#6jnzSECONDmovA,#0movx@DPTR,AMINUTE:movDPTR,#MI

7、NUTE2movxA,@DPTRincAmovx@DPTR,A;writetoROMmovxA,@DPTRxrlA,#10;BCDcodejnzSECONDmovA,#0movx@DPTR,AmovDPTR,#MINUTE1movxA,@DPTRincAmovx@DPTR,A;writetoROMmovxA,@DPTRxrlA,#6jnzSECONDmovA,#0movx@DPTR,AHOUR:movDPTR,#HOUR2movxA,@DPTRincAmovx@DPTR,A;writetoROMmovxA,@DPT

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。