永发信息网

基于单片机AT89C2051的电子闹钟的设计

答案:3  悬赏:20  手机版
解决时间 2021-08-11 19:47
  • 提问者网友:喧嚣尘世
  • 2021-08-11 13:55

急求有关AT89C2051的电子闹钟设计毕业论文! 相关资料也行。有的朋友请帮帮忙。邮箱:zhouminjun1989@163.com        328069605@qq.com      感谢万分!!!

最佳答案
  • 五星知识达人网友:舊物识亽
  • 2021-08-11 14:34

//*APPLICATION NOTE  E6000 ICEXPLORER ***************


//* Title:    FOR AT89C2051时钟程序    *


//* Version:      00    *


//* Last Updated:    *


//* MCU:    AT89C2051    *


//* FOR:    WWW.PICAVR.COM    *


//***************************************************


;  定时器T0、T1溢出周期为50MS,T0为秒计数用, T1为调整时闪烁用,


;  P3.7为调整按钮,P1口 为字符输出口,采用共阳显示管。


;**************************************************************


    C_HOUR    EQU    30H    ;当前时的个位地址定义


    C_MINUTE    EQU    31H    ;当前分的个位地址定义


    ON_HOUR    EQU    32H    ;开机时的个位地址定义


    ON_MINUTE   EQU    33H    ;开机分的个位地址定义


    OFF_HOUR    EQU    34H    ;关机时的个位地址定义


    OFF_MINUTE  EQU    35H    ;关机分的个位地址定义


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


;;    中断入口程序    ;;


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


    ORG    0000H    ;程序执行开始地址


    LJMP    START    ;跳到标号START执行


    ORG    0003H    ;外中断0中断程序入口


    RETI    ;外中断0中断返回


    ORG    000BH    ;定时器T0中断程序入口


    LJMP    INTT0    ;跳至INTTO执行


    ORG    0013H    ;外中断1中断程序入口


    RETI    ;外中断1中断返回


    ORG    001BH    ;定时器T1中断程序入口


    LJMP    INTT1    ;跳至INTT1执行


    ORG    0023H    ;串行中断程序入口地址


    RETI    ;串行中断程序返回


 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


 ;;    主 程 序    ;;


 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


    ORG   0030H


START:    MOV   SP,#50H    ;堆栈指针入口地址


    CLR   P1.7


    ANL   P1,#0FFH


    MOV   C_HOUR,#00H


    MOV   C_MINUTE,#00H


;********************************************************************


    MOV   ON_HOUR,#08H


    MOV   ON_MINUTE,#00H    ;置开机时间为08:00


    MOV   OFF_HOUR,#08H


    MOV   OFF_MINUTE,#01H   ;置关机时间为08:01


;********************************************************************


    MOV   R0,#70H    ;清70H-7AH共11个内存单元


    MOV   R7,#0BH    ;


CLEARDISP:    MOV   @R0,#00H    ;


    INC   R0    ;


    DJNZ  R7,CLEARDISP    ;


    MOV   20H,#00H    ;清20H(标志用)


    MOV   7AH,#0AH    ;放入"熄灭符"数据


    MOV   TMOD,#11H    ;设T0、T1为16位定时器


    MOV   TL0,#0B0H    ;50MS定时初值(T0计时用)


    MOV   TH0,#3CH    ;50MS定时初值


    MOV   TL1,#0B0H    ;50MS定时初值(T1闪烁定时用)


    MOV   TH1,#3CH     ;50MS定时初值


    SETB  EA    ;总中断开放


    SETB  ET0    ;允许T0中断


    SETB  TR0    ;开启T0定时器


    MOV   R4,#14H    ;1秒定时用初值(50MS×20)


LOOP:    MOV   A,C_HOUR


    CJNE  A,ON_HOUR,OFF_TIME


    MOV   A,C_MINUTE


    CJNE  A,ON_MINUTE,OFF_TIME ;判断当前时间是否等於开机时间


    SETB  P1.7    ;置开关输出控制端口P3.7为"0"


    AJMP  START1 



OFF_TIME:    MOV   A,C_HOUR


    CJNE  A,OFF_HOUR,START1


    MOV   A,C_MINUTE


    CJNE  A,OFF_MINUTE,START1 ;判断当前时间是否等於关机时间


    CLR   P1.7    ;置开关输出控制端口P3.7为"1"


START1:    LCALL DISPLAY    ;调用显示子程序


    JNB   P3.7,SETMM1    ;P3.7口为0时转时间调整程序


    SJMP  LOOP    ;P3.7口为1时跳回START1


SETMM1:    LJMP  SETMM    ;转到时间调整程序SETMM


。。。。。。。。。。。。。。。。。。。。。


AT89C2051_带音乐的定时时钟控制器


参考链接: http://www.51picavr.com/news/c8/2009-01/108.htm


全部回答
  • 1楼网友:拾荒鲤
  • 2021-08-11 15:53

电子时钟.rar

数字时钟.rar

  • 2楼网友:老鼠爱大米
  • 2021-08-11 15:17
;clock0 _program 2000-5-17 ;*************** ; p1.0 A ; p1.1 b ; p1.2 c ; p1.3 d ; p1.4 e ; p1.5 f ; p1.6 g ; p1.7 蜂鸣与正极 ; p3.4 星期 ; p3.3 时位十 ; p3.2 时位个 ; p3.1 分位十 ; p3.0 分位个 ; p3.5 消隐 ; p3.7 设置 ; 与p3.0加数键 ; 与p3.1功能键 key_power equ 08h timers equ key_power+1 ;************************************************** week equ timers+2h day equ timers+3h mou equ timers+4h min equ timers+5h hour equ timers+6h al1_m equ timers+7h al1_h equ al1_m+1h al2_m equ al1_m+2h al2_h equ al1_m+3h ;ram addres at 14h sec equ al2_h+1h timer_no equ sec+1h year equ timer_no+1h ;************************************************* time_led1 equ 24h time_led2 equ time_led1+1 time_led3 equ time_led2+1 led1 equ time_led3+1h led2 equ led1+1 led3 equ led2+1 led4 equ led3+1 led5 equ led4+1 timer_ting equ led5+1 timer_charge equ timer_ting+1 ;charge_t equ timer_charge+1 ;charge_d1 equ charge_t+1 seach_led equ timer_charge+1h seach_key equ seach_led+1h seach_set equ seach_key+1h moue_2 equ seach_set+1h beep_timer equ moue_2+1h
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