📄 key_scan.lst
字号:
00E9 B4EB02 163 CJNE A,#0EBH,KEY5 ;4键查询
00EC 8047 164 JMP KEY4_SR
00EE 165 KEY5:
00EE B4DB02 166 CJNE A,#0DBH,KEY6 ;5键查询
00F1 8046 167 JMP KEY5_SR
00F3 168 KEY6:
00F3 B4BB02 169 CJNE A,#0BBH,KEY7 ;6键查询
00F6 8045 170 JMP KEY6_SR
00F8 171 KEY7:
00F8 B4ED02 172 CJNE A,#0EDH,KEY8 ;7键查询
00FB 8044 173 JMP KEY7_SR
00FD 174 KEY8:
00FD B4DD02 175 CJNE A,#0DDH,KEY9 ;8键查询
0100 8043 176 JMP KEY8_SR
0102 177 KEY9:
0102 B4BD02 178 CJNE A,#0BDH,KEYA ;9键查询
0105 8042 179 JMP KEY9_SR
0107 180 KEYA:
0107 B47702 181 CJNE A,#077H,KEYB ;A键查询
010A 8041 182 JMP KEYA_SR
010C 183 KEYB:
010C B47B02 184 CJNE A,#07BH,KEYC ;B键查询
010F 8040 185 JMP KEYB_SR
A51 MACRO ASSEMBLER KEY_SCAN 11/22/2007 09:15:49 PAGE 4
0111 186 KEYC:
0111 B47D02 187 CJNE A,#07DH,KEYD ;C键查询
0114 803F 188 JMP KEYC_SR
0116 189 KEYD:
0116 B47E02 190 CJNE A,#07EH,KEYE ;D键查询
0119 803E 191 JMP KEYD_SR
011B 192 KEYE:
011B B4EE02 193 CJNE A,#0EEH,KEYF ;E键查询
011E 803D 194 JMP KEYE_SR
0120 195 KEYF:
0120 B4BE42 196 CJNE A,#0BEH,KEY_SER_END ;F键查询
0123 803C 197 JMP KEYF_SR
198
0125 7F00 199 KEY0_SR:MOV R7,#0 ;译码,将码值存放在R7中
0127 803C 200 JMP KEY_SER_END
0129 7F01 201 KEY1_SR:MOV R7,#1
012B 8038 202 JMP KEY_SER_END
012D 7F02 203 KEY2_SR:MOV R7,#2
012F 8034 204 JMP KEY_SER_END
0131 7F03 205 KEY3_SR:MOV R7,#3
0133 8030 206 JMP KEY_SER_END
0135 7F04 207 KEY4_SR:MOV R7,#4
0137 802C 208 JMP KEY_SER_END
0139 7F05 209 KEY5_SR:MOV R7,#5
013B 8028 210 JMP KEY_SER_END
013D 7F06 211 KEY6_SR:MOV R7,#6
013F 8024 212 JMP KEY_SER_END
0141 7F07 213 KEY7_SR:MOV R7,#7
0143 8020 214 JMP KEY_SER_END
0145 7F08 215 KEY8_SR:MOV R7,#8
0147 801C 216 JMP KEY_SER_END
0149 7F09 217 KEY9_SR:MOV R7,#9
014B 8018 218 JMP KEY_SER_END
014D 7F0A 219 KEYA_SR:MOV R7,#0AH
014F 8014 220 JMP KEY_SER_END
0151 7F0B 221 KEYB_SR:MOV R7,#0BH
0153 8010 222 JMP KEY_SER_END
0155 7F0C 223 KEYC_SR:MOV R7,#0CH
0157 800C 224 JMP KEY_SER_END
0159 7F0D 225 KEYD_SR:MOV R7,#0DH
015B 8008 226 JMP KEY_SER_END
015D 7F0E 227 KEYE_SR:MOV R7,#0EH
015F 8004 228 JMP KEY_SER_END
0161 7F0F 229 KEYF_SR:MOV R7,#0FH
0163 8000 230 JMP KEY_SER_END
231
0165 232 KEY_SER_END:
0165 22 233 RET
234
235 ;===================================
236 ;共阳数码管码表
0166 237 DISCODE:
0166 C0F9A4B0 238 DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
016A 999282F8
016E 8090
239 ; 0 1 2 3 4 5 6 7 8 9
0170 8883C6A1 240 DB 88H,83H,0C6H,0A1H,86H,08EH,0BFH,0FFH,0F7H
0174 868EBFFF
0178 F7
241 ; A B C D E F - 消隐 _
242
243 ;===================================
244 ;扫描键码
0179 245 KEYCODE:
0179 DEE7D7B7 246 DB 0DEH,0E7H,0D7H,0B7H,0EBH,0DBH,0BBH
017D EBDBBB
A51 MACRO ASSEMBLER KEY_SCAN 11/22/2007 09:15:49 PAGE 5
247 ; 0 1 2 3 4 5 6
0180 EDDDBD77 248 DB 0EDH,0DDH,0BDH,77H,7BH,07DH,07EH,0EEH,0BEH
0184 7B7D7EEE
0188 BE
249 ; 7 8 9 A B C D * #
250
251 END
A51 MACRO ASSEMBLER KEY_SCAN 11/22/2007 09:15:49 PAGE 6
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
BITLOCK. . . . . . C ADDR 0091H A
DELAY. . . . . . . C ADDR 0085H A
DELAY_KEY. . . . . C ADDR 00CCH A
DISBUF . . . . . . N NUMB 0030H A
DISCODE. . . . . . C ADDR 0166H A
DISLOOP. . . . . . C ADDR 005AH A
DISPLAY. . . . . . C ADDR 0050H A
KEY. . . . . . . . C ADDR 00A5H A
KEY0_SR. . . . . . C ADDR 0125H A
KEY1 . . . . . . . C ADDR 00DAH A
KEY1_SR. . . . . . C ADDR 0129H A
KEY2 . . . . . . . C ADDR 00DFH A
KEY2_SR. . . . . . C ADDR 012DH A
KEY3 . . . . . . . C ADDR 00E4H A
KEY3_SR. . . . . . C ADDR 0131H A
KEY4 . . . . . . . C ADDR 00E9H A
KEY4_SR. . . . . . C ADDR 0135H A
KEY5 . . . . . . . C ADDR 00EEH A
KEY5_SR. . . . . . C ADDR 0139H A
KEY6 . . . . . . . C ADDR 00F3H A
KEY6_SR. . . . . . C ADDR 013DH A
KEY7 . . . . . . . C ADDR 00F8H A
KEY7_SR. . . . . . C ADDR 0141H A
KEY8 . . . . . . . C ADDR 00FDH A
KEY8_SR. . . . . . C ADDR 0145H A
KEY9 . . . . . . . C ADDR 0102H A
KEY9_SR. . . . . . C ADDR 0149H A
KEYA . . . . . . . C ADDR 0107H A
KEYA_SR. . . . . . C ADDR 014DH A
KEYB . . . . . . . C ADDR 010CH A
KEYBUF . . . . . . N NUMB 0039H A
KEYB_SR. . . . . . C ADDR 0151H A
KEYC . . . . . . . C ADDR 0111H A
KEYCODE. . . . . . C ADDR 0179H A
KEYC_SR. . . . . . C ADDR 0155H A
KEYD . . . . . . . C ADDR 0116H A
KEYD_SR. . . . . . C ADDR 0159H A
KEYE . . . . . . . C ADDR 011BH A
KEYE_SR. . . . . . C ADDR 015DH A
KEYF . . . . . . . C ADDR 0120H A
KEYF_SR. . . . . . C ADDR 0161H A
KEYTEMP. . . . . . N NUMB 0040H A
KEY_CHECH. . . . . C ADDR 00B1H A
KEY_DOWN_CHECH . . C ADDR 00AAH A
KEY_END. . . . . . C ADDR 00CBH A
KEY_SCAN . . . . . C ADDR 0097H A
KEY_SERCH. . . . . C ADDR 00D5H A
KEY_SER_END. . . . C ADDR 0165H A
KEY_UP_CHECH . . . C ADDR 00C4H A
L1 . . . . . . . . C ADDR 00CEH A
L2 . . . . . . . . C ADDR 00D0H A
LOOP . . . . . . . C ADDR 004AH A
LOOP1. . . . . . . C ADDR 0087H A
MAIN . . . . . . . C ADDR 0030H A
P0 . . . . . . . . D ADDR 0080H A
P1 . . . . . . . . D ADDR 0090H A
P2 . . . . . . . . D ADDR 00A0H A
POSIT. . . . . . . N NUMB 0038H A
POSI_CH. . . . . . C ADDR 0075H A
SEGLOCK. . . . . . C ADDR 008BH A
A51 MACRO ASSEMBLER KEY_SCAN 11/22/2007 09:15:49 PAGE 7
UP_DOWN. . . . . . B ADDR 0020H.0 A
UU . . . . . . . . C ADDR 0079H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -