MAIN: MOV SP, #50H MOV 20H, #3CH ;时间 BIN SECOND MOV 21H, #3CH ;BIN MINUTE MOV 22H, #18H ;BIN HOUR MOV 23H, #01H ;闹铃 BIN MINUTE MOV 24H, #01H ;BIN HOUR MOV 25H, #00H ;定义一个标志位 MOV 30H, #00H ;时间 BCD SECOND MOV 31H, #00H MOV 32H, #00H ;BCD MINUTE MOV 33H, #00H MOV 34H, #00H ;BCD HOUR MOV 35H, #00H MOV 36H, #01H ;闹铃 BCD MINUTE 单片机/ 微机接口课程设计说明书 10 MOV 37H, #00H MOV 38H, #01H ;BCD HOUR MOV 39H, #00H MOV TMOD, #01H ;16 位计数器 T0, 方式 1 MOV THO, #03CH ;赋初值 MOV TLO, #0B0H MOV IE, #10000111B; 开中断 TO,EA=1 SETB TRO ;T0 启动计数 MOV R2,#14H ;计数器 MOV P2,#0FFH LOOP:LCALL TIMEPRO ;调用现在时间与闹铃时间比较程序 LCALL DISPLAY1 ;调用现在时间显示子程序 JBK1,M1;判断按键是否按下 LCALL XIAOZHEN1 ;调用消抖程序 MOV C,25H.0 JCA1 A1: CLR 25H.0 LCALL SETTIME ;调用设置现在时间子程序 LJMP LOOP M1:JBK2, M2 LCALL XIAOZHEN2 MOV C,25H.0 JCA2 A2: CLR 25H.0 LCALL SETTIME ;调用设置闹钟的程序