欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

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

    • 资源ID:12914873       资源大小:234.29KB        全文页数:20页
    • 资源格式: DOCX        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    第 1 节 引 言1第 2 节 电子钟硬件设计 22.1电子钟的工作原理22.2电子钟的硬件电路3第 3 节 系统软件设计 520 / 20一引言自制 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 采纳小型自带音源的;要特殊说明的是备用电源B1,可以用电池或者超级电容 <10 万 uF 以上);虽然DS1302 在主电源掉电后,耗电很小,但假如要长时间保证时钟正常,最好选用小型充电电池;可以用老式电脑主板上的那种3.6V 充电电池;假如断电时间较短<几小时或几天)时,就可以用漏电较小的一般电解电容代替;100uF 就可以保证 1 小时的正常走时; DS1302 在第一次加电后,须进行初始化操作;初始化 后就可以按正常方法调整时间及闹铃;三软件软件部分的重点是对DS1302 的操作以及红外遥控的解码;单片机解码可参看其 他 文 章 , 这 里 主 要 对 设 置 部 分 作 一 些 说 明 : 遥控器采纳长虹彩电 K11F 型遥控器,遥控器依据 16 位地址码, 8 位数据码以及 8 位数据码的反码发送;表一列出了各按键的编码及本电子钟对应的动作;假如采纳其他遥控器,需对程序相应部分的编码作修改;操作方法中,任意是指该键第一次按后,进入该状态,再次按后退出该状态;时间设置:按“菜单” 键进入设置状态,LED 只显示正常 时间的 小时 ,按 “键”调整 数值 ,按 “、”键可在闹铃与正常时间之间移动;任意时刻再次按“菜单 ”键就退出设置;闹铃设置:闹铃时间在时间设置中进行;闹铃答应和取消可在任意时刻按“静音”键;显示开关:可在任意时刻按 “显示”键开启和关闭显示器;初始化:在按 “菜单 ”键进入设置状态后任意时刻按“日历 ”键,初始化后的时间为2002/12/1/12:00:00;DS1302+AT89C2051的 LED 钟;遥控器各按键数据码 ,可依据不同的遥控器修改对应的键码muteMEQU 10h;静音键闹铃开/关timerT EQU 0Ch leftLEQU 46h rightR EQU 47h upUEQU 19h downDEQU 1dhd_offEQU 16H;菜单键;左移键;右移键;增加键;削减键;显示键进入/退出设置状态LED 数码管显示 /关闭recall EQU 44H;日历键DS1302初始化操作K_onBIT P3.0LED1BIT P3.3;闹铃输出LED2BIT P3.4LED3CLK BIT P3.5;DS1302LED4IOBIT P3.7 RSTBIT P3.1 SECOND EQU 60H;60H 秒;61h 分;62h 时;63h 日;64h 月;65h DAY;66h 年;6Ah 闹分from 001302>;6BH 闹时 from 011302>ORG0000H AJMP START ORG0003HLJMP S_INT;IRFORG000BH;200UsLJMP P_INT;ORG001BH;display LED LJMP DISPLAYORG0030H START: CLRRSTMOV SP,#2AHSETB05HCLR06HSETB 07H;CLR07HCLR08HCLR09HCLR0AHCLR0BHCLR0CHSETB0DHCLR0EHCLR0FHCLR10HCLR11HMOV R2,#00H;MOV R3,#00H;MOV TMOD,#12HMOV TL1,#0e5H;wait MOV TH1,#0BeHMOV TH0,#3FH;200uS 3f MOV TL0,#3FHSETB ET0 SETB ET1setb pt0;main programSETB TR0 SETB TR1SETB IT0;SETB EX0;CLRPX0;LCALL SET1302;初始化MOVR1,#0C1H;取定时参数从 1302 中acall T_6061MOV6AH,A;M MOVR1,#0C3HACALL T_6061MOV6BH,A;H MOV 61H,#0MOV 62H,#0 SETB EAsjmp $DISPLAY: PUSH ACC PUSH PSWMOVTL1,#0e0H;wait how long to display 20ms>MOVTH1,#0b0Hmov dptr,#tab1 JB0EH,DIS2 JB0FH,DIS3 JB10H,DIS4 JB11H,DIS5JNB0DH,D_OUTJNB08H,D_GO;定时到时,显示闪耀JNB07H,D_OUT D_GO:MOVDPTR,#TAB1MOVA,62HANLA,#0FH MOVB,A MOVA,62H SWAP A ANLA,#07HMOVC A,A+DPTR MOVP1,ACLRLED1LCALL DL2M SETB LED1 MOVA,BMOVC A,A+DPTR MOVC,07HMOVacc.7,C;秒灯闪耀MOVP1,A CLRLED2 LCALL DL2M SETB LED2mov dptr,#tab2;倒装 LED 字段表MOVA,61H ANLA,#0FH MOVB,A MOVA,61H SWAP A ANLA,#0FHMOVC A,A+DPTR MOVC,07HMOVacc.6,C;秒灯闪耀MOVP1,A CLRLED3CLK LCALL DL2MSETB LED3CLKmov dptr,#tab1 MOVA,BMOVC A,A+DPTRMOVC,06HcplcMOVacc.7,C;闹铃指示灯MOVP1,A CLRLED4IO LCALL DL2M SETB LED4IOD_OUT:SETB TR1 POPPSW POPACC RETIDIS2: AJMP DIS_2 DIS3: AJMP DIS_3 DIS4: AJMP DIS_4 DIS5: AJMP DIS_5DIS_2:movdptr,#tab1;显示设置小时MOV6FH,62H ACALL BCD_HEX MOVB,#10DIVABMOVC A,A+DPTR MOVP1,ACLRLED1 LCALL DL2M SETB LED1 MOVA,BMOVC A,A+DPTR MOVP1,ACLRLED2 LCALL DL2M SETB LED2 SETB TR1 POPPSW POPACC RETIDIS_3:MOVDPTR,#TAB2;显示设置分MOV6FH,61H ACALL BCD_HEX MOVB,#10DIVABMOVC A,A+DPTR MOVP1,ACLRLED3CLK LCALL DL2M SETB LED3CLK MOVA,BMOVDPTR,#TAB1 MOVC A,A+DPTR MOVP1,ACLRLED4IO LCALL DL2M SETB LED4IO SETB TR1 POPPSW POPACC RETIDIS_4:movdptr,#tab1;显示设置闹时JNB07H,D4_OUT;显示时闪耀MOVA,6BHMOVB,#0AH DIVABMOVC A,A+DPTRMOVP1,A CLRLED1 LCALL DL2M SETB LED1 MOVA,BMOVC A,A+DPTR MOVP1,ACLRLED2 LCALL DL2M SETB LED2D4_OUT: SETB TR1 POPPSW POPACC RETIDIS_5: MOV DPTR,#TAB2JNB 07H,D5_OUT;显示时闪耀MOV A,6AH;显示设置闹分MOV B,#0AHDIV ABMOVC A,A+DPTR MOVP1,ACLRLED3CLK LCALL DL2M SETB LED3CLKMOVDPTR,#TAB1 MOVA,BMOVC A,A+DPTRMOVP1,A CLRLED4IO LCALL DL2M SETB LED4IOD5_OUT: SETB TR1 POPPSW POPACC RETIDL2M: MOV 43H,#14H; every LED2ms> DL2: MOV 44H,#14HDL1: NOP NOPDJNZ 44H,DL1 DJNZ 43H,DL2 RET; *定时读取 1302 时间 及判 断闹 铃时间是 否到*P_INT:PUSH ACC PUSH PSW INCR2CJNE R2,#250D,P_OUT MOVR2,#00HINCR3CJNE R3,#10D,P_OUT MOVR3,#00HCPL07HMOVP1,#0FFH ACALL R_1302OUT:JNB06H,P_OUTMOVA,6BH MOVB,#10 DIVAB SWAP A ADDA,BCJNE A,62H,PP_OUT MOVA,6AHMOVB,#10 DIVAB SWAP A ADDA,BCJNE A,61H,PP_OUTSETB 08H;定时到标志MOVC,07HcplcMOV K_ON,C P_OUT: POP PSWPOP ACC RETIPP_OUT: SETB K_ON CLR 08HPOP PSW POP ACC RETI;*有接收到遥控器信号 *S_INT:CLR EA PUSHACC PUSHPSW PUSHDPH PUSHDPLPUSH02H PUSH03HMOVR6,#10D;SB:ACALL YS1 JBP3.2,EXIT DJNZR6, SB JNBP3.2, $ ;ACALL YS2;JBP3.2,EXIT MOVR1,#1AH;MOVR2,#4DPP:MOVR3,#8D JJJJ: JNBP3.2,$ACALL YS1MOVC,P3.2 JNCUUUJBP3.2,$ UUU: MOVA,R1RRCAMOVR1,A DJNZR3,JJJJ INCR1 DJNZR2,PP;MOV A,1AH;XRL A,#40h;判定 1AH 的值是否等于遥控器低8 位地址<40h) JNZ EXIT;MOV A,1bHXRL A,#0bfh;再判定高 8 位地址是否正确 <0bfh) JNZ EXITMOV A,1CH CPL AXRL A,1DH;将 1CH 的值取反后和 1DH 比较 不同就无效丢弃 <核对数据是否精确)JNZ EXITACALL DO;相应按键的处理EXIT: SETB EA POP 03H POP 02H POP DPL POP DPH POP PSW POP ACC RETI;-delay-YS1: MOV70H,#16D;延时 1 D1:MOV71H,#21DDJNZ71H,$ DJNZ70H,D1 RETYS2: MOV70H,#09D;延时 2D2:MOV71H,#220D DJNZ71H,$DJNZ70H,D2 RET;TAB:DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09H;TAB1 LED 数码管显示表 TAB 遥控器键值表 <未用);TAB1:DB3FH,11H,5EH,5BH,71H,6BH,6FH,19H,7FH,7bH,77H,7CH,39H,5EH,79H,71Htab1:DB0C0H,0F9H,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0a7h,0a1h,86h,8EH TAB2: DB 0c0H,0f9H,64H,70H,59H,52H,42H;倒装 LED 段码表;0CH 为设置标志, 0DH 为全显示标志, 0EH 为显示设置小时标志, 0FH 为显示设置分标志;10H 为显示设置闹时标志, 11H 为显示设置闹分标志;增加闹时静音功能;mute-10h,timer-0eh,left-46h,right-47h,up-19h,down-1dhDO:MOVA,1CHCJNEA,#TIMERT,REDO ;代码不是设置 /退出键JNB0CH,SET1;是,就进入CLR0CH;是,已经进入,就退出SETB0DH;复原正常显示CLR0EHCLR0FHCLR10HCLR11HRETSET1:SETB0CH SETB0EH CLR0DHCLR0FHCLR10HCLR11H RETREDO:CJNEA,#MUTEM,REDO1;不是设置键的处理 REDO1,2,3,4.LJMPMUTE;MUTE.REDO1: CJNEA,#D_OFF,DO_SET2LJMPDIS_OFF;关闭显示DO_SET2:JB0CH,SET2;时间设置的处理RETSET2:CJNEA,#UPU,SET2A LJMPINC1;+加>SET2A: CJNEA,#DOWND,SET2B LJMPDEC2;- 减SET2B: CJNEA,#RIGHTR,SET2CLJMPRIGHT;RIGHT 右移>> SET2C: CJNEA,#LEFTL,SET2DLJMPLEFT;LEFT 左移<>SET2D: CJNEA,#RECALL,SET2EXT ;DS1302 初始化LJMPSET1302 SET2EXT:RET;-INC-INC1:JB0EH,INCHJB0FH,INCMJB10H,INC_HJB11H,INC_MRETINC_H: INC6BH;闹钟小时增加MOVA,6BHCJNEA,#24D,INCH3 MOV6BH,#0INCH3: MOVR1,#0C2H MOVR0,6BHACALLSETONE;写入 DS1302RETINC_M: INC6AH;闹钟分增加MOVA,6AHCJNEA,#60D,INCH4 MOV6AH,#0INCH4: MOVR1,#0C0H MOVR0,6AHACALLSETONE;RETINCH:;INC62H;MOV6FH,62H ACALLBCD_HEX INCACJNEA,#24D,INCH1 MOVA,#0INCH1: MOV6FH,AACALLHEX_BCD MOV62H,A MOVR1,#84H MOVR0,62HACALLSETONE;RETINCM:;INC61H;MOV6FH,61H ACALLBCD_HEX INCACJNEA,#60D,INCH2 MOVA,#0INCH2: MOV6FH,A ACALLHEX_BCD MOV61H,A MOVR1,#82H MOVR0,61HACALLSETONE;RET;-DEC-DEC2: JB 0EH,DECH JB 0FH,DECMJB 10H,DEC_H JB 11H,DEC_M RETDECH:MOV6FH,62H ACALLBCD_HEX DECACJNEA,#0FFH,DECH1MOVA,#23 DECH1: MOV6FH,AACALLHEX_BCD MOV62H,A MOVR1,#84H MOVR0,62H ACALLSETONE RETDECM:MOV6FH,61H ACALLBCD_HEX DECACJNEA,#0FFH,DECM1 MOVA,#59DECM1: MOV6FH,A ACALLHEX_BCDMOV61H,A MOVR1,#82H MOVR0,61H ACALLSETONE RETDEC_H: DEC6BH MOVA,6BHCJNEA,#0FFH,DECH3 MOV6BH,#23DDECH3: MOVR1,#0C2H MOVR0,6BH ACALLSETONE RETDEC_M: DEC6AH MOVA,6AHCJNEA,#0FFH,DECH4 MOV6AH,#59DDECH4: MOVR1,#0C0HMOVR0,6AH ACALLSETONE RET;-RIGHT-RIGHT: JB0EH,RIGHT1 JB0FH,RIGHT2JB10H,RIGHT3 JB11H,RIGHT4RET;右移RIGHT1: CLR0EH SETB0FH RETRIGHT2: CLR0FH SETB10H RETRIGHT3: CLR10H SETB11H RETRIGHT4: CLR11H SETB0EH RET;-LEFT-LEFT:JB0EH,LEFT1 JB0FH,LEFT2JB10H,LEFT3JB11H,LEFT4RET;左移LEFT1: SETB11H CLR0EH RETLEFT2: SETB0EH CLR0FH RETLEFT3: SETB0FH CLR10H RETLEFT4: SETB10H CLR11H RET;-MUTE-MUTE:setbk_ONCPL06H;静音CLR08H RET;-DISPLAY OFF-DIS_OFF:CLRET1 CPL05HJNB05H,REDORE SETBET1REDORE: RET;-初始化 1302-SET1302: CLRRST;2002 年 1 月 1 日 12:00:00 CLRLED3CLKMOVSECOND,#0 MOV61H,#0MOV62H,#18;MOV63H,#1MOV64H,#1MOV65H,#1MOV66H,#2 SETBRST MOVA,#8EH LCALL R_BIT MOVA,#00H LCALL R_BIT SETBLED3CLK CLRRSTMOVR0,#SECOND MOVR7,#7MOVR1,#80HSET1302A:CLRRST CLRLED3CLK SETBRST MOVA,R1 LCALL R_BIT MOVA,R0 LCALL R_BIT INCR0INCR1INCR1SETBLED3CLK CLRRSTDJNZR7,SET1302A CLRRSTCLRLED3CLK sETBLED3CLKnopCLRRSTnopclrled3clk SETBRST MOVA,#90H LCALL R_BITMOVA,#10100101B;充电器设置LCALL R_BIT SETBLED3CLK CLRRSTCLRLED3CLK SETBRST MOVA,#8EH LCALL R_BIT MOVA,#80H LCALL R_BIT SETBLED3CLK CLRRSTRET;读取一 RAMT_6061: CLRRST CLRLED3CLK SETBRST MOVA,R1 LCALL R_BIT LCALL W_BIT SETBLED3CLKCLRRST RET;R_1302: MOVR0,#SECOND MOVR7,#7MOVR1,#81H R_1302A: CLRRST CLRLED3CLKSETBRST MOVA,R1 LCALL R_BIT LCALL W_BIT MOVR0,A INCR0INCR1INCR1SETBLED3CLK CLRRSTDJNZR7,R_1302A RET;-R_BIT-R_BIT:MOVR4,#8 R_BIT1: RRCAMOVLED4IO,C SETBLED3CLK CLRLED3CLK DJNZR4,R_BIT1 RET;-W_BIT-W_BIT:MOVR4,#8 W_BIT1: MOVC,LED4IORRCASETBLED3CLK CLRLED3CLK DJNZR4,W_BIT1 RET;BCD_HEX:MOVA,6FH ANLA,#0FH MOVB,A MOVA,6FH MOV6FH,B SWAPAANLA,#0FH MOVB,#0AH MULAB ADDA,6FH;MOV6FH,ARET HEX_BCD:MOVA,6FH MOVB,#10 DIVAB SWAP A ADDA,B;MOV6FH,A RET;-写一地址 -R1 为地址, R0 为数据 -SETONE: CLRLED3CLK CLRRSTCLRLED3CLKNOPSETBRST MOVA,#8EH LCALL R_BIT MOVA,#00H LCALL R_BIT SETBLED3CLK CLRRSTCLRLED3CLK NOPCLRRSTCLRLED3CLK SETBRST MOVA,R1 LCALL R_BIT MOVA,R0 LCALL R_BIT NOPSETBLED3CLK CLRRSTNOPNOPCLRRSTCLRLED3CLK SETBRST MOVA,#8EHLCALL R_BIT MOVA,#80H LCALL R_BIT SETBLED3CLK CLRRSTRET

    注意事项

    本文(2022年毕业设计方案采用实时时钟芯片DSATC的红外遥控LED电子钟.docx)为本站会员(H****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开