单片机数字闹钟电子表设计报告

上传人:大米 文档编号:432004793 上传时间:2023-06-21 格式:DOC 页数:25 大小:496KB
返回 下载 相关 举报
单片机数字闹钟电子表设计报告_第1页
第1页 / 共25页
单片机数字闹钟电子表设计报告_第2页
第2页 / 共25页
单片机数字闹钟电子表设计报告_第3页
第3页 / 共25页
单片机数字闹钟电子表设计报告_第4页
第4页 / 共25页
单片机数字闹钟电子表设计报告_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《单片机数字闹钟电子表设计报告》由会员分享,可在线阅读,更多相关《单片机数字闹钟电子表设计报告(25页珍藏版)》请在金锄头文库上搜索。

1、单片机数字闹钟/电子表设计报告一、本设计功能描述1、采用STC89C52单片机作为主控芯片,实现数字钟表主控功能。2、采用液晶屏显示当前年、月、日、时、分、秒,闹铃时间及状态等信息。3、采用六键键盘设定时间初始值,具体方法是按时间设定键依次进入年、月、日、时、分、秒设定状态,然后通过向上、向下键修改设定值。正在设定的变量以闪烁状态突出显示。4、采用六键键盘设定闹铃时间,具体方法是按闹铃设定键依次进入时、分设定状态,然后通过向上、向下键修改设定值。正在设定的变量以闪烁状态突出显示。5、采用DS1302实时时钟芯片完成后台计时功能,要求具有后备电源,即使主电源掉电时间仍然保持运行。6、可设定闹铃使

2、能,具体方法是按闹铃使能键,按一次打开,再按一次关闭。闹铃使能关闭时不报警。7、当闹铃使能打开,且当前时间到达闹铃设置时间,则蜂鸣器和LED红灯同时报警,如不按取消键,报警时间为1分钟。报警状态可以通过按取消键退出。8、系统通过USB电源供电,单片机程序也可通过USB线串行下载。二、相关基础介绍1DS1302芯片(1) DS1302的性能特性l 实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行计数;DS1302时钟芯片包括实时时钟/日历和31字节的静态RAM。它经过一个简单的串行接口与微处理器通信。实时时钟/日历提供秒、分、时、日、周、月和年等信息。对于小于31天的月和月末的日期自动

3、进行调整,还包括闰年校正的功能。时钟的运行可以采用24h或带AM(上午)/PM(下午)的12h格式。采用三线接口与CPU 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302有主电源/后备电源双电源引脚:Vcc1在单电源与电池供电的系统中提供电源,并提供低功率的电池备份;Vcc2在双电源系统中提供主电源,在这种运用方式中Vcc1连接到备份电,以便在没有主电源的情况下能保存时间信息以及数据。DS1302由Vcc1或Vcc2中较大者供电。当Vcc2大于Vcc10.2V时,Vcc2给DS1302供电;当Vcc2小于Vcc1时,DS1302由Vcc1供电。(2) DS13

4、02数据操作原理 DS1302在任何数据传送时必须先初始化,把RST脚置为高电平,然后把8位地址和命令字装入移位寄存器,数据在SCLK的上升沿被输出。无论是读周期还是写周期,开始8位指定40存器中哪个将被访问到。在开始8个时钟周期,把命令字节装入移位寄存器之后,另外的始终周期在读操作时输出数据,在写操作时写入数据。时钟脉冲的个数在单字节方式下为8加8,在多字节方式下为8加字节数,最大可达248字数。 如果在传送过程中置RST脚为低电平,则会中止本次数据传送,并且I/O引脚变为高阻态。上电运行时,在Vcc 2.5V之前,RST脚必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。D

5、S1302的引脚及内部结构图如图1所示。 图1 DS1302引脚图及内部结构DS1302的控制字如图2所示。控制字节的最高有效位(位7)必须是逻辑1;如果它为0。则不能把数据写入到DS1302中。位6如果为0则表示存取日历时钟数据;为1表示存取RAM数据。位51(A4A0)指示操作单元的地址。最低有效位(位0)如为0,表示要进行写操作;为1表示进行读操作。控制字节总是从最低位开始输入/输出。图2 DS1302的控制字DS1302的读写时序如图3所示。为了提高对32个地址的寻址能力(地址/命令位15 = 逻辑1),可以把时钟/日历或RAM寄存器规定为多字节(burst)方式。位6规定时钟或RAM

6、,而位0规定读或写。在时钟/日历寄存器中的地址931或RAM寄存器中的地址31不能存储数据。在多字节方式中,读或写从地址0的位0开始。必须按数据传送的次序写最先的8个寄存器。但是,当以多字节方式写RAM时,为了传送数据不必写所有31字节,不管是否写了全部31字节,所写的每一字都将传送至RAM。图3 DS1302数据读/写时序DS1302共有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式。时钟暂停:秒寄存器的位7定义位时钟暂停位。当它为1时,DS1302停止振荡,进入低功耗的备份方式。通常在对DS1302进行写操作时(如进入时钟调整程序),停止振荡。当它为0时,时钟将

7、开始启动。AM-PM/12-24小时方式:小时寄存器的位7定义为12或24小时方式选择位。它为高电平时,选择12小时方式。在此方式下,位5是AM/PM位,此位是高电平时表示PM,低电平表示AM。在24小时方式下,位5为第二个10小时位(2023h)。 DS1302的晶振选用32.768kHz,电容推荐值为6pF,因为振荡频率较低,也可以不接电容,对记时精度影响不大。2STC89C52单片机(1) STC89C52 单片机概述STC89C52系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12

