基于单片机的倒计时牌的设计

基于单片机的倒计时牌的设计

ID:9032879

大小:304.98 KB

页数:17页

时间:2018-04-15

基于单片机的倒计时牌的设计_第1页
基于单片机的倒计时牌的设计_第2页
基于单片机的倒计时牌的设计_第3页
基于单片机的倒计时牌的设计_第4页
基于单片机的倒计时牌的设计_第5页
资源描述:

《基于单片机的倒计时牌的设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、倒计时牌1.方案选择1.1题目:倒计时牌1.2要求:1.2.1实现日历功能;1.2.2显示距倒计时时刻还有多长时间(显示天、时、分、秒);1.2.3倒计时的时间可人为设定;1.3总体设计:本倒计时牌以AT89C51单片机作为核心,最长可以倒计时100天。可以显示距倒计时时刻还有多长时间,显示格式为天(十位,个位)、时(十位、个位)、分(十位、个位)、秒(十位、个位);倒计时的时间可以人为设定;另外还可以显示当前的日历,显示格式为年(四位),月(两位),日(两位)。倒计时设置时间时的位切换、设定数值、启动定时器、切换日历通过外部中断来实现。倒计时牌天、时、分、秒的计时分别利用100

2、、24、60、60进制自减计数来实现。倒计时的显示电路由LED数码管组成,利用8只数码管显示,从左至右依次显示为天(十位,个位)、时(十位、个位)、分(十位、个位)、秒(十位、个位)及年(四位),月(两位),日(两位)。2.硬件原理电路图的设计及分析倒计时牌硬件系统的设计,关键是其显示器接口电路的设计,本设计采用直接利用单片机AT89C51的并行I/O口构成倒计时牌显示接口电路,其硬件系统主要包括单片机(包含晶振、电源)、控制电路(设置初始时间以及日历切换)及显示接口电路。2.1模块方框图硬件系统晶电数单振源码片管机2.2电路图2.3使用说明倒计时牌具有如下工作状态:设置状态和运

3、行状态。倒计时牌上电后,显示为全0。这时要设置倒计时时间,按K1,开始设置时间,这时设置的是秒,按一次K2,秒加1;再按一次K1,设置分,依次类推;设置完天后,按K1则启动定时器,开始倒计时。在倒计时牌运行状态下,按K2,显示当前的日期(年、月、日);再按一次,回到倒计时间显示。注:INT0对应的开关为位切换/启动按钮K1;INT1对应的开关为修改/日历切换按钮K2。3.程序设计及分析3.1软件系统模块图软件系统转显T外外延主换示0部部时程子子溢中中子序程程出断断程序序中01序3.2各子程序设计3.2.1主程序主程序(MAIN)的主要功能是初始化程序、转换子程序和调用延时子程序以

4、及数码管的断码表,其流程图如下:开始初始化转换子程序显示子程序调用延时程序代码(加注释)如下:MAIN:MOVTMOD,#01H;定时器T0设为方式一MOVR1,#17;日历MOVR2,#00H;切换显示(日历和倒计时的切换)MOVR5,#0AH;十次中断产生一秒MOVR3,#00H;利用外部中断0对天、时、分、秒进行切换MOVR4,#00H;当倒计时开始(R3=5)时对倒计时的初值不能再进行设置MOV30H,#00H;天MOV31H,#00H;时MOV32H,#00H;分MOV33H,#00H;秒MOV34H,#20;年的前两位MOV35H,#09;年的后两位MOV36H,#0

5、6;月MOV37H,#17;日SETBEX0SETBEX1SETBIT0;外部中断0为边沿触发SETBIT1;外部中断1为边沿触发SETBET0SETBEAMOVTH0,#3CH;定时器T0置初值MOVTL0,#0B0H/*下面为转换子程序*/LOOP:/*下面为显示程序*/DISPLY:/*下面为延时程序*/DL1ms:MOVR7,#02HDL:MOVR6,#0FFHDL6:DJNZR6,DL6DJNZR7,DLRET3.2.2转换子程序及显示子程序模块转换子程序(LOOP)将中断服务程序中产生的天、时、分、秒数据,转换成适应LED数码管显示的数据,并将其存放在缓冲区中;各个要

6、显示的单元都存放在数据缓冲区中,如下表:单元存放地址显示缓冲区(十位)显示缓冲区(个位)天30h40h41h时31h42h43h分32h44h45h秒33h46h47h年的前两位34h48h49h年的后两位35h4ah4bh月36h4ch4dh日37h4eh4fh显示子程序(DISPLY)动态控制数码管的点亮同时显示数据,完成8个LED数码管的动态显示,显示字符通过查表方式实现,在显示过程中调用延时程序;各显示单元显示前须将其数据由存放地址单元拆分后传送至显示缓冲区中,再将其传送至对应的端口。下面是秒的转换子程序和显示模块LOOP:MOVDPTR,#DMB;段码表首地址放进DPT

7、RMOVA,33H;对秒进行拆分MOVB,#10DIVABMOVCA,@A+DPTRMOV46H,A;秒的十位对应的段码放进缓冲区46HMOVA,BMOVCA,@A+DPTRMOV47H,A;秒的个位对应的段码放进缓冲区47H/*下面为显示程序*/DISPLY:CLRP2.7MOVA,47HMOVP1,ALCALLDL1msSETBP2.7CLRP2.6MOVA,46HMOVP1,ALCALLDL1msSETBP2.63.2.3定时器T0中断定时器T0溢出中断(IT0P)程序主要

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

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

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