📄 液晶timeend555555.lst
字号:
A51 MACRO ASSEMBLER 液綺TIMEEND555555 09/23/2007 15:17:42 PAGE 1
MACRO ASSEMBLER A51 V7.07
OBJECT MODULE PLACED IN 液晶TIMEEND555555.OBJ
ASSEMBLER INVOKED BY: D:\Program Files\keil uv2\C51\BIN\A51.EXE 液晶TIMEEND555555.ASM SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1
0082 2 RS EQU p0.2
0081 3 RW EQU P0.1
0080 4 E EQU P0.0
00B7 5 DAT EQU P3.7
6
001E 7 N0_jzh EQU 1EH ;键值存放单元
001F 8 N0_shb EQU 1FH ;遥控器识别码
002A 9 X1_n1 EQU 2AH ;连续六个单元,(可位操作)作
002B 10 X1_n2 EQU 2BH ;遥控输入数据缓冲区
002C 11 X1_n3 EQU 2CH
002D 12 X1_n4 EQU 2DH
002E 13 X1_n5 EQU 2EH
002F 14 X1_n6 EQU 2FH
0026 15 Ch_num EQU 26H ;缓冲区一个字节有几位
0025 16 Da_num EQU 25H ;数据缓冲区字节数
0027 17 Mo_num EQU 27H ;最多移位次数
0040 18 U0_x1 EQU 40H ;数据临时存放字节,存满8位后送2AH~2FH
0041 19 N0_JZH1 EQU 41H;存放键值时使用,做临时存放单元
0042 20 JHM EQU 42H
0043 21 TIMER1 EQU 43H
0044 22 JZHMA EQU 44H
0045 23 JHM_CLC EQU 45H
0046 24 OPEN_CLC EQU 46H
0047 25 START_SR EQU 47H
26
0050 27 YEAR EQU 50H
0051 28 MON1 EQU 51H
0052 29 MON2 EQU 52H
0053 30 DAY1 EQU 53H
0054 31 DAY2 EQU 54H
0055 32 HOUR1 EQU 55H
0056 33 HOUR2 EQU 56H
0057 34 MIN1 EQU 57H
0058 35 MIN2 EQU 58H
0059 36 SEC1 EQU 59H
005A 37 SEC2 EQU 5AH
005B 38 TIMER0 EQU 5BH
005C 39 DAY EQU 5CH
005D 40 MON EQU 5DH
005E 41 HOUR11 EQU 5EH
005F 42 HOUR22 EQU 5FH
43
0030 44 HOUR1_CLC EQU 30H
0031 45 HOUR2_CLC EQU 31H
0032 46 MIN1_CLC EQU 32H
0033 47 MIN2_CLC EQU 33H
0034 48 MIN1_SR EQU 34H
0035 49 MIN2_SR EQU 35H
0036 50 SEC1_SR EQU 36H
0037 51 SEC2_SR EQU 37H
0038 52 MSEC1_SR EQU 38H
0039 53 MSEC2_SR EQU 39H
54
55
56
0000 57 ORG 0000H
0000 020100 58 LJMP MAIN
A51 MACRO ASSEMBLER 液綺TIMEEND555555 09/23/2007 15:17:42 PAGE 2
59
60
61
000B 62 ORG 000BH
000B 02039F 63 LJMP INTT0
64
0013 65 ORG 0013H
0013 0204CF 66 LJMP INT_X1
67
0100 68 ORG 0100H
0100 758160 69 MAIN: MOV SP,#60H
0103 12029A 70 LCALL INIT
0106 12028A 71 LCALL JUDGE
0109 75A001 72 MOV P2,#01H
010C 12027F 73 LCALL ENABLE
010F 75A038 74 MOV P2,#38H
0112 12027F 75 LCALL ENABLE
0115 75A00C 76 MOV P2,#0CH
0118 12027F 77 LCALL ENABLE
011B 75A006 78 MOV P2,#06H
011E 12027F 79 LCALL ENABLE
0121 120266 80 LCALL DISP_INIT
0124 120172 81 LCALL DISPTIME
0127 120B7C 82 LCALL DSWD
012A 120B7C 83 LCALL DSWD
012D 120198 84 LCALL DISPTEMP
0130 E55B 85 START: MOV A,TIMER0
0132 B45009 86 CJNE A,#80,START_1
0135 120172 87 LCALL DISPTIME
0138 120B7C 88 LCALL DSWD
013B 120198 89 LCALL DISPTEMP
013E 1205AF 90 START_1: LCALL CHANGETIME
0141 1208B0 91 LCALL TWE_JINZHI
0144 1208CC 92 LCALL CLC
0147 120C72 93 LCALL SECRUN
014A 2130 94 AJMP START
95
96
97
98 ;---------------------------------------------------------------------------------------
99
014C 7910 100 DISP: MOV R1,#16
014E 7400 101 LOOP: MOV A,#00H
0150 93 102 MOVC A,@A+DPTR
0151 120158 103 LCALL DISP2
0154 A3 104 INC DPTR
0155 D9F7 105 DJNZ R1,LOOP
0157 22 106 RET
0158 F5A0 107 DISP2: MOV P2,A
015A D282 108 SETB RS
015C C281 109 CLR RW
015E C280 110 CLR E
0160 12027F 111 LCALL ENABLE
0163 D280 112 SETB E
0165 22 113 RET
0166 D282 114 DISP3: SETB RS
0168 C281 115 CLR RW
016A C280 116 CLR E
016C 12027F 117 LCALL ENABLE
016F D280 118 SETB E
0171 22 119 RET
120
0172 1201CB 121 DISPTIME: LCALL TWE_TF
0175 790B 122 MOV R1,#11
0177 7850 123 MOV R0,#50H
0179 9004BF 124 MOV DPTR ,#TABLE4
A51 MACRO ASSEMBLER 液綺TIMEEND555555 09/23/2007 15:17:42 PAGE 3
017C 7400 125 LOOP2: MOV A,#00H
017E 93 126 MOVC A,@A+DPTR
017F F5A0 127 MOV P2,A
0181 12027F 128 LCALL ENABLE
0184 A3 129 INC DPTR
0185 E6 130 MOV A,@R0
0186 2430 131 ADD A,#30H
0188 120158 132 LCALL DISP2
018B 08 133 INC R0
018C D9EE 134 DJNZ R1,LOOP2
018E 120201 135 LCALL DISP_HOUR
0191 75A00C 136 MOV P2,#0CH
0194 12027F 137 LCALL ENABLE
0197 22 138 RET
139
0198 12028A 140 DISPTEMP: LCALL JUDGE
019B 75A0CA 141 MOV P2,#0CAH
019E 12027F 142 LCALL ENABLE
01A1 7430 143 MOV A,#30H
01A3 2F 144 ADD A,R7
01A4 120158 145 LCALL DISP2
01A7 75A0CB 146 MOV P2,#0CBH
01AA 12027F 147 LCALL ENABLE
01AD 7430 148 MOV A,#30H
01AF 2E 149 ADD A,R6
01B0 120158 150 LCALL DISP2
01B3 75A0CD 151 MOV P2,#0CDH
01B6 12027F 152 LCALL ENABLE
01B9 7430 153 MOV A,#30H
01BB 2D 154 ADD A,R5
01BC 120158 155 LCALL DISP2
01BF 75A0CE 156 MOV P2,#0CEH
01C2 12027F 157 LCALL ENABLE
01C5 74DF 158 MOV A,#0DFH
01C7 120158 159 LCALL DISP2
01CA 22 160 RET
161
01CB E544 162 TWE_TF: MOV A,JZHMA
01CD B4FF2D 163 CJNE A,#0FFH,TWE_TF_3
01D0 E555 164 MOV A,HOUR1
01D2 C4 165 SWAP A
01D3 4556 166 ORL A,HOUR2
01D5 B41200 167 CJNE A,#12H,TWE_TF_1
01D8 4018 168 TWE_TF_1: JC TWE_TF_2
01DA B41202 169 CJNE A,#12H,TWE_TF_4
01DD 21F2 170 AJMP TWE_TF_2
01DF 2488 171 TWE_TF_4: ADD A,#88H
01E1 D4 172 DA A
01E2 F8 173 MOV R0,A
01E3 540F 174 ANL A,#0FH
01E5 F55F 175 MOV HOUR22,A
01E7 E8 176 MOV A,R0
01E8 C4 177 SWAP A
01E9 540F 178 ANL A,#0FH
01EB F55E 179 MOV HOUR11,A
01ED 120238 180 LCALL DISP_PM
01F0 4100 181 AJMP TWE_TF_OUT
01F2 85555E 182 TWE_TF_2: MOV HOUR11,HOUR1
01F5 85565F 183 MOV HOUR22,HOUR2
01F8 120221 184 LCALL DISP_AM
01FB 4100 185 AJMP TWE_TF_OUT
01FD 12024F 186 TWE_TF_3: LCALL DISP_APCLR
0200 22 187 TWE_TF_OUT: RET
188
0201 E544 189 DISP_HOUR: MOV A,JZHMA
0203 B4FF1A 190 CJNE A,#0FFH,DISP_HOUR_OUT
A51 MACRO ASSEMBLER 液綺TIMEEND555555 09/23/2007 15:17:42 PAGE 4
0206 75A0C0 191 MOV P2,#0C0H
0209 12027F 192 LCALL ENABLE
020C 7430 193 MOV A,#30H
020E 255E 194 ADD A,HOUR11
0210 120158 195 LCALL DISP2
0213 75A0C1 196 MOV P2,#0C1H
0216 12027F 197 LCALL ENABLE
0219 7430 198 MOV A,#30H
021B 255F 199 ADD A,HOUR22
021D 120158 200 LCALL DISP2
0220 22 201 DISP_HOUR_OUT: RET
202
0221 75A0C8 203 DISP_AM: MOV P2,#0C8H
0224 12027F 204 LCALL ENABLE
0227 7461 205 MOV A,#61H
0229 120158 206 LCALL DISP2
022C 75A0C9 207 MOV P2,#0C9H
022F 12027F 208 LCALL ENABLE
0232 746D 209 MOV A,#6DH
0234 120158 210 LCALL DISP2
0237 22 211 RET
212
0238 75A0C8 213 DISP_PM: MOV P2,#0C8H
023B 12027F 214 LCALL ENABLE
023E 7470 215 MOV A,#70H
0240 120158 216 LCALL DISP2
0243 75A0C9 217 MOV P2,#0C9H
0246 12027F 218 LCALL ENABLE
0249 746D 219 MOV A,#6DH
024B 120158 220 LCALL DISP2
024E 22 221 RET
024F 75A0C8 222 DISP_APCLR: MOV P2,#0C8H
0252 12027F 223 LCALL ENABLE
0255 7420 224 MOV A,#20H
0257 120158 225 LCALL DISP2
025A 75A0C9 226 MOV P2,#0C9H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -