独立按键数字电子钟.

上传人:我** 文档编号:114448523 上传时间:2019-11-11 格式:DOC 页数:20 大小:322KB
返回 下载 相关 举报
独立按键数字电子钟._第1页
第1页 / 共20页
独立按键数字电子钟._第2页
第2页 / 共20页
独立按键数字电子钟._第3页
第3页 / 共20页
独立按键数字电子钟._第4页
第4页 / 共20页
独立按键数字电子钟._第5页
第5页 / 共20页
点击查看更多>>
资源描述

《独立按键数字电子钟.》由会员分享,可在线阅读,更多相关《独立按键数字电子钟.(20页珍藏版)》请在金锄头文库上搜索。

1、方案一独立键盘数字电子钟 电科0902班 组长:祁俐俐 组员:吉才 韩江 蔡杨 苏欣 李程 付磊 2012年7月12日独立键盘数字电子钟一、电子钟设计目的1、 学习数字电子钟的原理和实现方法。2、 掌握键盘的控制原理和编程方法。 3、 掌握51单片机定时器与中断的使用。4、 掌握LED数码管显示的原理及编程方法。 二 电子钟设计要求设计一个数字电子钟,要求可进行时、分、秒显示,最大显示时间为23:59:59,,并且具有时间调整、闹铃、启动、暂停和清零(复位)等功能。可以完成以下几点功能: 1)六个LED上实现正常的时间显示,24小时制 2)实现时间的正确调节 3)闹钟的定时及到时间之后的音乐响

2、铃4)独立键盘,设有暂停键,启动键,清零键,时调整键,分调整键,秒调整键,闹钟键。三 设计方案规划与选定 根据要求采用AT89C51单片机进行设计,AT89C51 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS- 51指令系统及80C51引脚结构。这样,既能做到经济合理又能实现预期的功能。在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。程序可分为闹钟的音乐程序、时间显示程序、闹钟显示程序、调时显示、定时程序,走时程序,

3、复位的模块化的程序。硬件接线图如图所示:原理分析如下:主程序:执行主程序,按照得到的的1到7键值转到相应的子程序去执行相应的功能。模块一:时间显示模块:用51单片机的6个LED七段数码管,依次分别显示时,分,秒,中间用小数点分开。正常走时时秒数满60进位,分钟加1,分钟满60小时加1,小时满24清0模块二:显示时间调整模块:当按下键值为1,2,3的开关后,进入时间调整程序,对六个数码管相应位的的控制按照我们生活中的正常逻辑进行控制。进行调整时间模块三:闹钟音乐模块:当按下键值为6的开关后,进入闹钟时间设置状态,设定相应的时间,当到了设定的时间之后,进入产生中断,进入闹钟音乐程序模块四:键盘扫描

4、得到按键值函数,根据键值转到相应的模块执行相应的功能。各个模块程序设计好之后,要进行最后的整合,函数的调用参数设置要正确,使程序能够正常的运行,在keil上调试通过之后,检查proteus中硬件连接有没有错误,确定无误后,在proteus中进行模拟实验,最后可以到实验室进行真实元器件的连接。四硬件设计1.总体设计方案2.硬件电路AT89C51晶振电路复位电路按键数码管驱动LED数码显示蜂鸣器P0口P1口P2口(1)AT89C511、电源引脚Vcc电源端,GND接地端,工作电压为5V, 2、外接晶体引脚晶振连接的内部、外部方式图XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用

5、外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。晶振的频率可以在1MHz-24MHz内选择。电容取30PF左右。系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。AT89单片机内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震

6、荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为12MHz,电容应尽可能的选择陶瓷电容,电容值约为22F。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。3、复位RST在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后P0P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的00H处开始运行程序。复位是由外部的复位电路来实现的。片内复位电路是复位引脚

7、RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,由复位电路采样一次。复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是按钮复位电路。4、输入输出引脚(1) P0端口P0.0-P0.7 P0是一个8位漏极开路型双向I/O端口,端口置1(对端口写1)时作高阻抗输入端。作为输出口时能驱动8个TTL。对内部Flash程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电阻。在访问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位)/数据总线,访问期间内部的上拉电阻起作用。(2) P1端口P1.0P1.7 P1

8、是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。(3) P2端口P2.0P2.7 P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收高8位地址和控制信息。(4) P3端口P3.0P3.7 P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。(2)键盘电路设计该设计只用了一个键盘,但实现的功能却是比较完善,减少了硬件资源的损耗,该键盘可以实现小

9、时和分钟的调节以及控制是否进入省电模式。当按键按下又松开,可以实现屏蔽数码管显示的功能,达到省电的目的;直接按下不松开,则可以通过按键实现分钟的累加,每按一次分钟加一;而连续两次按下按键不放松,则可实现小时的调节,同样每按一次小时加一。达到时间调节的目的。选择的多功能按键如图所示。 (3)数码管:数码管字样LED数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8个。如图3-10。这些段分别由字母a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后,这些特定的段就会发亮,以形成我们眼睛看到的字样了。如:显示一个“2”字,那么应当是a亮b亮g亮e亮d亮f不亮c不亮dp不亮。

10、LED数码管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。小尺寸数码管的显示笔画常用一个发光二极管组成,而大尺寸的数码管由二个或多个发光二极管组成,一般情况下,单个发光二极管的管压降为1.8V左右,电流不超过30mA。发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。常用LED数码管显示的数字和字符是0、1、2、3、4、5、6、7、8、9。(4)74LS3731D8D为8个输入端 1Q8Q为8个输出端LE是数据锁存控制端;当LE=1时,锁存器输出端同输入端;当LE由“1”变为“0”时,数据输入锁存器中。OE为输出允许

11、端;当OE=“0”时,三态门打开;当OE=“1”时,三态门关闭,输出呈高阻状态。在MCS-51单片机系统中,常采用74LS373作为地址锁存器使用,其连接方法如电路硬件图所示。其中输入端1D8D接至单片机的P0口,输出端提供的是低8位地址,LE端接至单片机的地址锁存允许信号ALE。输出允许端OE接地,表示输出三态门一直打开。五软件设计主程序以及各子程序的流程图如下:开始启动定时器按键检测时间显示主程序流程图查表取断控码开始位控码送位控码2段控码松段控口0延时修改段控码显示子程序修改位控码位显示扫描是否完成成结束NYNYNYhour加1显示时间结束开始sceond按键按sceond加1minut

12、e按键按minute加1hour按键按下按键处理子程序N24小时到分单元清零,时单元加1NNNYY时单元清零时间显示中断返回开始一秒时间到60秒时间到60分钟到秒单元加1秒单元清零,分单元加1YY定时器中断子程序软件设计思路如下:1主程序设计:主程序中完成对定时器设置的初始化,然后进入无限循环的查询模块,动态扫描LED显示模块,使显示走时正常。同时在循环中完成对键盘的状态(是否有键按下,如有是哪一个)进行监控,如果有键按下根据其键值跳转到相应的子程序中进行执行,完成相应的功能后会自动跳转回来。这样整个程序就实现了连续有效的运行。2.按键扫描子程序:首先根据端口状态判断是否有键按下,如果没有就跳

13、过读键值这个阶段。如果有键按下就通过扫描判断出所按下键的位置,并相应的形成键值,保存在一个全局变量中等待被查询。然后跳出子程序。3.显示子程序:该子程序在LED扫描中被调用。首先根据参数判别是显示时间还是显示闹钟,然后针对六个位形成相应的段码值。通过参数值在相应位输出显示。4.时间及闹钟设定子程序:本程序完成时间的修改及闹钟的设置,对时间和闹钟的设置是通过修改时间值的全局变量或闹钟值的全局变量来完成的。在修改过程中正在修改位用时间调整键来显示,当长按时间调整键时,显示闹钟调整页面,当六位全部修改完毕,或者按下确定/退出键后自动跳出子程序。5.响铃子程序:当设定的闹钟时间到时,转入本程序执行。本

14、程序通过读取频率表来设定T1定时中断的设定,以在响铃端口输出频率一定的脉冲波。同时通过读取时间表控制每一频率所响的时间,这样就可以在扬声器输出音乐了。同时在程序中添加了键盘扫描环节,一旦按下退出键,就关闭T1定时器,跳出程序,响铃就可以终止。六调试本次仿真实验,在调试时遇到了不少的困难,比如说按键一直闪烁,通过查资料,最后注释掉了按建时的延时即可。闹钟键一直没有设计好,进入闹钟设置页面后,调整闹钟的时候时间也在变化,造成了盲调,是本实验的一大缺陷。但是本次实验采用的是“模块化”,所以调试过程中可以清楚的知道是那部分出了问题,征对性的进行修改,避免了不必要的麻烦,也加快了实验进程。独立按键数字电子钟,只是我们组为做矩阵

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号