基于单片机红外遥控多功能电子钟设计
扫描二维码
随时随地手机看文章
摘要 设计以AT89C51单片机为核心,软件部分采用C语言模块化设计,具有显示年、月、日、时、分、秒和温度以及闹钟和整点报时的功能,并且可通过红外遥控器进行基本时间的调整和闹钟的设定。全部信息可通过1602点阵式液晶直观显示,采用家电通用的红外遥控器进行控制,方便使用,具有广阔的市场前景。
关键词 单片机;电子钟;红外遥控;DS18B20;LCD;DS1302
目前,单片机进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。本文以AT89C51单片机为主控芯片,DS1302为时钟控制芯片、DS18B20为温度采集芯片和LCD液晶显示模块为显示器进行多功能电子钟系统的设计,系统具有时间、星期、温度、闹铃等功能,并可以实现红外遥控时间校准。该电路采用AT89C51单片机作为核心,功耗小,+5 V电压供电,有掉电保护功能,可长时间稳定工作。
1 系统总体设计
系统设计有以下模块:AT89C51单片机控制模块,时钟芯片DS1302模块,温度采集DS18B20模块,液晶显示屏LCD1602模块,红外发射接收模块以及声光报警模块。其系统总体设计框图如图1所示。
2 系统硬件设计
2.1 单片机最小系统
主控芯片使用Atmel公司的单片机AT89C51,采用40引脚双列直插封装(DIP),内部由CPU;4 kBROM;256 Byte RAM;2个16位定时/计数器T0和T1;4个8位I/O端口;1个全双功串行通信口等组成。
2.2 DS18B20驱动电路
温度采集采用美国Dallas公司的智能温度传感器DS18B20,其特性有:(1)独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。(2)在使用中无需任何外围元件。(3)可用数据线供电,电压范围3.0~5.5 V。(4)测温范围-55~+125℃。固有测温分辨率为0.5℃。(5)通过编程可实现9~12位的数字读数方式。(6)用户可自行设定非易失性的报警上下限值。(7)支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现多点测温。(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
2.3 时钟电路
DS1302是美国Dallas公司推出的一种高性能、低功耗的实时时钟芯片,附加31 Byte静态RAM,采用SPI三线接口与CPU进行通信,并可采用突发方式一次传送多Byte的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月<31天时可以自动调整,且具有闰年补偿功能。工作电压2.5~5.5 V,采用双电源供电,可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。
2.4 1602LCD驱动电路
系统采用1602LCD显示模块,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块,它由若干个5×7或5×11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此,所以不能显示图形。
2.5 声光报警模块的设计
闹钟模块采用蜂鸣器实现,用单片机的定时器去生成各种不同音律。蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电。通过单片机的引脚输出的电平变化来控制蜂鸣器的导通与否,如当前时刻与闹铃时间相同,蜂鸣器发声和指示灯闪光。
2.6 红外遥控系统
由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,采用红外线遥控不仅运行可靠而且能有效地隔离电气干扰。
通用红外遥控系统由发射和接收两部分组成,应用编/解码专用集成电路芯片来进行控制操作,发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路,其系统如图2所示。
系统采用NEC公司的uPD6121G芯片发射码格式的芯片组成发射电路。当发射器按键按下后,即有遥控码发出,按键不同遥控编码也不同。
一体化红外线接收器TL1838是一种集红外线接收和放大于一体,无需外接元件,就能完成从红外线接收到输出、并与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输。它仅有3条管脚,分别是电源正极、电源负极以及信号输出端,其工作电压约为5 V,接收频率为38 kHz。
3 系统软件设计
系统由单片机控制,系统初始化部分主要是对系统的时钟芯片、液晶显示器进行设置,时间由时钟芯片取得后送入主控芯片,通过液晶显示器1602LCD来显示,时间、日期、闹铃的修改通过红外遥控器控制。系统软件设计主要由DSl302时钟控制、DS18B20温度采集、红外遥控、1602液晶驱动等程序模块组成,整个系统的主程序如图3所示。硬件仿真结果如图4所示。
4 结束语
系统以单片机的C语言进行软件设计,为便于扩展和更改,增加了程序的可读性和可移植性。功能设计齐全,可显示时间、日期、星期、温度、闹铃以及红外遥控等功能,具有读取方便、显示直观、功能多样、成本低廉等优点。