1、摘 要多功能数字钟的设计与制作摘 要:本数字钟采用 STC89c58RD+单片机作为主控制器,结合温度传感器DHT11、时钟芯片 DS1302、语音芯片 ISD4004,来实现温度湿度测量、闹钟、秒表、倒计时、12 时制 24 时制转换、报时到分和显示年、月、日、时、分、秒的功能。而在显示方面采用了 LCD12864 液晶显示。由于本设计需要庞大的程序控制,因此软件程序均采用 C 语言编写,便于移植与升级。关键词:单片机控制;数字钟;STC89c58RD+ ;DS1302;ISD4004;DHT11;LCD12864Multi-function digital clock design and
2、 productionAbstract:The digital clock uses STC89c58RD + microcontroller as the main controller, with temperature sensor DHT11, clock chip DS1302, and the amplifier chip ISD4004 , to achieve the temperature and humidity measurements, alarm clock, stopwatch, countdown, 12-hour 24-hour conversion, time
3、keeping to points and display year, month, day, hour, minute and second functions. The terms used in the display LCD12864 liquid crystal display. As the design requires a large process control, software programs are written using C language for easy migration and upgrades.Key words: microchip contro
4、l;Digital Clock; STC89c58RD+;DS1302 ;ISD4004;DHT11;LCD12864目 录i目 录1 背景与意义 .11.1 背景 .11.2 意义 .11.3 功能介绍.22 方案比较与论证 .32.1 设计任务与要求 .32.2 方案比较与论证 .33 系统硬件设计 .53.1 总体电路框图 .53.2 单元电路设计 .53.2.1 单片机模块53.2.2 时钟模块93.2.3 温湿度采集模块123.2.4 语音模块153.2.5 液晶显示模块193.2.6 按键模块. .234 系统软件设计 .244.1 总体软件框图 .244.2 各模块程序设计 .2
5、54.2.1 时钟驱动模块254.2.2 温湿度采集数据模块264.2.3 液晶驱动程序284.2.4 语音控制程序305 系统调试与测试 .315.1 硬件调试 .315.2 软件调试 .316 设计总结 .32致 谢 .32参考文献 .33附录 .34附录 A:电路图 .34附录 B:程序清单 .35正 文1多功能数字钟的设计与制作1 背景与意义1.1 背景20 世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵
6、,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着 CMOS 化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机模块中最常见的是数字钟,数字钟是一种用数
7、字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。1.2 意义数字钟是采用数字电路实现对时、分、秒、数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各正 文2种定时电气的自动启用等,所有
8、这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。目前家用的数字电子钟,多数只能显示小时、分钟等信息,功能单一,而且大都采用 LED 数码管作为显示器件,功耗大,不能令消费者满意。为此,我设计了一款多功能语音数字钟,它可以显示年、月、日、小时、分钟、秒钟、星期等时间信息,可以进
9、行 12 时制与 24 时制转换功能,同时可以显示环境的温度和湿度信息。还具有按键调节时间,语音实时报时到分,秒表,倒计时和5 路闹钟设置功能。时钟采用 LCD 作为显示器,界面友好。1.3 功能介绍1.3.1 液晶屏供可以显示 5 个页面,初始化时显示页面 1。其包括第一行显示年、月、日。第二行显示时、分、秒、时制(12 时制则有 AM 和 PM 显示,24 时制则没有) 。第三行显示湿度和温度。第四行显示星期。1.3.2 按 Model 键切换成设置模式,按一下 Model 键液晶屏显示页面 2 为时间设置,按 Set 键后,通过左键、右键、加键和减键就可以对包括年、月、日、时、分、秒、星
10、期和时制的时间参数进行设置,设置完后再按 Set 键就可以保存设定的时间参数。1.3.3 按两下 Model 键液晶屏显示页面 3 为闹钟设置,可同时设置不同的5 路闹钟,其中,每路闹钟还有模式选择,包括星期一、星期二、星期三、星期四、星期五、星期六、星期日、工作日、周末日和每天。按 Set 键后,通过左键、右键、加键和减键就可以对包括闹钟时间、闹钟状态(开或关) 、闹钟路数、闹钟模式的设置。设置完后再按 Set 键就可以保存设定的闹钟参数。1.3.4 按三下 Model 键液晶屏显示页面 4 为秒表设置,秒表计时包括时、分、秒及千分秒。按 Set 键清零,按加键或减键则开始和暂停。1.3.5
11、 按四下 Model 键液晶屏显示页面 5 为倒计时设置,倒计时计时同样正 文3包括时、分、秒及千分秒。按 Set 键后通过左键、右键、加键和减键进行倒计时时间设置,设置完后再按 Set 键就可以保存设定的倒计时时间参数。此时加键或减键是倒计时的开关,按一下开始倒计时,再按一下暂停倒计时;按左右键倒计时清零。1.3.6 在液晶屏显示页面 1 时,按一下 Set 键,数字钟会进行 24 时制的实时报时到分的功能。2 方案比较与论证2.1 设计任务与要求2.1.1 实现基本的时钟显示,包括年、月、日、时、分、秒、星期的显示。2.1.2 实现时间的 12 时制与 24 时制的转换2.1.3 实现当前
12、环境温度湿度的测量2.1.4 实现闹钟功能2.1.5 实现秒表和倒计时功能2.1.6 实现实时报时到分的功能2.2 方案比较与论证方案一:采用 AT89C51 为主控器件,结合温度采集模块 DS18B20、时钟芯片DS1302、语音芯片 ISD4004 和蜂鸣器也可以实现显示时间显示,也还可以实现闹钟,秒表,倒计时和报时功能。在显示方面采用 LED 点阵显示。但是多功能数字钟主要是以程序控制为主,要实现以上功能需要大量的程序,51 单片机的内存比较小,一方面可能容纳不了这么多程序;另方面,即使容纳的了这么多的程序,也必然会影响数字钟的运行速度,甚至可能卡机。同时,采用DS18B20 检测温度有
13、点大材小用,生活上的温度测量并不需要非常的精确。而且,此方案选择 LED 点阵显示,必然使得制作时焊接麻烦,工程量大,同时还会是数字钟需要很大的功耗。无论是从产品质量还是环保方面,此方案都不是很理想的。下图为方案一的方框图:正 文4单片机AT89C51温度检测DS18B20时钟芯片DS1302语音芯片ISD4004LED 显示蜂鸣器图 2.2.1 方案一方框图方案二:采用单片机 STC89c58RD+为主控器件,结合温湿度传感器 DHT11、时钟芯片 DS1302、语音芯片 ISD4004 和蜂鸣器来可以实现显示包括年、月、日、时、分、秒、星期等时间显示,也还可以实现闹钟,秒表,倒计时和报时功
14、能。在显示方面采用 LCD12864 液晶显示屏显示。58 单片机具有更大的内存,对于设计像这样大程序的器件是非常合适的。温湿度采集方面采用温湿度传感器已经很够用了,而显示采用 LCD12864 液晶显示屏显示,减少了很多的焊接工作,同时电路还更稳定,性能更好,更节能。下图为方案二的方框图:单片机STC89c58RD+温湿度传感器DHT11时钟芯片DS1302语音芯片ISD4004液晶显示屏LCD12864蜂鸣器图 2.2.2 方案二方框图正 文5通过方案一与方案二的比较,很明显方案二做出来的产品性能更好,更稳定,更经济。在实现相同功能下,方案二会是一个更好的设计。所以我的设计采用的方案二的设
15、计思路。3 系统硬件设计3.1 总体电路框图单片机STC89c58RD+温湿度传感器DHT11时钟芯片DS1302语音芯片ISD4004液晶显示屏LCD12864蜂鸣器键盘电源2 电源1喇叭图 3.1 总体电路框图3.2 单元电路设计3.2.1单片机模块3.2.1.1 STC89c58RD+单片机简介STC89C58RD +是一种低功耗高性能的 8 位单片机,STC89C58RD+系列是全球第一片掉电模式时典型功耗小于 0.1uA 的 8051 单片机。片内带有一个 32k 字节的 F1ash 可编擦除只读存储器(PEROM),它采用了 CMOS 工艺和 STC(宏晶)公司的高密度非易失性存储
16、器(NURAM)技术,而且其输出引脚和指令系统和 MCU-51 系列单片机兼容。片内的 Flash 存储器允许在系统内可改编程序或用常规的正 文6非易失性的存储器编程器来编程。同时它具有三级程序存储器保密的性能。在众多的 51 系列单片机中,要算 STC(宏晶)公司的 STC89C58RD+最实用,因为它不仅和 MCU-51 系列单片机指令、管脚完全兼容,而且它支持 ISP(在系统可编程),无需高价的编程器,可轻松通过串口实现程序下载和远程升级,加上其片内的 32k 程序存储器是 Flash 工艺的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写。此外,它有 1280 字节的 RAM,8K
17、以上的 E2PROM,内置看门狗。在 ISP 下载编程时就可以任意设置 6 时钟/机器周期或 12 时钟/机器周期,STC 单片机 ISP 引导码出厂时已有,不需要用户烧录。该单片机对开发设备要求很低,开发时间也大大缩短。单片机出厂时已完全加密,无法解密,其DIP 封装引脚如图 1 所示 图 3.2.1.1 STC89c58RD+单片机正 文73.2.1.2 单片机引脚功能特点:1.增强型 6 时钟机器周期,12 时钟机器周期 8051 CPU 2.工作电压:5.5V-3.4V(5V 单片机)3.8V-2.0V(3V 单片机) 3.工作频率范围:0-40 MHz,相当于普通 8051 的 08
18、0MHz.实际工作频率可达 48MHz. 4.用户应用程序空间 4K8K13K16K20K32K64K 字节 5.片上集成 1280 字节512 字节 RAM 6.通用 IO 口(32 36 个) ,复位后为:P1 P2P3P4 是准双向口弱上拉(普通 8051 传统 IO 口) P0 口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为 IO 口用时,需加上拉电阻。 7.I S P(在系统可编程)I A P(在应用可编程) ,无需专用编程器仿真器 ,可通过 串口(P3.0 P3.1)直接下载用户程序, 8K 程序 3 秒即可完成一片 8.EEPROM 功能 9.看门狗 10.内部集成 M A
19、 X 8 1 0 专用复位电路(D 版本才有) ,外部晶体 2 0 M 以下时,可省外部复位电路 11.共 3 个 16 位定时器计数器,其中定时器 0 还可以当成 2 个 8 位定时器使用 12.外部中断 4 路,下降沿中断或低电平触发中断,Power Down 模式可由外部中断低电平触发中断方式唤醒 13.通用异步串行口(UART) ,还可用定时器软件实现多个 UART 14.工作温度范围:0-75-40-85 15.封装:PDIP-40,PLCC-44,LQFP-43.2.1.3 单片机设计原理图介绍:系统采用 STC89c58RD+单片机作为控制核心。STC89c58RD+单片机与 M
20、CS_51 系列单片机产品兼容,采用了 Flash 存储器结构,可以在线下载程序,易于日后的升级。图 3 主要负责各个模块的初始化工作;设置定时器、寄存器的初值;正 文8读取并处理时间、温度等信息;处理按键响应;控制液晶实时显示。图 3.2.1.1 单片机硬件原理图主控单片机硬件电路连接如图 3.2.1 所示。其只要负责对温湿度传感器 DHT11 的温度湿度采集处理和显示,对时钟 IC ds1302 时钟信息提取并显示和写入需要设置的时间数据到ds1302 指定的寄存器里。其中由 C1,C2 和 Y1组成单片机时钟电路,其中系统采用 11.0592M晶振;由 RST,C3,R1 组成按键电平复位电路。如有图所示。为了增强 P0 口的驱动能力,故在接口处接上 P0 ,10K 的上拉电阻。P0 口为单片机与液晶显示器通信的数据端口; 图 3.2.1.2 按键电平复位电路P25,P26, P27 连接液晶显示器的控制信号端口;P10,P11,P12 为单片机与时钟芯片 DS1302 通信的连接端口;P1.5 为单片机连接温湿度传感器 DHT11 的通信端口;P30P35 为连接按键模块的接口。