8、倍,内部集成MAX810专用复位电路。 (2) STC89C52 单片机管脚及封装STC89C52 单片机有多种封装形式,本设计中选用40DIP封装,其管脚定义如图4所示。其最小应用系统如图5所示。图4 STC89C52 管脚图 三、Portel硬件开发软件Protel是目前国内最流行的通用EDA软件,它是将电路原理图设计、PCB板图设计、电路仿真和PLD设计等多个实用工具软件组合后构成的EDA工作平台,是第一个将EDA软件设计成基于Windows的普及型产品。2PCB板设计(1) 定元件的封装 (2) 建立PCB板框 (3) 载入网络表 (4) 布局 (5) PCB设计遵循的规则 地线回路规

9、则:图7 地线回路规则 窜扰控制 屏蔽保护图8 屏蔽保护 走线方向控制规则 电源与地线层的完整性规则四、硬件电路设计单片机数字闹钟硬件框图如图9所示。图9 硬件框图其中DS1302完成计时功能,单片机主控芯片读取DS1302的时间数据,在液晶屏上显示出来。用户可以通过按键设定时间初始值、闹铃初始值等。主电源和备份电源给各芯片供电。1 单片机电路 单片机采用STC89C52芯片,电路采用11.0592MHz外部无源晶体,振荡电容采用20pF。复位电路采用10uF(C1)电容和10K(R2)组成的阻容复位电路。单片机管脚连接标号中,P00P07为液晶屏数据线,P25P27为液晶屏控制线。标号RxD

10、和TxD是单片机的异步串行通信引脚,用于单片机程序的ISP下载。2 DS1302时钟电路DS1302时钟电路如图11所示,其中BT1是后备电池,以保证在主电源掉电时时钟依然运行。Y2是时钟晶振,因为频率较低,故可以不加电容。R10R12为上拉电阻。DS1302通过SCLK、I/O和RST管脚和单片机相连。图11 DS1302时钟电路3 液晶屏显示电路显示部分采用SMC 1602液晶屏进行数据显示与单片机接口电路如图12所示。图12 LCD与单片机接口电路4 按键电路U盘驱动芯片CH375不仅提供了与USB设备的硬件连接,还内置了文件系统底层程序,使得读、写U盘中的文件变得容易。图中CH375使

11、用12MHz外部晶体,振荡电容为20pF。管脚连接标号D0D7是与单片机并口进行数据传输的数据线,CH375INT为单片机提供中断信号,CH375CS、CH375A0、CH375WR和CH375RD是控制信号线。CH375通过RU2和RU3两个电阻与U盘的UD+和UD-数据线连接,同时通过LU发光管输出U盘状态。 3键盘驱动电路键盘驱动电路如图14所示。图14 键盘驱动程序电路使用与单片机管脚直接相连的按键实现键盘。当按键按下时管脚为低电平,无按键时为高电平。单片机采用查询方式获取按键信息。4闹铃电路图15 闹铃电路 闹铃电路由单片机管脚驱动蜂鸣器和报警灯实现,当闹铃时间到时,蜂鸣器鸣响,红灯

12、报警。5电源电路本设计采用USB接口供电,电源电压5V。同时,USB接口通过内含PL2303芯片的转换电路对单片机进行程序编写。其电路原理如图所示。图16 供电及程序下载电路五、 软件设计1、软件流程图本设计软件流程如图17所示。 图17 软件流程图 2、时间调整程序设计调整时间用4个调整按纽,1个作为移位、控制用,另外2个作为加个减用,分别定义为时间设置按纽、加按纽、减按纽。在调整时间过程中,要调整的位与别的位应该有区别,所以增加了闪烁功能,即调整的位一直在闪烁,直到调整下一位。闪烁原理就是,让要调整的一位每隔一定时间熄灭一次,比如说50ms。利用定时器记时,当到达50ms溢出时,就送给该位

13、熄灭符,在下一次溢出时,再送正常显示的值,不断交替,直到调整该位结束。此时送正常显示值给该位,再进入下一位调整闪烁程序。时间调整程序流程图如图18所示。控制键有效,进入月调整程序控制键有效,进入年调整程序等待按键程序等待按键程序减键有效加键有效加键有效减键有效月减1年加1月加1年减1控制键有效,进入星期调整程序控制键有效,进入日调整程序等待按键程序等待按键程序减键有效加键有效加键有效减键有效星期减1日加1星期加1日减1控制键有效,进入分调整程序控制键有效,进入小时调整程序等待按键程序等待按键程序减键有效加键有效加键有效减键有效分减1小时加1分加1小时减1控制键有效,跳出时间调整程序,进入主循环

14、程序图18 时间设定程序流程图 闹铃时间设定方法类似,不再赘述。3、主程序 下面介绍main.c主程序编写,其他程序略。(1) 头文件和一些宏定义#include #include #include 1602.h#include DS1302.h#define AMHOURADDR 0xC0 /存闹铃时的地址#define AMMINUTEADDR 0xC2 /存闹铃分的地址#define AMENADDR 0xC4 /存闹钟使能标志的地址(2) 管脚、常量、变量定义/定义管脚sbit Led_Alarm=P21;/报警灯sbit Beep_Alarm=P20; /蜂鸣器sbit Key_TMSet = P32; /时间设置sbit Key_AMSet = P33;/闹铃设置sbit Key_Up = P34;/上调sbit Key_Down = P35;/下调sbit Key_AMEn = P36;/闹铃开关sbit Key_Review = P37;/查看/定义标识volatile bit FlagKeyPress = 0; /有键按下标志volatile

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

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