资源预览内容
第1页 / 共40页
第2页 / 共40页
第3页 / 共40页
第4页 / 共40页
第5页 / 共40页
第6页 / 共40页
第7页 / 共40页
第8页 / 共40页
第9页 / 共40页
第10页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
设计题目:基于 51 单片机的电子时钟设计摘要单片机,是集 CPU ,RAM ,ROM ,定时器,计数器和多种接口于一体的微控制器。自20 世纪 70 年代问世以来,以其极高的性能价格比,受到人们的重视和关注。它体积 小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发 较为容易,广泛应用于智能生产和工业自动化上。本系统为基于DS12C887 的 多功能电子钟 ,以STC89C51单片机 作为主控芯,采用实时 时钟芯片DS12C887,使用 1602 液晶作为显示输出。该系统走时精确,具有闹钟设置, 时间模式切换,秒表以及可同时显示时间、日期等多种功能。本文将详细介绍STC89C51 单片机和DS12C887 时钟芯片的基本原理,从软件和硬件电路的实现两大方面进行分析【关键词】STC89C51单片机液晶屏时钟芯片蜂鸣器目录- I -前言 . 1一、方案选型: . 2二、系统硬件设计 . 32.1 51 单片机最小系统设计 . 32.2 电源供电电路设计. 32.3 串口通信电路设计. 42.4 时钟芯片电路设计. 42.5 LCD显示电路设计. 62.6 报警电路设计. 62.7 键控电路设计. 6三、系统软件设计 . 73.1 系统程序流程图设计. 73.2 系统程序设计(见附录). 9四、总结 . 94.1 作品功能、特色. 94.2 综合设计的体会. 9 参考文献 . 11 附录 . 12- II -前言随着科学技术的不断发展 , 人们对时间计量的要求越来越高 。在当今社会,电子 时钟已经得到相当广泛的应用,产品多样,发展更是多元化。本作品是以STC89C51单 片机 作为主控芯片,使用 12MHZ的晶振,使用专用时钟日历芯片DS12C887 产生时间 信息,时间精确。软件部分以C语言为主体,用 1602LCD液晶屏显示输出信息,输出 信息量多,更直观、人性化。该时钟可实现人机交互,可通过提供的键盘对其进行 调整。系统具有以下功能:年、月、日、时、分、秒显示;12 小时/24 小时模式切换, 在 12 小时模式中,用AM和PM区分上午和下午;秒表功能;整点闹铃和报时功能,且 闹钟可设置多组。本次设计的电子时钟系统由单片机最小系统,1602LCD液晶屏,时 钟芯片,调整按键,蜂鸣器,电源五大部分组成。- 37 -一、方案选型:我们在设计电子时钟时遇到了芯片选型的问题,以下是三个设计方案: 方案一:DS1302+数码管DS1302 的使用非常方便,而且价格便宜而数码管显示的也很清楚,特别是显示 时间很直观。但在制作过程中我们发现了这方案的一些问题。DS1302 是不自带电池, 虽然可以通过外接纽扣电池来达到断电走时继续的目的,但在实际调试中会发现这 是比较困难的。因为 DS1302 上电需要复位,而复位就会把正确的走时清零。如果不 复位,DS1302 会出现各种各样的问题,如不走时、读出乱码等。要解决这个问题需 要增加如 2402 等存储器,上电后先存储时间值,再复位。这么做无疑增加了电路设 计和软件设计的复杂度。而使用数码管显示,虽然价格也便宜,显示效果好,但多 位的数码管在动态扫描的时候会出现闪烁。如果少用几位,用切换的方法查看日期, 时间等信息又显得麻烦。方案二:DS12C887+1602LCD 液晶屏DS12C887 时钟芯片功能丰富价格适中,能够自动产生世纪、年、月、日、时、 分、秒以及时间模式转换等的时间信息,芯片内部增加了世纪存储器,从而利用硬 件电路解决了“千年”的问题。DS12C887 时钟芯片中还自带有锂电池,单片机掉电 后时钟芯片内部的时间信息可以保持十年之久。1602LCD 液晶屏可以输出 2 行,每行 显示 16 个字符。虽然 1602LCD 液晶屏较昂贵,但是该液晶屏显示清晰且不会闪烁, 由于液晶屏是数字式的,因此和单片机系统的接口简单,操作方便。1602LCD 液晶屏 的功耗主要消耗在其内部的电极和驱动 IC 上,因而耗电量比其它显示器要少得多, 功耗较低。以上两种元件的程序编写简单,适用于多方面的应用。方案三:SD2068+1602LCD 液晶屏SD2068 实时时钟芯片功能更加丰富,它除了具备有 DS12C887 时钟芯片的功能, 另外还内置时钟精度数字调整功能,可以在很宽的范围内校正时钟的偏差;内置上 电复位电路及指示位;内置电源稳压,内部计时电压可低至 1.5V。该芯片为工业级产 品,是在选用实时时钟 IC 时的理想选择。但是该芯片是一款新型的芯片,使用并不 广泛,操作不方便,可能会出现芯片不稳定等的因素。因此由以上三种方案进行比较,我们选择方案二来设计电子时钟。以 STC89C51为主控芯片,DS12C887 为时钟芯片,1602LCD 液晶屏作为显示器。程序控制 DS12C887 时钟芯片实现小时,分,秒和年,月,日的计时,并在 1602LCD 液晶屏上显示出来。通 过按键对 12 小时/24 小时显示模式切换。当时间走到程序所设定的时间时,蜂鸣器 响起,起到闹铃功能。当要显示秒表计时时,可以通过按键切换来实现。二、系统硬件设计2.1 51 单片机最小系统设计单片机最小系统如下图 1-1 所示:图 1-1以 STC89C51 单片机为核心,选用 12MHZ 的晶振,由于晶振的频率越高,单片 机的运行速度就越快,但考虑到单片机的运行速度快会导致对存储器的要求就会变 高,因此 12MHZ 晶振为最佳选择。外接电容的值虽然没有严格的要求,但是外接电 容的大小会影响振荡器的频率高低、振荡器的稳定性和起振的快速性,因此我们选 用 30pF 的电容作为起振电容。复位电路为按键高电平复位,当按键按下,RES 端为 高电平,当高电平持续 4us 的时间就可以使单片机复位。2.2 电源供电电路设计电源供电电路如下图 1-2 所示:图 1-2我们采用外接 USB 端口的方式为单片机供电,LPOW1 为电源显示灯,当按键S5 按下,显示灯亮,表示给单片机供+5V 电压。2.3 串口通信电路设计串口通信电路如下图 1-3 所示:图 1-3 串口通信电路图图中通过 MAX232 进行 TTL 电平和 232 电平转换,从而单片机和上位机之间通信提供 通道。通信电路的目的就是让通信双发的电平匹配,单片机用的是 TTL 电平,上位 机的串口用的是 232 电平。TTL 电平的逻辑 1 的电压范围是+3.3V 到+5V,逻辑 0 的 电压范围是 0 到+3.3V;232 电平的逻辑 1 的电压范围是-15V 到-5V,逻辑 0 的电压范 围是+5V 到+15V。因此设计串口通信电路就是让这两种电平统一。2.4 时钟芯片电路设计时钟芯片电路如下图 1-4 所示:图 1-4我们采用 DS12C887 时钟芯片定时及计时功能,DS12C887 时钟芯片共需要 13 条信号线。GND、 VCC:直流电源,其中 VCC 接+5V 输入,GND 接地,当 VCC 输入为+5V时,用户可以访问 DS12C887 内 RAM 中的数据,并可对其进行读、写操作;当 VCC 的输入小于+4.25V 时,禁止用户对内部 RAM 进行读、写操作,此时用户不能正确获取芯片内的时间信息;当 VCC 的输入小于+3V 时, DS12C887 会自动将电源发换到内部自带的锂电池上,以保证内部的电路能够正常工作MOT:模式选择脚。SQW:方波输出脚,当供电电压 VCC 大于 4.25V 时,SQW 脚可进行方波输出。AD0AD7:复用地址数据总线,该总线采用分时复用技术,在总线周期的前半部分,出现在 AD0AD7上的是地址信息,可用以选通 DS12C887 内的 RAM,总线周期的后半部分出现在 AD0AD7 上的数据信息AS:地址选通输入脚。DS/RD:数据选择或读输入脚,该引脚有两种工作模式,当 MOT 接 VCC 时,选用 Motorola 工作模式,在这种工作模式中,每个总线周期的后一部分的 DS 为高电平。在读操作中,DS 的上升沿使 DS12C887 将内部数据送往总线 AD0AD7 上,以供外部读取 在写操作中,DS 的下降沿将使总线AD0AD7 上的数据锁存在 DS12C887 中。当 MOT 接 GND 时,选用 Intel 工作模式,在该模式中,该引脚是读允许输入脚R/W:读/写输入端,该管脚也有 2 种工作模式,当 MOT 接 VCC 时,R/W 工作在 Motorola 模式CS:片选输入,低电平有效IRQ:中断请求输入,低电平有效,该脚有效对 DS12C887 内的时钟、日历和 RAM 中的内容没有任何影响,仅内部
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号