自制LED电子
钟在很多电子报刊杂志上都可以见到,但大多数在断电后都要重新设置时间等参数,给使用带来很多不便。也有用后备电池作为备用电源的,但往往体积较大。本文介绍的LED电子钟克服了以往的弊端,而且采用了家电通用的红外遥控器进行控制,方便使用。有一路闹铃输出,可以通过遥控器设置闹铃时间及允许与否。
一.工作原理
DS1302为达拉斯公司的一种实时时钟芯片,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32768Hz晶振。
AT89C2051作为主控芯片,一是对接收到的红外遥控编码进行判断识别,并执行相应的处理;第二就是定期的读取时钟芯片DS1302中的时间并把小时和肥以示在4位LED中;第三就是对设置的闹铃时间与实时时间进行比较,如果时间相同且闹铃允许,那么蜂鸣器就会以1秒的周期鸣响一分钟,提醒使用者。如果要停止鸣闹,只要按遥控器相应键就可以关闭闹铃。
闹铃时间保存在DS1302自带的RAM中,不需要单独的EEPROM。
二.硬件电路
图一为电子钟的原理图,IC2为DS1302,电子爱好者可以向MAXIM公司索取免费样品。Y2为32768 Hz石英晶振,可以用普通电子表里的。IC3为三脚的塑封一体化红外接收头。LED1-4为高亮度共阳数码管。89C2051所用的晶振Y1如果没有10MHz也可以用其他12M以内的代替,只要修改程序中YS1和YS2的延时参数,让其保持延时长度不变就行。调整R2可以改变数码管亮度。P1口接数码管的八字段。数码管左两位显示小时,右两位显示分,当显示的是闹铃时间时闪动。第二位和第三位的小数点作为秒闪动,注意第三位数码管按图一布好印制版后安装时要旋转180°,以便让时和分之间出现“:”,最后一位小数点作为闹铃开关标志,亮表示闹铃开启。蜂鸣器B2采用小型自带音源的。
图1 电子钟原理图
要特别说明的是备用电源B1,可以用电池或者超级电容(10万uF以上)。虽然DS1302在主电源掉电后,耗电很小,但如果要长时间保证时钟正常,最好选用小型充电电池。可以用老式电脑主板上的那种3.6V充电电池。如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容代替。100uF就可以保证1小时的正常走时。DS1302在第一次加电后,须进行初始化操作。初始化后就可以按正常方法调整时间及闹铃。
三.软件
软件部分的重点是对DS1302的操作以及红外遥控的解码。单片机解码可参看其他文章,这里主要对设置部分作一些说明:
遥控器采用长虹彩电K11F型遥控器,遥控器按照16位地址码,8位数据码以及8位数据码的反码发送。表一列出了各按键的编码及本电子钟对应的动作。如果采用其他遥控器,需对程序相应部分的编码作修改。
操作方法中,任意是指该键第一次按后,进入该状态,再次按后退出该状态。
时间设置:按“菜单”键进入设置状态,LED只显示正常时间的小时,按“↑↓”键调整数值,按“←“、”→”键可在闹铃与正常时间之间移动。任意时刻再次按“菜单”键就退出设置。
闹铃设置:闹铃时间在时间设置中进行。闹铃允许和取消可在任意时刻按“静音”键。
显示开关:可在任意时刻按“显示”键开启和关闭显示器。
初始化:在按“菜单”键进入设置状态后任意时刻按“日历”键,初始化后的时间为2002/12/1/12:00:00; DS1302+AT89C2051的LED钟遥控器各按键数据码,可根据不同的遥控器修改对应的键码
muteM EQU 10h ;静音键 闹铃开/关
timerT EQU 0Ch ;菜单键 进入/退出设置状态
leftL EQU 46h ;左移键
rightR EQU 47h ;右移键
upU EQU 19h ;增加键
downD EQU 1dh ;减少键
d_off EQU 16H ;显示键 LED数码管显示/关闭
recall EQU 44H ;日历键
DS1302初始化操作
K_on BIT P3.0 ;闹铃输出
LED1 BIT P3.3
LED2 BIT P3.4
LED3CLK BIT P3.5 ;DS1302
LED4IO BIT P3.7
RST BIT P3.1
SECOND EQU 60H;
60H 秒;
61h 分;
62h 时;
63h 日;
64h 月;
65h DAY;
66h 年;
6Ah 闹分 from 00(1302);
6BH 闹时 from 01(1302);
关键字:DS1302 AT89C2051 红外遥控 LED电子钟
引用地址:
采用DS1302与AT89C2051的红外遥控LED电子钟制作
推荐阅读最新更新时间:2024-03-16 15:54
PIC单片机(PIC16F877A)DS1302芯片程序
#include pic.h typedef unsigned char uchar; typedef unsigned int uint; #define rs_h PORTC|=0x01 #define rs_l PORTC&=0xfe #define rw_h PORTC|=0x02 #define rw_l PORTC&=0xfd #define en_h PORTC|=0x04 #define en_l PORTC&=0xfb #define rst_h PORTC|=0x08 #define rst_l PORTC&=0xf7 #define sck_h PORTC|=0x10 #defin
[单片机]
自制电脑红外遥控器
自制 电 脑红外遥控器 终于做完了,总结如下(红字内容): 其中R1我用的是500欧的,200欧接收头上电压有点高,5V的稳压二极管没找到。经试用,这个软件对50462芯片的遥控器不起作用。到网上找了另一个。遥控距离有7-8米没问题,总之效果不错。 功能?一句话,就是用电视遥控器控制电脑! 遥控器可以用随便一个电视、VCD、DVD遥控器(空调遥控器不能用) 制作简单,最少只要6个元件,用COM并口连接电脑,然后在电脑上安装一个软件就可以了。 所需必要元件 红外接收管 电容(47uF),带白条的一边为负极 三极管(9014) 电阻(240 ) 二极管(4148),带黑线的一端为负极 万用电路板(洞洞板),3块钱就
[单片机]
单片机解码万能红外遥控器的C51程序
使用方法:打开串口调试助手,设置为9600 bps 单片机 这边用11.0592M Hz 的 晶振 ,使用sm0038或者其他型号的红外接收头按下面的 电路 连接好,其中out直接与单片机的p3.2脚相连.按下 遥控器 ,串口调试助手便会出现 解码 值. /******************************************************************/ /* 本程序的蓝本从网上搜集,经修改并注释,万能遥控器解码成功 */ /* 晶振:11.0592MHz */ /************************* 说 明 ***********************
[单片机]
基于AT89S52和CPLD的数字转速表设计
随着人们生活水平的提高,花卉逐渐收到人们的青睐,陶冶情操,净化空气。利用单片机设计了一款家庭智能浇花器实现自动浇花,节省人力,方便人们出差的时候,不至于影响花卉的生长,如果在家也可以关断浇花器,手动浇花。浇花器设置为两种方式,一种是定时定量浇花,一种是根据湿度浇花。采用哪种方式是通过按键控制或者红外遥控的,在采用定时定量浇花时,数码管显示时间和流水时间,在选用根据湿度浇花时,数码管显示是目前的湿度。 1 总体设计 利用AT89S52单片机设计了自动浇花器,针对不同的花卉,此智能浇花器设置为两种方式:一是定时定量浇花,二是利用湿度传感器检测花卉(也可以用于蔬菜等)的湿度,采集的湿度传送到单片机芯片,单片机根据湿度控制是否浇
[单片机]
LED流动电子钟电路
LED流动电子钟电路主控电路图118:28时间显示效果图是非常便宜的89C2051单片机,c5、R6组成它的上电复位电路,Yl、C6、C7组成它的时钟电路。Pl口作数据总线用,LED点阵的列数据(1~8)由IC2锁存,单片机的P3、2端口输出锁存正脉冲。LED的行扫描信号(A~H)由IC3锁存,单片机的P3、3端口输出正脉冲锁存信号,按键状态由IC1读取,单片机的P3、5端口输出负向读取脉冲。外接5v电源(可用一般的市售稳压电源)由Xl输入,无电时由内置的4.5V电池维持IC4的继续工作,以防计时中断。
[单片机]
【STC单片机学习】第十四课:SPI通信-实时时钟DS1302
1.14.1.RTC有关的背景知识 1.14.1.1、什么是实时时钟(RTC :Real Time Clock) (1)时间点和时间段的概念区分 时间段 :定时器/计数器 ; 烧水; 不唯一 时间点 :RTC; 闹钟、日历; 唯一 (2)单片机为什么需要时间点 单片机有时候需要做一些必须到某一个时间才能做的事,所以需要用RTC,比如定点炸弹! RTC之于单片机,就是钟表(手表、手机)之于人 (3)RTC如何存在于系统中(STC芯片内部集成 or STC芯片外部扩展) DS1302芯片,集成在单片机开发板上,属于STC51外部扩展! 1.14.1.2、DS1302介绍
[单片机]
时钟芯片DS1302程序案例
/* 该程序主要实现如下的功能: 从 DS1302 的秒寄存器中,读出秒的数值; 将秒的数值用两个数码管显示出来。 */ #include reg52.h #define uchar unsigned char uchar code table ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; sbit RST=P1^2; sbit DATA=P1^1; sbit SCLK=P1^0; //延时n us函数 void Delayus(uchar n) { uchar i; for(i=0
[单片机]
PLD器件在红外遥控解码中的应用
摘 要: 介绍了红外遥控发射和接收的原理,提出了一种用PLD(可编程逻辑器件)进行解码的方案,并分别用EPROM和GAL实现。该方案思路新颖、原理简单、工作可靠,可用于各种以键盘扫描为输入方式的智能仪器系统中。 关键词: 红外遥控 可编程逻辑器件 遥控解码 键盘扫描 红外遥控技术已经在日常家用电器中得到了广泛应用,其使用方便、功耗低、抗干扰能力强的优点也越来越在智能仪器系统中受到重视。市场上的各种家电红外遥控系统技术成熟、成本低廉,但都是针对各自的遥控对象(彩电、冰箱、空调等),不能直接用于智能仪器。本文探讨了如何借鉴家电红外遥控系统的原理,自行设计解码电路,使智能仪器具有遥控功能。 1 红外遥控原
[测试测量]