单片机毕业设计LED数字倒计时器

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

单片机/微机接口课程设计说明书1目录1设计任务与要求............................................22设计方案..................................................23硬件电路设计与主要元器件分析..............................33.16位LED数码管显示.....................................33.2LED倒计时器元件清单...................................33.3主要元器件分析.........................................43.3.1单片机AT89S52.....................................43.3.2集成块74LS245.....................................43.4基本硬件电路分析.......................................53.4.1复位电路............................................53.4.2按键电路...........................................53.5LED倒计时器原理图.....................................64软件设计...................................................74.1程序流程图..............................................74.2程序清单...............................................85调试过程.................................................226结论.....................................................237附录.....................................................23参考资料:..................................................25单片机/微机接口课程设计说明书21设计任务与要求近年来随着计算机在社会领域的渗透,单片机的应用正在不断深入人们的生活,同时带动传统控制检测日新月异。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面的知识是不够的,还应根据具体硬件结构,针对具体应用特点与软件结合。本项目讨论了LED数字倒计时器的设计与制作,此方案线路简单,成本低,应用前景广阔。本次设计的任务与要求是,使基于AT89S52单片机的LED数字倒计时器主要具有如下功能:(1)LED数码管显示倒计时时间。(2)倒计时过程中能设置多个闹钟,当倒计时值倒计到设定值时会发出约2s的报警声音。(3)通过按键可以对倒计时设定初值。倒计时初始值范围在24:00:00~00:00:60之间,用户可根据需要对其进行设置,设置成功后复位初始值为成功设定值。2设计方案LED数字倒计时器以AT89S52单片机为核心,系统包括六位数码管显示电路,按键电路,电源电路,复位电路,晶振电路以及蜂鸣器电路几部分,LED数字倒计时器设计框图如下:图1LED数字倒计时器设计框图AT89S52单片机电源电路复位电路晶振电路6位数码管显示电路蜂鸣器电路按键电路单片机/微机接口课程设计说明书33硬件电路设计与主要元器件分析3.16位LED数码管显示本项目设计采用了6位数码管显示电路,在设计6位LED显示时,为了简化电路,降低成本,采用动态显示方式,6个LED显示器共用一个8位的I/O,6位LED数码管的位选线分别由相应的P2.0~p2.5控制,而将相应的段选线并联在一起,由一个8位的I/O口控制,即p0口。译码显示电路将“时”、“分”、“秒”显示数字进行校对调整。3.2LED倒计时器元件清单表1LED数字倒计时器元件清单元件名称型号数量/个用途单片机AT89S521控制核心晶振12MHz1晶振电路电容30pF2晶振电路电解电容22μF/10V1复位电路电阻10kΩ1复位电路按键5按键电路数码管共阳6显示器集成块74LS2453驱动三极管2N50881蜂鸣器喇叭8Ω/0.5W1蜂鸣器电阻1kΩ2蜂鸣器单片机/微机接口课程设计说明书4电阻100Ω1蜂鸣器电阻2.7kΩ4上拉电阻电阻330Ω8上拉电阻电源+5V/0.5A1提供+5V集成块74LS071驱动3.3主要元器件分析3.3.1单片机AT89S52AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。。3.3.2集成块74LS24574LS245是我们常用的芯片,用来驱动led或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。74LS245还具有双向三态功能,既可以输出,也可以输入数据。当片选端/CE低电平有效时,DIR=“0”,信号由B向A传输;(接收)*DIR=“1”,信号由A向B传输;(发送)当/CE为高电平时,A、B均为高阻态。由于P2口始终输出地址的高8位,接口时74LS245的三态控制端/1G和/2G接地,P2口与驱动器输入线对应相连。P0口与74LS245输入端相连,/E端接地,保证数据现畅通。单片机/微机接口课程设计说明书53.4基本硬件电路分析3.4.1复位电路复位是单片机的初始化操作,只需给AT89S52的复位引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可得单片机复位,复位时,PC初始化为0000H,使单片机从OUT单元开始执行程序。除了进入系统的正常初始化之外由于程序运行出错或操作错误而使系统处于死锁状态,为摆脱死锁状态,也需按复位键使得RST脚为高电平,使单片机重新启动。图2复位电路原理图3.4.2按键电路按键电路的按键功能说明:(1)K1用于设置时间和闹钟的小时。(2)K2用于设置小时以及设置闹钟的开关。(3)K3用于设置分钟和闹钟的分钟。(4)K4用于设置完成退出。单片机/微机接口课程设计说明书63.5LED倒计时器原理图图3LED数字倒计时器原理图LEA31XTAL119XTAL218RST9P3.7RD17P3.6WR16P32/INT012P33/INT113P34/T014P35/T115P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P0.0/ADS039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P2.7/A1528PSEN29ALE30P31/TXD11P30/RXD10AT89C51Q2N390430pFC150pFC220pFC312MHzk1k2k3k410KΩR827KΩR127KΩR227KΩR327KΩR41KΩR81KΩR5100ΩR7L61SPEAKER330Ω×6A0A7B0B7CE1A0A7B0B7CE1A0A7B0B7CE1AABBCCFFDDEEGGDPDP1122AABBCCFFDDEEGGDPDP1122AABBCCFFDDEEGGDPDP1122330Ω×8+5V+5V+5V+5V+5V+5V+5VR9~R16单片机/微机接口课程设计说明书74软件设计4.1程序流程图图4LED数字倒计时器程序流程图开始CPU系统初始化定时器0初始化中断初始化设置时间?设置闹铃时间显示刷新启动走时有关变量初始化时分变化?刷新显示1秒到秒指示闹铃时间?蜂鸣器结束YNYNYNYN单片机/微机接口课程设计说明书84.2程序清单程序清单如下:K1EQUp1.0K2EQUP1.1K3EQUp1.2K4EQUP1.3ORG0000HLJMPMAINORG000BHLJMPTIMEORG0100HMAIN:MOVSP,#50HMOV20H,#3CH;时间BINSECONDMOV21H,#3CH;BINMINUTEMOV22H,#18H;BINHOURMOV23H,#01H;闹铃BINMINUTEMOV24H,#01H;BINHOURMOV25H,#00H;定义一个标志位MOV30H,#00H;时间BCDSECONDMOV31H,#00HMOV32H,#00H;BCDMINUTEMOV33H,#00HMOV34H,#00H;BCDHOURMOV35H,#00HMOV36H,#01H;闹铃BCDMINUTE单片机/微机接口课程设计说明书9MOV37H,#00HMOV38H,#01H;BCDHOURMOV39H,#00HMOVTMOD,#01H;16位计数器T0,方式1MOVTHO,#03CH;赋初值MOVTLO,#0B0HMOVIE,#10000111B;开中断TO,EA=1SETBTRO;T0启动计数MOVR2,#14H;计数器MOVP2,#0FFHLOOP:LCALLTIMEPRO;调用现在时间与闹铃时间比较程序LCALLDISPLAY1;调用现在时间显示子程序JBK1,M1;判断按键是否按下LCALLXIAOZHEN1;调用消抖程序MOVC,25H.0JCA1A1:CLR25H.0LCALLSETTIME;调用设置现在时间子程序LJMPLOOPM1:JBK2,M2LCALLXIAOZHEN2MOVC,25H.0JCA2A2:CLR25H.0LCALLSETTIME;调用设置闹钟的程序单片机/微机接口课程设计说明书10LJMPLOOPM2:JBK4,M3A3:LCALLXIAOZHEN3MOVC,25H.0JCA4A4:CLR25H.0M3:LJMPLOOPSETTIME:LO:LCALLDISPLAY1JBK2,L1LCALLXIAOZHEN4MOVC,25H.0JCA5A5:CLR25H.0DEC22HMOVA,22HCJNEA,#18H,G012MOV22H,#00HMOV34H,#00HMOV35H,#00HLJMPL0L1:JBK3,L2LCALLXIAOZHEN5MOVC,25H.0JCA6单片机/微机接口课程设计说明书11A6:CLR25H.0DEC21HMOVA,21HCJNEA,#3CH,G011MOV21H,#00HMOV32H,#00HMOV33H,#00HLJMPL0GO11:MOVB,#0AHDIVABMOV32H,BMOV33H,ALJMPL0GO12:MOVB,#0AHDIVABMOV34H,BMOV35H,ALJMPL0L2:JBK4,L0LCALLXIAOZHEN3MOVC,25H.0JCAXAX:CLR25H.0RETSETATIME:LCALLDISPL

1 / 25
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功