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

📄 picc_keyboard.lst

📁 PIC 单片机 键盘扫描 PROTEUS 防真通过测试适合初学者
💻 LST
📖 第 1 页 / 共 3 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL1
                                                      Mon Mar 31 11:42:08 2008


     1                           	processor	16F877
     2                           	opt	pw 79
     3                           	psect	__Z49231UD_,global,delta=1
     4                           	psect	config,global,class=CONFIG,delta=2
     5                           	psect	text5,local,class=CODE,delta=2
     6                           	psect	text6,local,class=CODE,delta=2
     7                           	psect	rbss_0,global,class=BANK0,space=1,delta=
      +                          1
     8                           	psect	temp,global,ovrld,class=BANK0,space=1,de
      +                          lta=1
     9  0000                     
    10  0000                     
    11  0000                     
    12  0000                     
    13  0000                     
    14  0000                     
    15  0000                     
    16  0000                     
    17  0000                     
    18  0000                     	;#
    19                           
    20                           	psect	config
    21  2007  1832               	dw	6194	;#
    22                           
    23                           	psect	text5
    24                           ;PICC_Keyboard.c: 151: void delay()
    25                           ;PICC_Keyboard.c: 152: {
    26  0684                     _delay
    27                           ;	_i assigned to ?a_delay+0
    28  0000                     _delay$i	set	?a_delay
    29                           ;PICC_Keyboard.c: 153: int i;
    30  0684  3032               	movlw	50
    31  0685  0183               	clrf	3	;select bank 0
    32  0686  00A6               	movwf	?a_delay
    33  0687  01A7               	clrf	?a_delay+1
    34  0688                     l46
    35  0688  08A6               	movf	?a_delay
    36  0689  1903               	btfsc	3,2
    37  068A  03A7               	decf	?a_delay+1
    38  068B  03A6               	decf	?a_delay
    39  068C  0827               	movf	?a_delay+1,w
    40  068D  3A80               	xorlw	128
    41  068E  00F0               	movwf	btemp
    42  068F  3080               	movlw	128
    43  0690  0270               	subwf	btemp,w
    44  0691  3001               	movlw	1
    45                           ;set	bank bits (((?a_delay+0)))
    46  0692  1903               	btfsc	3,2
    47  0693  0226               	subwf	?a_delay,w
    48  0694  1C03               	btfss	3,0
    49  0695  0008               	return
    50  0696  2E88               	goto	l46
    51                           ;PICC_Keyboard.c: 59: bit pkey()
    52                           ;PICC_Keyboard.c: 61: {
    53  0697                     _pkey
    54                           ;PICC_Keyboard.c: 62: PORTC=0XF0;
    55  0697  30F0               	movlw	-16
    56  0698  0183               	clrf	3	;select bank 0
    57  0699  0087               	movwf	7	;volatile
    58                           ;PICC_Keyboard.c: 64: if (PORTC!=0XF0)
    59  069A  0807               	movf	7,w	;volatile
    60  069B  3AF0               	xorlw	-16
    61  069C  1903               	btfsc	3,2
    62  069D  2EA7               	goto	l7
    63                           ;PICC_Keyboard.c: 65: {
    64  069E  2684               	fcall	_delay
    65                           ;PICC_Keyboard.c: 68: if(PORTC!=0XF0)
    66  069F  0807               	movf	7,w	;volatile
    67  06A0  3AF0               	xorlw	-16
    68  06A1  1903               	btfsc	3,2
    69  06A2  2EA5               	goto	l8
    70                           ;PICC_Keyboard.c: 69: return 1;
    71  06A3  1403               	bsf	3,0
    72  06A4  0008               	return
    73  06A5                     l8
    74  06A5  1003               	bcf	3,0
    75  06A6  0008               	return
    76  06A7                     l7
    77  06A7  1003               	bcf	3,0
    78                           ;PICC_Keyboard.c: 74: }
    79  06A8  0008               	return
    80                           ;PICC_Keyboard.c: 107: void display()
    81                           ;PICC_Keyboard.c: 108: {
    82  06A9                     _display
    83                           ;PICC_Keyboard.c: 109: switch(result)
    84  06A9  2F76               	goto	l27
    85  06AA                     l28
    86                           ;PICC_Keyboard.c: 110: {
    87                           ;PICC_Keyboard.c: 112: PORTA=0X2f;PORTD=0x3f;PO
      +                          RTA=0X00;delay(); PORTA=0X1f;PORTD=0x3f;PORTA=0
      +                          X00;delay();break;
    88  06AA  302F               	movlw	47
    89  06AB  0085               	movwf	5	;volatile
    90  06AC  303F               	movlw	63
    91  06AD  0088               	movwf	8	;volatile
    92  06AE  0185               	clrf	5	;volatile
    93  06AF  2684               	fcall	_delay
    94  06B0  301F               	movlw	31
    95  06B1  0085               	movwf	5	;volatile
    96  06B2  303F               	movlw	63
    97  06B3  0088               	movwf	8	;volatile
    98  06B4  0185               	clrf	5	;volatile
    99  06B5  2E84               	ljmp	_delay
   100  06B6                     l29
   101                           ;PICC_Keyboard.c: 113: case 1:
   102                           ;PICC_Keyboard.c: 114: PORTA=0X2f;PORTD=0x06;PO
      +                          RTA=0X00;delay();PORTA=0X1f;PORTD=0x3f;PORTA=0X
      +                          00;delay();break;
   103  06B6  302F               	movlw	47
   104  06B7  0085               	movwf	5	;volatile
   105  06B8  3006               	movlw	6
   106  06B9  0088               	movwf	8	;volatile
   107  06BA  0185               	clrf	5	;volatile
   108  06BB  2684               	fcall	_delay
   109  06BC  301F               	movlw	31
   110  06BD  0085               	movwf	5	;volatile
   111  06BE  303F               	movlw	63
   112  06BF  0088               	movwf	8	;volatile
   113  06C0  0185               	clrf	5	;volatile
   114  06C1  2E84               	ljmp	_delay
   115  06C2                     l30
   116                           ;PICC_Keyboard.c: 115: case 2:
   117                           ;PICC_Keyboard.c: 116: PORTA=0X2f;PORTD=0x5b;PO
      +                          RTA=0X00;delay();PORTA=0X1f;PORTD=0x3f;PORTA=0X
      +                          00;delay();break;
   118  06C2  302F               	movlw	47
   119  06C3  0085               	movwf	5	;volatile
   120  06C4  305B               	movlw	91
   121  06C5  0088               	movwf	8	;volatile
   122  06C6  0185               	clrf	5	;volatile
   123  06C7  2684               	fcall	_delay
   124  06C8  301F               	movlw	31
   125  06C9  0085               	movwf	5	;volatile
   126  06CA  303F               	movlw	63
   127  06CB  0088               	movwf	8	;volatile
   128  06CC  0185               	clrf	5	;volatile
   129  06CD  2E84               	ljmp	_delay
   130  06CE                     l31
   131                           ;PICC_Keyboard.c: 117: case 3:
   132                           ;PICC_Keyboard.c: 118: PORTA=0X2f;PORTD=0x4f;PO
      +                          RTA=0X00;delay();PORTA=0X1f;PORTD=0x3f;PORTA=0X
      +                          00;delay();break;
   133  06CE  302F               	movlw	47
   134  06CF  0085               	movwf	5	;volatile
   135  06D0  304F               	movlw	79
   136  06D1  0088               	movwf	8	;volatile
   137  06D2  0185               	clrf	5	;volatile
   138  06D3  2684               	fcall	_delay
   139  06D4  301F               	movlw	31
   140  06D5  0085               	movwf	5	;volatile
   141  06D6  303F               	movlw	63
   142  06D7  0088               	movwf	8	;volatile
   143  06D8  0185               	clrf	5	;volatile
   144  06D9  2E84               	ljmp	_delay
   145  06DA                     l32
   146                           ;PICC_Keyboard.c: 119: case 4:
   147                           ;PICC_Keyboard.c: 120: PORTA=0X2f;PORTD=0x66;PO
      +                          RTA=0X00;delay();PORTA=0X1f;PORTD=0x3f;PORTA=0X
      +                          00;delay();break;
   148  06DA  302F               	movlw	47
   149  06DB  0085               	movwf	5	;volatile
   150  06DC  3066               	movlw	102
   151  06DD  0088               	movwf	8	;volatile
   152  06DE  0185               	clrf	5	;volatile
   153  06DF  2684               	fcall	_delay
   154  06E0  301F               	movlw	31
   155  06E1  0085               	movwf	5	;volatile
   156  06E2  303F               	movlw	63
   157  06E3  0088               	movwf	8	;volatile
   158  06E4  0185               	clrf	5	;volatile
   159  06E5  2E84               	ljmp	_delay
   160  06E6                     l33
   161                           ;PICC_Keyboard.c: 121: case 5:
   162                           ;PICC_Keyboard.c: 122: PORTA=0X2f; PORTD=0x6d;P
      +                          ORTA=0X00;delay();PORTA=0X1f;PORTD=0x3f;PORTA=0
      +                          X00;delay();break;
   163  06E6  302F               	movlw	47
   164  06E7  0085               	movwf	5	;volatile
   165  06E8  306D               	movlw	109
   166  06E9  0088               	movwf	8	;volatile
   167  06EA  0185               	clrf	5	;volatile
   168  06EB  2684               	fcall	_delay
   169  06EC  301F               	movlw	31
   170  06ED  0085               	movwf	5	;volatile
   171  06EE  303F               	movlw	63
   172  06EF  0088               	movwf	8	;volatile
   173  06F0  0185               	clrf	5	;volatile
   174  06F1  2E84               	ljmp	_delay
   175  06F2                     l34
   176                           ;PICC_Keyboard.c: 123: case 6:
   177                           ;PICC_Keyboard.c: 124: PORTA=0X2f;PORTD=0x7d;PO
      +                          RTA=0X00;delay();PORTA=0X1f;PORTD=0X3f;PORTA=0X
      +                          00;delay();break;
   178  06F2  302F               	movlw	47
   179  06F3  0085               	movwf	5	;volatile
   180  06F4  307D               	movlw	125
   181  06F5  0088               	movwf	8	;volatile
   182  06F6  0185               	clrf	5	;volatile
   183  06F7  2684               	fcall	_delay
   184  06F8  301F               	movlw	31
   185  06F9  0085               	movwf	5	;volatile
   186  06FA  303F               	movlw	63
   187  06FB  0088               	movwf	8	;volatile
   188  06FC  0185               	clrf	5	;volatile
   189  06FD  2E84               	ljmp	_delay
   190  06FE                     l35
   191                           ;PICC_Keyboard.c: 125: case 7:
   192                           ;PICC_Keyboard.c: 126: PORTA=0X2f;PORTD=0x7f;PO
      +                          RTA=0X00;delay();PORTA=0X1f;PORTD=0X3f;PORTA=0X
      +                          00;delay();break;
   193  06FE  302F               	movlw	47
   194  06FF  0085               	movwf	5	;volatile
   195  0700  307F               	movlw	127
   196  0701  0088               	movwf	8	;volatile
   197  0702  0185               	clrf	5	;volatile
   198  0703  2684               	fcall	_delay
   199  0704  301F               	movlw	31
   200  0705  0085               	movwf	5	;volatile
   201  0706  303F               	movlw	63
   202  0707  0088               	movwf	8	;volatile
   203  0708  0185               	clrf	5	;volatile
   204  0709  2E84               	ljmp	_delay
   205  070A                     l36
   206                           ;PICC_Keyboard.c: 127: case 8:
   207                           ;PICC_Keyboard.c: 128: PORTA=0X2f; PORTD=0x6f;P
      +                          ORTA=0X00;delay();PORTA=0X1f;PORTD=0X3f;PORTA=0
      +                          X00;delay();break;
   208  070A  302F               	movlw	47
   209  070B  0085               	movwf	5	;volatile
   210  070C  306F               	movlw	111
   211  070D  0088               	movwf	8	;volatile
   212  070E  0185               	clrf	5	;volatile
   213  070F  2684               	fcall	_delay
   214  0710  301F               	movlw	31
   215  0711  0085               	movwf	5	;volatile
   216  0712  303F               	movlw	63
   217  0713  0088               	movwf	8	;volatile
   218  0714  0185               	clrf	5	;volatile
   219  0715  2E84               	ljmp	_delay
   220  0716                     l37
   221                           ;PICC_Keyboard.c: 129: case 9:
   222                           ;PICC_Keyboard.c: 130: PORTA=0X2f;PORTD=0x77;PO
      +                          RTA=0X00;delay();PORTA=0X1f;PORTD=0X06;PORTA=0X
      +                          00;delay();break;
   223  0716  302F               	movlw	47
   224  0717  0085               	movwf	5	;volatile
   225  0718  3077               	movlw	119
   226  0719  0088               	movwf	8	;volatile
   227  071A  0185               	clrf	5	;volatile
   228  071B  2684               	fcall	_delay
   229  071C  301F               	movlw	31
   230  071D  0085               	movwf	5	;volatile
   231  071E  3006               	movlw	6
   232  071F  0088               	movwf	8	;volatile
   233  0720  0185               	clrf	5	;volatile
   234  0721  2E84               	ljmp	_delay
   235  0722                     l38
   236                           ;PICC_Keyboard.c: 131: case 10:
   237                           ;PICC_Keyboard.c: 132: PORTA=0X2f; PORTD=0x3f;P
      +                          ORTA=0X00;delay();PORTA=0X1f;PORTD=0x06;PORTA=0
      +                          X00;delay();break;
   238  0722  302F               	movlw	47
   239  0723  0085               	movwf	5	;volatile
   240  0724  303F               	movlw	63
   241  0725  0088               	movwf	8	;volatile
   242  0726  0185               	clrf	5	;volatile
   243  0727  2684               	fcall	_delay
   244  0728  301F               	movlw	31
   245  0729  0085               	movwf	5	;volatile
   246  072A  3006               	movlw	6
   247  072B  0088               	movwf	8	;volatile
   248  072C  0185               	clrf	5	;volatile
   249  072D  2E84               	ljmp	_delay
   250  072E                     l39
   251                           ;PICC_Keyboard.c: 133: case 11:
   252                           ;PICC_Keyboard.c: 134: PORTA=0X2f; PORTD=0x06;P
      +                          ORTA=0X00;delay();PORTA=0X1f;PORTD=0x06;PORTA=0
      +                          X00;delay();break;
   253  072E  302F               	movlw	47

⌨️ 快捷键说明

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