独立按键数字电子钟要点

上传人:公**** 文档编号:458923728 上传时间:2023-03-22 格式:DOCX 页数:22 大小:465.26KB
返回 下载 相关 举报
独立按键数字电子钟要点_第1页
第1页 / 共22页
独立按键数字电子钟要点_第2页
第2页 / 共22页
独立按键数字电子钟要点_第3页
第3页 / 共22页
独立按键数字电子钟要点_第4页
第4页 / 共22页
独立按键数字电子钟要点_第5页
第5页 / 共22页
点击查看更多>>
资源描述

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

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

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

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

4、钟音乐程序 模块四:键盘扫描得到按键值函数,根据键值转到相应的模块执行相应的功能。各个模块程序设计好之后,要进行最后的整合,函数的调用参数设置要正确,使 程序能够正常的运行,在keil上调试通过之后,检查proteus中硬件连接有没有 错误,确定无误后,在proteus中进行模拟实验,最后可以到实验室进行真实元 器件的连接。四.硬件设计1 .总体设计方案2 .硬件电路(1) AT89C51- U11OXTAI_1PO .O/ADOFO.1/AD1 PO 2/AD2XTAL2PO .3/AD3P0.-4/AO4 PO 5/AD5 FO 6/ADO RSTPO 7/AD7F2.OXASP2,2/A

5、1O PSENP2r3/A11ALEP2.4/A12EAP2 P5/A13P2.8/A1 P2 .7VA15P1.0P3.0/RXID303B373G9SO3433322I *2223243CL253II2G2SIIO21 13.2P32j1NTOP13P3.3/I NT1F 1 启P3.4TTOP1.5P3,5/T1.6PS.BAiuRP1P7P3,7XRD124_整3146157ne817jft.T89.C51 -,,-r-1、电源引脚Vcc电源端,GN荣地端,工作电压为5V,2、外接晶体引脚L1T-C1I11 T 1,内部方式XTAL2XTALIGNO依空XTAL2外部惊荡信号12 .外

6、需方式XTAL1GND晶振连接的内部、外部方式图XTAL1是片内振荡器的反相放大器输入端,XTAL测是输出端,使用外部振荡 器时,外部振荡信号应直接加到 XTAL而XTAL2悬空。内部方式时,时钟发生 器对振荡脉冲二分频,如晶振为12MHz时钟频率就为6MHz晶振的频率可以在 1MHz-24MH内选择。电容取30PF左右。系统的时钟电路设计是采用的内部方式, 即利用芯片内部的振荡电路。AT89单片机内部有一个用于构成振荡器的高增益 反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。 这个放大 器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1

7、和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的 值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定 性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为 12MHz电容应尽可能的选择陶瓷电容,电容值约为 22pF。在焊接刷电路板时, 晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。3、复位RST在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在 此引腿时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后P0- P3 口均置1引脚表现为高电平,程序计数器和特殊功能寄存

8、器SFR部清零。当复位脚由高电平变为低电平时,芯片为ROM勺00H处开始运行程序。复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST通过一个斯密 特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周 期的S5Pz由复位电路采样一次。复位电路通常采用上电自动复位和按钮复位 两种方式,此电路系统采用的是按钮复位电路。4、输入输出引脚(1) P0端口 P0.0-P0.7 P0 是一个8位漏极开路型双向I/O端口,端口置 1(对端口写1)时作高阻抗输入端。作为输出口时能驱动8个TTL对内部Flash 程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电 阻

9、。在访问外部程序和外部数据存储器时,P0 口是分时转换的地址(低8位)/数 据总线,访问期间内部的上拉电阻起作用。(2) P1端口 P1.0 P1.7 P1是一个带有内部上拉电阻的 8位双向I/0端口。 输出时可驱动4个TTL端口置1时,内部上拉电阻将端口拉到高电平,作输入 用。(3) P2端口 P2.0 -P2.7 P2是一个带有内部上拉电阻的 8位双向I/O端口。 输出时可驱动4个TTL端口置1时,内部上拉电阻将端口拉到高电平,作输入 用。对内部Flash程序存储器编程时,接收高8位地址和控制信息。(4) P3端口 P3.0 P3.7 P2是一个带有内部上拉电阻的 8位双向I/O端口。 输

