⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keypad.lst

📁 Library for the 8051 microcontroller. such as math routine, hexBCD, LCD, Keyboard, I2C, Remote, Ke
💻 LST
📖 第 1 页 / 共 2 页
字号:
  170:
  171:	  00F5	E5 90		            mov a,p1
  172:	  00F7	54 FD		            anl a,#11111101b 			 ;test row one
  173:	  00F9	B4 FD 25	            cjne a,#11111101b,row_1
  174:				;---------------------------------------------------------------------
  175:	  00FC	D2 90		            setb ROW0
  176:	  00FE	D2 91					setb ROW1
  177:	  0100	C2 92					clr ROW2
  178:	  0102	D2 93					setb ROW3
  179:
  180:	  0104	E5 90		            mov a,p1
  181:	  0106	54 FB		            anl a,#11111011b			 ;test row two
  182:	  0108	B4 FB 1B	            cjne a,#11111011b,row_2
  183:				;---------------------------------------------------------------------
  184:	  010B	D2 90					setb ROW0
  185:	  010D	D2 91					setb ROW1
  186:	  010F	D2 92					setb ROW2
  187:	  0111	C2 93					clr ROW3
  188:
  189:	  0113	E5 90		            mov a,p1
  190:	  0115	54 F7		            anl a,#11110111b  		    ;test row three
  191:	  0117	B4 F7 11	            cjne a,#11110111b,row_3
  192:				;----------------------------------------------------------------------
  193:	  011A	80 A7		            sjmp ks_loop1
  194:				;----------------------------------------------------------------------
  195:	  011C	90 01 46	row_0:      mov dptr,#disp_kcode0
  196:	  011F	80 0F		             sjmp find_num
  197:
  198:	  0121	90 01 4A	row_1:      mov dptr,#disp_kcode1
  199:	  0124	80 0A		             sjmp find_num
  200:

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 5



 Line  I  Addr  Code            Source

  201:	  0126	90 01 4E	row_2:      mov dptr,#disp_kcode2
  202:	  0129	80 05		             sjmp find_num
  203:
  204:	  012B	90 01 52	row_3:      mov dptr,#disp_kcode3
  205:	  012E	80 00		             sjmp find_num
  206:				;----------------------------------------------------------------------
  207:	  0130	33		find_num:   rlc a
  208:	  0131	50 03		            jnc found_num      ;which column is pressed/grounded
  209:	  0133	A3		            inc dptr
  210:	  0134	80 FA		            sjmp find_num
  211:				;----------------------------------------------------------------------
  212:	  0136	C2 B7		found_num:  clr ALERT ;notify main MC that key has been pressed
  213:
  214:	  0138	E4					clr a
  215:	  0139	93		            movc a,@a+dptr
  216:	  013A	F5 30					mov DIGIT,a
  217:	  013C	11 3C					acall tx_main     ;send pressed button to serial port
  218:	  013E	11 85					acall ascii2hex
  219:	  0140	11 9F					acall send4x4_parallel
  220:
  221:	  0142	D2 B7					setb ALERT  ;bring keypad module to waiting state
  222:				;-----------------------------------------------------------------------
  223:	  0144	01 B9		            jmp ks_main1
  224:				;-----------------------------------------------------------------------
  225:	  0146	30 31 32 33	disp_kcode0:DB'0','1','2','3'
  226:	  014A	34 35 36 37	disp_kcode1:DB'4','5','6','7'
  227:	  014E	38 39 41 42	disp_kcode2:DB'8','9','A','B'
  228:	  0152	43 44 45 46	disp_kcode3:DB'C','D','E','F'
  229:				;-----------------------------------------------------------------------
  230:
  231:				end





                     register banks used:  ---

                     no errors




ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 6





	       L I S T   O F   S Y M B O L S
	       =============================


SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
??ASEM_51			  NUMBER    8051
??VERSION			  NUMBER    0130
AC				  BIT	      D6
ACC				  DATA	      E0
ALERT				  NUMBER    00B7	  20
ASCII2HEX			  CODE	    0085	  95
ASCII2HEX_LOOP1			  CODE	    0094	 104
ASCII2HEX_LOOP2			  CODE	    0099	 108
B				  DATA	      F0
CHECK_ROW			  CODE	    00D9	 154
CLMN0				  NUMBER    0097	  14
CLMN1				  NUMBER    0096	  15
CLMN2				  NUMBER    0095	  16
CLMN3				  NUMBER    0094	  17
CY				  BIT	      D7
DEBOUNCE			  CODE	    00CE	 148
DELAY_20MS			  CODE	    004D	  64
DELAY_20MS_LOOP1		  CODE	    0053	  67
DELAY_20MS_LOOP2		  CODE	    0055	  68
DIGIT				  DATA	      30	  19
DISP_KCODE0			  CODE	    0146	 225
DISP_KCODE1			  CODE	    014A	 226
DISP_KCODE2			  CODE	    014E	 227
DISP_KCODE3			  CODE	    0152	 228
DISP_MESSAGE			  CODE	    005E	  76
DISP_MESSAGE_LOOP1		  CODE	    0060	  78
DISP_MESSAGE_LOOP2		  CODE	    0069	  85
DISP_PRESSED			  CODE	    0070	  91
DPH				  DATA	      83
DPL				  DATA	      82
EA				  BIT	      AF
ES				  BIT	      AC
ET0				  BIT	      A9
ET1				  BIT	      AB
EX0				  BIT	      A8
EX1				  BIT	      AA
EXTI0				  CODE	    0003
EXTI1				  CODE	    0013
F0				  BIT	      D5
FIND_NUM			  CODE	    0130	 207
FOUND_NUM			  CODE	    0136	 212
IE				  DATA	      A8
IE0				  BIT	      89
IE1				  BIT	      8B
INT0				  BIT	      B2
INT1				  BIT	      B3
IP				  DATA	      B8
IT0				  BIT	      88
IT1				  BIT	      8A
KS_LOOP1			  CODE	    00C3	 142

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 7



SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
KS_MAIN				  CODE	    00B2	 133
KS_MAIN1			  CODE	    00B9	 137
OV				  BIT	      D2
P				  BIT	      D0
P0				  DATA	      80
P1				  DATA	      90
P2				  DATA	      A0
P3				  DATA	      B0
PCON				  DATA	      87
PS				  BIT	      BC
PSW				  DATA	      D0
PT0				  BIT	      B9
PT1				  BIT	      BB
PX0				  BIT	      B8
PX1				  BIT	      BA
RB8				  BIT	      9A
RD				  BIT	      B7
REN				  BIT	      9C
RESET				  CODE	    0000
RI				  BIT	      98
ROW0				  NUMBER    0090	   9
ROW1				  NUMBER    0091	  10
ROW2				  NUMBER    0092	  11
ROW3				  NUMBER    0093	  12
ROW_0				  CODE	    011C	 195
ROW_1				  CODE	    0121	 198
ROW_2				  CODE	    0126	 201
ROW_3				  CODE	    012B	 204
RS0				  BIT	      D3
RS1				  BIT	      D4
RXD				  BIT	      B0
RX_LOOP				  CODE	    0045	  57
RX_MAIN				  CODE	    0044	  56
S9K_MAIN			  CODE	    0030	  35
SBUF				  DATA	      99
SCON				  DATA	      98
SEND4X4_PARALLEL		  CODE	    009F	 114
SINT				  CODE	    0023
SM0				  BIT	      9F
SM1				  BIT	      9E
SM2				  BIT	      9D
SP				  DATA	      81
T0				  BIT	      B4
T1				  BIT	      B5
TB8				  BIT	      9B
TCON				  DATA	      88
TF0				  BIT	      8D
TF1				  BIT	      8F
TH0				  DATA	      8C
TH1				  DATA	      8D
TI				  BIT	      99
TIMER0				  CODE	    000B
TIMER1				  CODE	    001B
TL0				  DATA	      8A
TL1				  DATA	      8B
TMOD				  DATA	      89

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 8



SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
TR0				  BIT	      8C
TR1				  BIT	      8E
TXD				  BIT	      B1
TX_LOOP				  CODE	    003E	  47
TX_MAIN				  CODE	    003C	  46
WR				  BIT	      B6

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -