DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1082|回复: 0
打印 上一主题 下一主题

[无线] 基于DS1302和AT89C2051的红外遥控LED电子钟设计

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-16 17:23:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

                    ??????自制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);
            
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2026-3-25 19:34 , 耗时 0.089210 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表