10、出时可驱动4个TTL端口置1时,内部上拉电阻将端口拉到高电平,作输入 用。(2)键盘电路设计该设计只用了一个键盘,但实现的功能却是比较完善,减少了硬件资源的损 耗,该键盘可以实现小时和分钟的调节以及控制是否进入省电模式。当按键按下又松开,可以实现屏蔽数码管显示的功能,达到省电的目的;直接按下不松开, 则可以通过按键实现分钟的累加, 每按一次分钟加一;而连续两次按下按键不放 松,则可实现小时的调节,同样每按一次小时加一。达到时间调节的目的。选择 的多功能按键如图所示。(3)数码管:数码管字样LEDgC码管实际上是由七个发光管组成 8字形构成的,加上小数点就是8个。 如图3-10。这些段分别由字母

11、a,b,c,d,e,f,g,dp 来表示。当数码管特定的段加 上电压后,这些特定的段就会发亮,以形成我们眼睛看到的字样了。如:显示一 个“2”字,那么应当是a亮b亮g亮e亮d亮f不亮c不亮dp不亮。LE国码 管有一般亮和超亮等不同之分,也有 0.5寸、1寸等不同的尺寸。小尺寸数码管 的显示笔画常用一个发光二极管组成,而大尺寸的数码管由二个或多个发光二极 管组成,一般情况下,单个发光二极管的管压降为1.8V左右,电流不超过30mA 发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。常用LED数码管显示的数字 和字符是 0、1、2、

12、3、4、5、6、7、8、9。(4) 74LS373, *11 :作不1D8M 8个输入端1Q8Q为8个输出端LE是数据锁存控制端;当LE=1时,锁存器输出端同输入端;当LE由“1变为“0” 时,数据输入锁存器中。OE为输出允许端;当OE= 0”时,三态门打开;当OE= 1”时,三态门关闭,输出呈高阻状态。在MCS-51单片机系统中,常采用74LS373作为地址锁存器使用,具连接方法如 电路硬件图所示。其中输入端1D8D接至单片机的P0口,输出端提供的是低8位 地址,LE端接至单片机的地址锁存允许信号 ALE。输出允许端OE接地,表示输 出三态门一直打开。五.软件设计主程序以及各子程序的流程图如

13、下:主程序流程图显小子程序按键处理子程序定时器中断子程序软件设计思路如下:1主程序设计:主程序中完成对定时器设置的初始化,然后进入无限循环的查询模块,动态扫描LEDl示模块,使显示走时正常。同时在循环中完成对键盘的状态(是否有键按下,如有是哪一个)进行监控,如果有键按下根据其键值跳转到相应的子程序中进行执行, 完成相应的功能后会自动跳转回来。 这样整个程序就实现了连续有效的运行。2. 按键扫描子程序: 首先根据端口状态判断是否有键按下, 如果没有就跳过读键值这个阶段。 如果有键按下就通过扫描判断出所按下键的位置, 并相应的形成键值,保存在一个全局变量中等待被查询。然后跳出子程序。3. 显示子程序:该子程序在LED扫描中被调用。首先根据参数判别是显示时间还是显示闹钟, 然后针对六个位形成相应的段码值。 通过参数值在相应位输出显示。4. 时间及闹钟设定子程序: 本程序完成时间的修改及闹钟的设置, 对时间和闹钟的设置是通过修改时间值的全局变量或闹钟值的全局变量来完成的。 在修改过程中正在修改位用时间调整键来显示,当长按时间调整键时,显示闹钟调整页面,当六位全部修改完毕,或者按下确定/ 退出键后自动跳出子程序。5.

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

最新文档


当前位置:首页 > 机械/制造/汽车 > 汽车技术

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