带温度显示的电子闹钟设计方案.docx
- 文档编号:29419620
- 上传时间:2023-07-23
- 格式:DOCX
- 页数:61
- 大小:616.03KB
带温度显示的电子闹钟设计方案.docx
《带温度显示的电子闹钟设计方案.docx》由会员分享,可在线阅读,更多相关《带温度显示的电子闹钟设计方案.docx(61页珍藏版)》请在冰豆网上搜索。
带温度显示的电子闹钟设计方案
题目:
带温度显示的电子闹钟设计
摘要
本文设计了一款利用单片机技术实现带温度显示的电子闹钟。
以应用AT89C51芯片作为核心,利用8位LED数码管显示,使用DS1302实时时钟日历芯片完成时钟/日历的基本功能,同时利用DS18B20温度传感器测量环境温度。
这种实现方法的优点是电路简单,性能可靠,实时性好,时间和温度精度高,操作简单,编程容易。
关键词:
电子闹钟,温度,AT89C51,DS18B20,DS1302
Abstract
ThedesigndeterminestousetheMCUtechnologytorealizethemulti-functionalelectronclock.ThisdesignuseAT89C51asacorechips,8LEDdigitaldisplaying.usingDS1302real-timeclockchiptocompletethebasicfunctionoftheclock/calendar.AtthesametimethedesignuseofDS18B20temperaturesensorsisforcollectingtheenvironmentaltemperature.Themethodhastheadvantageofbeingsimplecircuit,reliableperformance,goodreal-time,highprecisionofthetimeandtemperature,simplyoperation,easyprogramming.
Keywords:
Electronicclock,Temperature,AT89C51,DS18B20,DS1302
3.1.1微处理器选择......................................................................................4
3.1.2芯片DS1302简介...............................................................................5
3.1.3环境温度传感器..................................................................................6
4.2.3显示子程序设计................................................................................16
4.2.4闹铃子程序设计................................................................................19
5.1硬件调试......................................................................................................19
5.1.1单片机基础电路调试......................................................................19
5.1.2显示电路调试..................................................................................20
5.1.3DS1302电路调试............................................................................20
5.1.4按键电路调试..................................................................................21
5.2软件调试......................................................................................................21
5.2.1环境温度采集子程序调试..............................................................21
5.2.2键盘子程序调试..............................................................................21
6结论.........................................................................................................................22
致谢.............................................................................................................................23
1绪论
1.1引言
从古代的滴漏更鼓到近代的机械钟,从电子表到目前的数字时钟,为了准确的测量和记录时间,人们一直在努力改进计时工具.钟表的数字化,大力推动了计时的精确性和可靠性.20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。
单片机自1976年由Intel公司推出MCS-48开始,迄今已有二十多年了.由于单片机集成度高,功能强,可靠性高,体积小,功耗地,使用方便,价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎"无处不在,无所不为".单片机的应用领域已从面向工业控制,通讯,交通,智能仪表等迅速发展到家用消费产品,办公自动化,汽车电子,PC机外围以及网络通讯等广大领域。
单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法.从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了.这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命.电子闹钟在科学技术高度发展的今天,千家万户都少不了它,所以很多家庭个人都需要有一个电子闹钟,为人们提供报时方便。
本文给出了一种AT89S52电子闹钟设计方法,具有设定时间和闹钟以及显示温度的功能,从而给人们带来更为方便的工作与生活。
1.2电子时钟研究的背景和意义
现代电子产品几乎渗透到了社会的各个领域,有力的推动和提高了社会生产力的发展与信息化程度,同时也使现代电子产品性能进一步提升,产品更新换代的节奏也越来越快。
时间对人们来说总是那么宝贵,工作的忙碌性和繁杂容易使人忘记当前的时间。
平时我们要求上班准时,约会或召开会议必然要提及时间;火车要准点到达,航班要准点起飞;工业生产中,很多环节都需要用时间来确定工序替换时刻。
所以说能随时准确的知道时间并利用时间,是我们生活和工作中必不可少的。
想知道时间,手表当然是一个很好的选择,但是,在忙碌当中,我们还需要一个“助理”及时的给我们提醒时间。
所以,计时器最好能够拥有一个定时系统,随时提醒容易忘记时间的人。
最早能够定时、报时的时钟属于机械式钟表,但这种时钟受到机械结构、动力和体积的限制,在功能、性能以及造价上都没办法与电子时钟相比。
电子钟是采用电子电路实现对时、分、秒进行数字显示的计时装置,广泛应用于个人家庭,车站,码头办公室等公共场所,成为人们日常生活中不可少的必需品。
由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
诸如定时自动报警、0按时自动打铃、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。
因此,研究数字钟及扩大其应用,有着非常现实的意义。
另外,温度实时显示系统应用同样越来越广泛,比如空调遥控器上当前室温的显示、热水器温度的显示等等。
医药卫生、工农业生产上也有很多场合需要测量环境温度。
如果能够在电子时钟上附加温度采集功能,将使电子时钟的应用更加广泛。
1.3论文主要工作概述
针对目前电子时钟的发展趋势,逐步完善及扩展其功能以达到更加便利人们的生活为基准来进行论文的设计。
首先,针对所设计电子时钟的功能进行芯片的查阅及选用。
其次,对所选择的芯片进行局部硬件功能设计并调试。
然后将局部硬件进行整体结合,并进行简单的功能调试。
检查无误后,进行程序编写,调试。
2系统设计方案
2.1带温度显示的电子闹钟系统的总体构成
本设计电子闹钟系统包括时钟芯片、温度采集、显示电路、按键电路、供电电源、闹铃指示电路等几部分。
硬件电路框图参照图1。
图1带温度显示电子闹钟系统组成框图
键盘是为了完成时钟/日历的校对和日历/温度的显示功能。
由于此电子时钟要求具有闹铃功能,所以设计有闹铃电路,进行声音响铃。
整个电路使用了两种电源,+5V电源将为整个电路供电。
而+3V电源仅作为DS1302的备用电源。
当+5V电源被切断后,DS1302启用+3V电源,可以保持DS1302继续工作。
当+5V电源恢复供电,LED依旧显示当前时间,而不会因为断电使系统复位到初始化时间,避免了重新校时的麻烦。
具体电路图请参见附录。
2.2带温度显示电子闹钟系统的功能
电子时钟主要是利用电子技术将时钟电子化、数字化,拥有时间精确、体积小、界面友好、可扩展性能强等特点,被广泛应用于生活和工作当中。
当今市场上的电子时钟品类繁多,外形小巧别致。
也有体型较大的,诸如公共场所的大型电子报时器等。
电子时钟首先是数字化了的时间显示或报时器,在此基础上,人们可以根据不同场合的要求,在时钟上扩展其他功能,比如定时闹铃,万年历,环境温度、湿度检测,环境空气质量检测,USB扩展口等功能。
本设计电子时钟主要功能为:
1.具有时间显示和手动校对功能,24小时制;
2.具有年、月、日显示和手动校对功能;
3.具有闹铃功能;
4.具有贪睡功能;
5.具有环境温度采集和显示功能;
6.掉电后无需重新设置时间和日期;
3系统硬件设计
3.1主要IC芯片选择
3.1.1微处理器选择
AT89C51单片机是一款低功耗,低电压,高性能CMOS8位单片机,片内含4KB<可经受1000次擦写周期)的FLASH可编程可反复擦写的只读程序存储器 片内的FLASH存储器允许在系统内可改编程序或用常规的非易失性存储器编程器来编程。 因此,AT89C51是一种功能强,灵活性高且价格合理的单片机,可方便的应用在各个控制领域。 AT89C51具有以下主要性能: 1.4KB可改编程序Flash存储器; 2.全静态工作: 0——24Hz; 3.128×8字节内部RAM; 4.32个外部双向输入/输出 5.6个中断优先级;2个16位可编程定时计数器; 6.可编程串行通道; 7.片内时钟振荡器 此外,AT89C51是用静态逻辑来设计的,其工作频率可下降到0Hz,并提供两种可用软件来选择的省电方式——空闲方式 在空闲方式中,CPU停止工作,而RAM、定时器/计数器、串行口和中断系统都继续工作。 在掉电方式中,片内振荡器停止工作,由于时钟被“冻结”,使一切功能都暂停,只保存片内RAM中的内容,直到下一次硬件复位为止。 图2AT89C51芯片PDIP封装引脚图 在电子时钟设计中,常用的实时时钟芯片有DS12887、DS1216、DS1643、DS1302。 每种芯片的主要时钟功能基本相同,只是在引脚数量、备用电池的安装方式、计时精度和扩展功能等方面略有不同。 DS12887与DS1216芯片都有内嵌式锂电池作为备用电池;X1203引脚少,没有嵌入式锂电池,跟DS1302芯片功能相似,只是相比较之下,X1203与AT89S51搭配使用时占用I/O口较多。 DS1643为带有全功能实时时钟的8K×8非易失性SRAM,集成了非易失性SRAM、实时时钟、晶振、电源掉电控制电路和锂电池电源,BCD码表示的年、月、日、星期、时、分、秒,带闰年补偿。 同样,DS1643拥有28只管脚,硬件连接起来占用微处理器I/O口较多,不方便系统功能拓展和维护。 故而从性价比和货源上考虑,本设计采用实时时钟日历芯片DS1302。 3.1.2芯片DS1302简介 DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟日历芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。 实时时钟可提供秒、分、时、日、星期、月和年,一个月小于31天时可以自动调整,且具有闰年补偿功能。 工作电压宽达2.5~5.5V。 采用双电源供电<主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。 有主电源和备份电源双引脚,而且备份电源可由大容量电容<>1F)来替代。 需要强调的是,DS1302需要使用32.768KHz的晶振,其引脚图如3所示。 图3DS1302芯片引脚图 在编程过程中要注意DS1302的读写时序。 DS1302是SPI总线驱动方式。 它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。 要想与DS1302通信,首先要先了解DS1302的控制字。 DS1302的控制字如表1。 表1DS1302控制字<即地址及命令字节) BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 1 RAM A4 A3 A2 A1 A0 RD 其引脚功能参照表2 表2DS1302引脚功能说明 引脚号 名称 功能 1 VCC1 备份电源输入 2 X1 32.768KHz晶振输入 3 X2 32.768KHz晶振输出 4 GND 地 5 RST 复位 6 I/O 数据输入/输出 7 SCLK 串行时钟 8 VCC2 主电源输入 3.1.3环境温度传感器 DS18B20是美国Dallas公司生产的基于单线<1-wire)技术的数字温度传感器芯片。 其管脚分布如图4。 图4DS18B20引脚分布图 每片DS18B20在出厂时都设有唯一的产品序列号,此序列号存放在它的内部ROM中,微处理器通过简单协议,就能识别这些序列号,因此多个DS18B20可以挂接于同一条单总线上,这允许在许多不同的地方放置温度传感器,特别适合于构成多点温度测控系统。 管脚功能描述参见表3 表3DS18B20详细引脚功能描述 序号 名称 引脚功能描述 1 GND 地信号 2 DQ 数据输入/输出引脚;开漏单总线接口引脚;当被用在寄生电源下,也可以向器件提供电源。 3 VDD 可选择的VDD引脚;当工作于寄生电源时,此引脚必须接地。 DS18B20的内部结构如图5所示。 主要由4部分组成: 64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。 图5DS18B20内部结构图 配置寄存器为高速暂存存储器中的第5个字节。 DS18B20在工作时按此寄存器中的分辨率将温度转换成相应精度的数值,其各位定义如表4所示。 其中,TM为测试模式标志位,出厂时被写入“0”,不能改变;R0、R1是温度计分辨率设置位。 表4DS18B20配置寄存器结构表 BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 TM R1 R0 1 1 1 1 1 MSBLSB 其对应四种分辨率如表5所示,出厂时R0、R1被置为“1”,默认设置是12位分辨率,用户可根据需要给写配置寄存器以获得合适的分辨率。 表5配置寄存器与分辨率关系表 R0 R1 温度计分辨率/bit 最大转换时间/ms 0 0 9 93.75 0 1 10 187.50 1 0 11 375 1 1 12 750 温度信息的低位、高位字节内容还包括了符号位S<是正温度还是负温度)和二进制小数部分,其具体形式如图6。 23 22 21 20 2-1 2-2 2-3 2-4 低位字节: MSBLSB S S S S S 26 25 24 高位字节: MSBLSB 图6DS18B20温度值格式表 图6所示是12位分辨率的情况,如果配置为低分辨率,则其中无意义位为“0”。 在DS18B20完成温度变换之后,温度值与存储在TH和TL内的告警触发值相比较。 由于这些是8位寄存器,所以9~12位在比较时忽略。 TH或TL的高位直接对应于16位温度寄存器的符号位。 如果温度测量的结果高于TH或低于TL,那么器件内告警标志将置位,每次温度测量都会更新此标志位。 只要告警标志置位,DS18B20就将响应告警搜索命令,这也就允许单线上多个DS18B20同时进行温度测量,即使某处温度越限,也可以识别出正在告警的器件。 特别需要注意的是,与DS18B20配套使用的是频率为11.0592MHz单片机晶振,这决定了指令的运行时间,在软件设计中将根据此指令运行时间编写各种延时程序。 3.2电子时钟硬件电路设计 3.2.1时钟电路设计 系统时钟应用了实时时钟日历芯片DS1302,其连接如图7。 该硬件电路设计简单,抗干扰能力强。 如图,AT89C51单片机P1.7直接接DS1302的RST端,上电后,AT89C51的P1.7脚自动输出高电平。 P1.5作为串行时钟接口,P1.6作为时钟数据的I/O。 DS1302采用双电源供电,平时由+5V电源供电,当+5V掉电之后,由图中BT1<+3V备用电池)供电。 特别需要注意X1和X2两端连接的晶振Y1,该晶振频率为32.768KHz。 图7系统时钟电路 3.2.2环境温度采集电路设计 本设计中使用DS18B20温度传感器进行环境温度采集和转化。 如图8所示,AT89C51单片机的P3.4脚接DS18B20的I/O脚,作为数据的读入和写出口。 电阻R1作为DS18B20的I/O口的上拉电阻,在读时隙结束时,I/O引脚将通过此上拉电阻拉回至高电平。 图8系统环境温度采集电路 3.2.3显示电路设计 就时钟而言,通常可采用LCD显示或LED显示。 对于一般的段式LCD,需要专门的驱动电路,而且LCD显示的可视性较差;对于具有驱动电路和微处理器接口的液晶显示模块<字符或点阵),一般采用并行接口,对微处理器的接口要求较高,占用资源多。 另外,AT89C51本身没有专门的液晶驱动接口。 LED结构简单,体积小,功耗低,响应速度快,易于匹配,寿命长,可靠性高,而且显示亮度高,价格便宜,市场上也有专门的时钟显示组合LED。 故本设计中应用8位8段共阴LED实现显示部分,显示面板分布如图9。 LED显示分动态显示和静态显示: 动态显示方式的硬件电路简单。 但设计上如果处理不当,易造成亮度低,闪烁问题。 因此合理的设计既应保证驱动电路易实现,又要保证图像稳定,无闪烁。 动态显示采用多路复用技术的动态扫描显示方式,复用的程度不是无限增加的,因为利用动态扫描显示使我们看到一幅稳定画面的实质是利用了人眼的暂留效应和发光二极管发光时间的长短,发光的亮度等因素。 静态显示,是由微型计算机一次输出显示模型后,就能保持该显示结果,直到下次发送新的显示模型为止。 静态显示驱动程序简单,且CPU占用率低,但每个LED数码管需要一个锁存器来锁存每一个显示位的笔段代码,硬件开销大,仅适合显示位数较少的场合。 为了在显示部分节省单片机I/O口,故采用静态显示方式。 电路图参见图9。 74LS164是8位移位寄存器,应用该芯片驱动LED做显示部分,其优点在于连线简单,节省单片机I/O口,软件编程容易。 图9显示面板LED分布图 3.2.4按键电路设计 根据功能需要,本时钟需要设置以下功能键: 校对选择键,加1操作键,减1操作键,显示日期键,显示温度键,闹铃开关键。 按照键盘与CPU的连接方式可分为独立式键盘和矩阵式键盘。 独立式键盘是各个按键相互独立,每个按键占用一个I/O口线,每根I/O口线上的按键不会影响其他I/O口上按键工作状态。 独立式键盘电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口,在按键数量较多时,I/O口线浪费较大,且电路结构复杂。 矩阵式键盘适合按键较多时使用。 由于本设计的电子钟最多需要7个按键,若采用矩阵式键盘时会有按键浪费,故采用的是独立式键盘。 键盘电路如图11。 对于内置了上拉电阻的I/O引脚来说,外接上拉电阻没有意义。 图11键盘电路 按键操作说明如下: K1键: 该键为带自锁按键,在正常显示时间状态下,每次将按键按下,LED数码管将显示日期;再次按下,按键弹出,重新显示时间。 K2键: 该键为带自锁按键,在正常显示时间状态下,每次将按键按下,LED数码管将显示环境温度;再次按下,按键弹出,重新显示时间。 K3键: 该键为自动复位键,在正常显示时间状态下,第一次按下后,开始校对小时,以后每次按下都会分别进入对分、秒、闹铃时、闹铃分、年、月、日的校对状态。 K4键: 该键为自动复位键,在校对状态下,每次按动该键,都会使相应校对位进行加1操作。 例如: 校对小时状态,每按一下,小时位加1,当加至小时最高值23时,再按K4键,小时位回0。 调分、秒、年、月、日与皆之相同,只是各位最高值不同。 K5键: 该键为自动复位键,与K4键类似,不同之处是该键每次按下将使相应校对位进行减1操作。 K6键: 该键为自动复位键,在校对状态下,按下该键,从校对状态返回时间显示状态;在响铃状态下,按下该键,闹铃进入贪睡状态。 K7键: 该键为带自锁按键,按下后闹铃开启,弹出后闹铃关闭。 按键功能参见表6。 表6按键功能表 按键 键名 功能 属性 K1 Calendar 显示日历 自锁 K2 T 显示温度 自锁 K3 FUN 功能选择 自动复位 K4 UP 数值加一操作 自动复位 K5 DOWN 数值减一操作 自动复位 K6 Enter/Snooze 确认键/贪睡 自动复位 K7 Alarm 闹铃开关 自锁 3.2.5闹铃电路设计 闹铃音乐可以直接采用蜂鸣器闹铃,如当前时刻与闹铃时间相同,单片机向蜂鸣器送出低电平,蜂鸣器发声。 采用蜂鸣器闹铃结构简单,控制方便,但是发出的闹铃声音单一。 也可以在编程的时候编写一段音乐程序,待闹铃
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 温度 显示 电子 闹钟 设计方案