📄 clock.lst
字号:
A51 MACRO ASSEMBLER CLOCK 06/20/2007 09:42:11 PAGE 1
MACRO ASSEMBLER A51 V8.00c
OBJECT MODULE PLACED IN clock.OBJ
ASSEMBLER INVOKED BY: d:\Keil\C51\BIN\A51.EXE clock.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
0040 1 MODE_RG EQU 40H ;模式选择
0060 2 MODE2 EQU 60H ;MODE值
0061 3 MODE3 EQU 61H
0062 4 MODE4 EQU 62H
0063 5 MODE5 EQU 63H
0064 6 MODE6 EQU 64H
0065 7 MODE1 EQU 65H
8
0041 9 HOUR EQU 41H ;小时缓冲区
0042 10 MIN EQU 42H ;分钟缓冲区
0043 11 SEC EQU 43H ;秒缓冲区
004A 12 TEMP EQU 4AH
13
14 ;*********闹钟缓冲区********************
006A 15 H_ALARM EQU 6AH ;闹钟缓冲区
006B 16 M_ALARM EQU 6BH
006C 17 S_ALARM EQU 6CH
006D 18 F_ALARM EQU 6DH
19 ;***********秒表缓冲区******************
0076 20 M_SEC EQU 76H
0077 21 S_SEC EQU 77H
22 ;*********LED送显示临时变量*************
0051 23 LED0 EQU 51H
0052 24 LED1 EQU 52H
0053 25 LED2 EQU 53H
0054 26 LED3 EQU 54H
00B4 27 MODE_KEY EQU P3.4
00B3 28 UP_KEY EQU P3.3
00B5 29 DOWN_KEY EQU P3.5
0049 30 BUF EQU 49H
31
0000 32 ORG 0000H
0000 020080 33 LJMP MAIN
000B 34 ORG 000BH
000B 0202B7 35 LJMP INT_0
001B 36 ORG 001BH
001B 0202EF 37 LJMP INT_1
0080 38 ORG 0080H
0080 75812F 39 MAIN: MOV SP,#2FH ;中断初始化
0083 754000 40 MOV MODE_RG,#0 ;MODE_RG寄存器值初始化
0086 7551FE 41 MOV LED0,#0FEH ;初始化LED
0089 7552FD 42 MOV LED1,#0FDH
008C 7553FB 43 MOV LED2,#0FBH
008F 7554F7 44 MOV LED3,#0F7H
0092 756501 45 MOV MODE1,#1
0095 756002 46 MOV MODE2,#2
0098 756103 47 MOV MODE3,#3
009B 756204 48 MOV MODE4,#4
009E 756305 49 MOV MODE5,#5
00A1 756406 50 MOV MODE6,#6
00A4 756D00 51 MOV F_ALARM,#0 ;错误2:一开始用 CLR F_ALARM,这导致在后面
的时候JZ F_ALARM 运行错误,
00A7 754900 52 MOV BUF,#0 ;在于 JZ 指令是对累
加器A全为0或者全为1进行判断,CLR只能对一位操作
00AA 758911 53 MOV TMOD,#11H ;定时器初始化:定时器0,方式1,定时器1,方
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -