ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:85.27KB ,
资源ID:15974953      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-15974953.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(毕业设计方案采用实时时钟芯片DS ATC的红外遥控LED电子钟.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

毕业设计方案采用实时时钟芯片DS ATC的红外遥控LED电子钟.docx

1、毕业设计方案采用实时时钟芯片DS ATC的红外遥控LED电子钟第1节 引 言 1第2节 电子钟硬件设计22.1 电子钟的工作原理22.2 电子钟的硬件电路3第3节 系统软件设计5一引言自制LED电子钟在很多电子报刊杂志上都可以见到,但大多数在断电后都要重新设置时间等参数,给使用带来很多不便。也有用后备电池作为备用电源的,但往往体积较大。本文介绍的LED电子钟克服了以往的弊端,而且采用了家电通用的红外遥控器进行控制,方便使用。有一路闹铃输出,可以通过遥控器设置闹铃时间及允许与否。二电子钟硬件设计电子钟的正面电子钟的背面一 工作原理 DS1302为达拉斯公司的一种实时时钟芯片,主要特点是采用串行数

2、据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32768Hz晶振。AT89C2051作为主控芯片,一是对接收到的红外遥控编码进行判断识别,并执行相应的处理;第二就是定期的读取时钟芯片DS1302中的时间并把小时和肥以示在4位LED中;第三就是对设置的闹铃时间与实时时间进行比较,如果时间相同且闹铃允许,那么蜂鸣器就会以1秒的周期鸣响一分钟,提醒使用者。如果要停止鸣闹,只要按遥控器相应键就可以关闭闹铃。闹铃时间保存在DS1302自带的RAM中,不需要单独的EEPROM。二 硬件电路 图一为电子钟的原理图,IC2为DS1302,电子爱好者可以向MAXIM公司索取免费样品

3、。Y2为 32768 Hz石英晶振,可以用普通电子表里的。IC3为三脚的塑封一体化红外接收头。LED1-4 为高亮度共阳数码管。89C2051所用的晶振Y1如果没有10MHz也可以用其他12M以内的代替,只要修改程序中YS1和YS2的延时参数,让其保持延时长度不变就行。调整R2可以改变数码管亮度。P1口接数码管的八字段。数码管左两位显示小时,右两位显示分,当显示的是闹铃时间时闪动。第二位和第三位的小数点作为秒闪动,注意第三位数码管按图一布好印制版后安装时要旋转180,以便让时和分之间出现“:”,最后一位小数点作为闹铃开关标志,亮表示闹铃开启。蜂鸣器B2采用小型自带音源的。要特别说明的是备用电源

4、B1,可以用电池或者超级电容10万uF以上)。虽然DS1302在主电源掉电后,耗电很小,但如果要长时间保证时钟正常,最好选用小型充电电池。可以用老式电脑主板上的那种3.6V充电电池。如果断电时间较短。6BH 闹时 from 01(1302 ORG 0000H AJMP START ORG 0003H LJMP S_INT 。IRF ORG 000BH 。200Us LJMP P_INT 。 ORG 001BH 。display LED LJMP DISPLAY。main program ORG 0030HSTART: CLR RST MOV SP,#2AH SETB 05H CLR 06H S

5、ETB 07H。CLR 07H CLR 08H CLR 09H CLR 0AH CLR 0BH CLR 0CH SETB 0DH CLR 0EH CLR 0FH CLR 10H CLR 11H MOV R2,#00H 。 MOV R3,#00H 。 MOV TMOD,#12H MOV TL1,#0e5H 。wait MOV TH1,#0BeH MOV TH0,#3FH 。200uS 3f MOV TL0,#3FH SETB ET0 SETB ET1 setb pt0 SETB TR0 SETB TR1 SETB IT0 。 SETB EX0 。 CLR PX0 。LCALL SET1302 。

6、初始化 MOV R1,#0C1H 。取定时参数从1302中 acall T_6061 MOV 6AH,A 。M MOV R1,#0C3H ACALL T_6061 MOV 6BH,A 。HMOV 61H,#0MOV 62H,#0 SETB EA sjmp $DISPLAY: PUSH ACC PUSH PSW MOV TL1,#0e0H 。wait how long to display (20ms MOV TH1,#0b0H mov dptr,#tab1 JB 0EH,DIS2 JB 0FH,DIS3 JB 10H,DIS4 JB 11H,DIS5 JNB 0DH,D_OUT JNB 08H

7、,D_GO 。定时到时,显示闪烁 JNB 07H,D_OUTD_GO: MOV DPTR,#TAB1 MOV A,62H ANL A,#0FH MOV B,A MOV A,62H SWAP A ANL A,#07H MOVC A,A+DPTR MOV P1,A CLR LED1 LCALL DL2M SETB LED1 MOV A,B MOVC A,A+DPTR MOV C,07H MOV acc.7,C 。秒灯闪烁 MOV P1,A CLR LED2 LCALL DL2M SETB LED2 mov dptr,#tab2 。倒装LED字段表 MOV A,61H ANL A,#0FH MOV

8、B,A MOV A,61H SWAP A ANL A,#0FH MOVC A,A+DPTR MOV C,07H MOV acc.6,C 。秒灯闪烁 MOV P1,A CLR LED3CLK LCALL DL2M SETB LED3CLK mov dptr,#tab1 MOV A,B MOVC A,A+DPTR MOV C,06H cpl c MOV acc.7,C 。闹铃指示灯 MOV P1,A CLR LED4IO LCALL DL2M SETB LED4IOD_OUT: SETB TR1 POP PSW POP ACC RETIDIS2: AJMP DIS_2DIS3: AJMP DIS_

9、3DIS4: AJMP DIS_4DIS5: AJMP DIS_5DIS_2: mov dptr,#tab1 。显示设置小时 MOV 6FH,62H ACALL BCD_HEX MOV B,#10 DIV AB MOVC A,A+DPTR MOV P1,A CLR LED1 LCALL DL2M SETB LED1 MOV A,B MOVC A,A+DPTR MOV P1,A CLR LED2 LCALL DL2M SETB LED2 SETB TR1 POP PSW POP ACC RETIDIS_3: MOV DPTR,#TAB2 。显示设置分 MOV 6FH,61H ACALL BCD_

10、HEX MOV B,#10 DIV AB MOVC A,A+DPTR MOV P1,A CLR LED3CLK LCALL DL2M SETB LED3CLK MOV A,B MOV DPTR,#TAB1 MOVC A,A+DPTR MOV P1,A CLR LED4IO LCALL DL2M SETB LED4IO SETB TR1 POP PSW POP ACC RETIDIS_4: mov dptr,#tab1 。显示设置闹时 JNB 07H,D4_OUT 。显示时闪烁 MOV A,6BH MOV B,#0AH DIV AB MOVC A,A+DPTR MOV P1,A CLR LED1

11、 LCALL DL2M SETB LED1 MOV A,B MOVC A,A+DPTR MOV P1,A CLR LED2 LCALL DL2M SETB LED2D4_OUT: SETB TR1 POP PSW POP ACC RETIDIS_5: MOV DPTR,#TAB2 JNB 07H,D5_OUT 。显示时闪烁 MOV A,6AH 。显示设置闹分 MOV B,#0AH DIV AB MOVC A,A+DPTR MOV P1,A CLR LED3CLK LCALL DL2M SETB LED3CLK MOV DPTR,#TAB1 MOV A,B MOVC A,A+DPTR MOV P

12、1,A CLR LED4IO LCALL DL2M SETB LED4IOD5_OUT: SETB TR1 POP PSW POP ACC RETIDL2M: MOV 43H,#14H 。 every LED(2msDL2: MOV 44H,#14HDL1: NOP NOP DJNZ 44H,DL1 DJNZ 43H,DL2 RET。*定时读取1302时间及判断闹铃时间是否到*P_INT: PUSH ACC PUSH PSW INC R2 CJNE R2,#250D,P_OUT MOV R2,#00H INC R3 CJNE R3,#10D,P_OUT MOV R3,#00H CPL 07H

13、MOV P1,#0FFH ACALL R_1302OUT: JNB 06H,P_OUT MOV A,6BH MOV B,#10 DIV AB SWAP A ADD A,B CJNE A,62H,PP_OUT MOV A,6AH MOV B,#10 DIV AB SWAP A ADD A,B CJNE A,61H,PP_OUT SETB 08H 。定时到标志 MOV C,07H cpl c MOV K_ON,CP_OUT: POP PSW POP ACC RETIPP_OUT: SETB K_ON CLR 08H POP PSW POP ACC RETI。*有接收到遥控器信号*S_INT:CLR

14、 EA PUSH ACC PUSH PSW PUSH DPH PUSH DPL PUSH 02H PUSH 03H MOV R6,#10D 。SB: ACALL YS1 JB P3.2,EXIT DJNZ R6, SB JNB P3.2, $ 。 ACALL YS2 。 JB P3.2,EXIT MOV R1,#1AH 。 MOV R2,#4DPP: MOV R3,#8DJJJJ: JNB P3.2,$ ACALL YS1 MOV C,P3.2 JNC UUU JB P3.2,$UUU: MOV A,R1 RRC A MOV R1,A DJNZ R3,JJJJ INC R1 DJNZ R2,P

15、P。- MOV A,1AH 。 XRL A,#40h 。判断1AH的值是否等于遥控器低8位地址40h) JNZ EXIT 。 MOV A,1bH XRL A,#0bfh 。再判断高8位地址是否正确0bfh) JNZ EXIT MOV A,1CH CPL A XRL A,1DH 。将1CH的值取反后和1DH比较 不同则无效丢弃核对数据是否准确) JNZ EXIT ACALL DO 。相应按键的处理EXIT: SETB EA POP 03H POP 02H POP DPL POP DPH POP PSW POP ACC RETI。-delay-YS1: MOV 70H,#16D 。延时1D1: M

16、OV 71H,#21D DJNZ 71H,$ DJNZ 70H,D1 RETYS2: MOV 70H,#09D 。延时2D2: MOV 71H,#220D DJNZ 71H,$ DJNZ 70H,D2 RET。-TAB: DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09H 。TAB1 LED数码管显示表 TAB遥控器键值表SET2A: CJNE A,#DOWND,SET2B LJMP DEC2 。- 减SET2B: CJNE A,#RIGHTR,SET2C LJMP RIGHT 。RIGHT右移(SET2C: CJNE A,#LEFTL,SET2D LJMP

17、LEFT 。LEFT左移(SET2D: CJNE A,#RECALL,SET2EXT 。DS1302初始化 LJMP SET1302SET2EXT:RET。-INC-INC1: JB 0EH,INCH JB 0FH,INCM JB 10H,INC_H JB 11H,INC_M RETINC_H: INC 6BH 。闹钟小时增加 MOV A,6BH CJNE A,#24D,INCH3 MOV 6BH,#0INCH3: MOV R1,#0C2H MOV R0,6BH ACALL SETONE 。写入DS1302 RETINC_M: INC 6AH 。闹钟分增加 MOV A,6AH CJNE A,#

18、60D,INCH4 MOV 6AH,#0INCH4: MOV R1,#0C0H MOV R0,6AH ACALL SETONE 。 RETINCH: 。INC 62H 。 MOV 6FH,62H ACALL BCD_HEX INC A CJNE A,#24D,INCH1 MOV A,#0INCH1: MOV 6FH,A ACALL HEX_BCD MOV 62H,A MOV R1,#84H MOV R0,62H ACALL SETONE 。 RETINCM: 。INC 61H 。 MOV 6FH,61H ACALL BCD_HEX INC A CJNE A,#60D,INCH2 MOV A,#

19、0INCH2: MOV 6FH,A ACALL HEX_BCD MOV 61H,A MOV R1,#82H MOV R0,61H ACALL SETONE 。 RET。-DEC-DEC2: JB 0EH,DECH JB 0FH,DECM JB 10H,DEC_H JB 11H,DEC_M RETDECH: MOV 6FH,62H ACALL BCD_HEX DEC A CJNE A,#0FFH,DECH1 MOV A,#23DECH1: MOV 6FH,A ACALL HEX_BCD MOV 62H,A MOV R1,#84H MOV R0,62H ACALL SETONE RETDECM:

20、MOV 6FH,61H ACALL BCD_HEX DEC A CJNE A,#0FFH,DECM1 MOV A,#59DECM1: MOV 6FH,A ACALL HEX_BCD MOV 61H,A MOV R1,#82H MOV R0,61H ACALL SETONE RETDEC_H: DEC 6BH MOV A,6BH CJNE A,#0FFH,DECH3 MOV 6BH,#23DDECH3: MOV R1,#0C2H MOV R0,6BH ACALL SETONE RETDEC_M: DEC 6AH MOV A,6AH CJNE A,#0FFH,DECH4 MOV 6AH,#59DD

21、ECH4: MOV R1,#0C0H MOV R0,6AH ACALL SETONE RET。-RIGHT-RIGHT: JB 0EH,RIGHT1 JB 0FH,RIGHT2 JB 10H,RIGHT3 JB 11H,RIGHT4 RET 。右移RIGHT1: CLR 0EH SETB 0FH RETRIGHT2: CLR 0FH SETB 10H RETRIGHT3: CLR 10H SETB 11H RETRIGHT4: CLR 11H SETB 0EH RET。-LEFT-LEFT: JB 0EH,LEFT1 JB 0FH,LEFT2 JB 10H,LEFT3 JB 11H,LEFT4

22、 RET 。左移LEFT1: SETB 11H CLR 0EH RETLEFT2: SETB 0EH CLR 0FH RETLEFT3: SETB 0FH CLR 10H RETLEFT4: SETB 10H CLR 11H RET。-MUTE-MUTE: setb k_ON CPL 06H 。静音 CLR 08H RET。-DISPLAY OFF-DIS_OFF:CLR ET1 CPL 05H JNB 05H,REDORE SETB ET1REDORE: RET。-初始化1302-SET1302: CLR RST 。2002年1月1日12:00:00 CLR LED3CLK MOV SECOND,#0 MOV 61H,#

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2