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

📄 key.lst

📁 PIC串口程序  可以帮助你编写串口程序  里面还有我自己做的协议 很方便
💻 LST
📖 第 1 页 / 共 3 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-88888                            Tue Feb 10 14:15:21 2009

Licensed to: ONE TWO
     1                           	processor	16F688
     2                           	opt	pw 79
     3                           	psect	__Z88888RS_,global,delta=1
     4                           	psect	strings,global,class=STRING,delta=2
     5                           	psect	const1,local,class=CONST,delta=2
     6                           	psect	text2,local,class=CODE,delta=2
     7                           	psect	text5,local,class=CODE,delta=2
     8                           	psect	text6,local,class=CODE,delta=2
     9                           	psect	text7,local,class=CODE,delta=2
    10                           	psect	text8,local,class=CODE,delta=2
    11                           	psect	text9,local,class=CODE,delta=2
    12                           	psect	rbss_1,global,class=BANK1,space=1,delta=
      +                          1
    13                           	psect	temp,global,ovrld,class=BANK0,space=1,de
      +                          lta=1
    14  0000                     
    15  0000                     
    16  0000                     
    17  0000                     
    18  0000                     
    19  0000                     
    20  0000                     
    21  0000                     
    22  0000                     
    23  0000                     
    24                           
    25                           	psect	__Z88888RS_
    26  0120                     
    27  0120                     
    28                           
    29                           	psect	const1
    30  00D2  0782               	addwf	2
    31  00D3                     _KEY_REPEAT_CTL
    32  00D3  3400               	retlw	0
    33  00D4  340A               	retlw	10
    34  00D5  3400               	retlw	0
    35  00D6  3458               	retlw	88
    36  00D7  3402               	retlw	2
    37  00D8  3401               	retlw	1
    38  00D9  340F               	retlw	15
    39  00DA  3400               	retlw	0
    40  00DB  34F4               	retlw	244
    41  00DC  3401               	retlw	1
    42  00DD  3402               	retlw	2
    43  00DE  340F               	retlw	15
    44  00DF  3400               	retlw	0
    45  00E0  34F4               	retlw	244
    46  00E1  3401               	retlw	1
    47  00E2  3403               	retlw	3
    48  00E3  340F               	retlw	15
    49  00E4  3400               	retlw	0
    50  00E5  34F4               	retlw	244
    51  00E6  3401               	retlw	1
    52  00E7  3404               	retlw	4
    53  00E8  340F               	retlw	15
    54  00E9  3400               	retlw	0
    55  00EA  34F4               	retlw	244
    56  00EB  3401               	retlw	1
    57                           
    58                           	psect	text2
    59                           ;key.c: 43: void saveKeyCtlTime(void)
    60                           ;key.c: 44: {
    61  0639                     _saveKeyCtlTime
    62                           ;key.c: 45: keyCtlBlock.sTime=loadSystemTime(6)
      +                          ;
    63  0639  3006               	movlw	6
    64  063A  118A  21A7  118A   	fcall	_loadSystemTime
    65  063D  0870               	movf	btemp,w
    66  063E  1683               	bsf	3,5
    67  063F  00BE               	movwf	(_keyCtlBlock+9)^(0+128)
    68  0640  0871               	movf	btemp+1,w
    69  0641  00BF               	movwf	(_keyCtlBlock+10)^(0+128)
    70  0642  0872               	movf	btemp+2,w
    71  0643  00C0               	movwf	(_keyCtlBlock+11)^(0+128)
    72  0644  0873               	movf	btemp+3,w
    73  0645  00C1               	movwf	(_keyCtlBlock+12)^(0+128)
    74                           ;key.c: 46: }
    75  0646  1283               	bcf	3,5
    76  0647  0008               	return
    77  0648                     _keyPortInput
    78                           ;	_keyIn assigned to ?a_keyPortInput+0
    79  0000                     _keyPortInput$keyIn	set	?a_keyPortInput
    80                           ;key.c: 17: unsigned int keyIn;
    81  0648  0183               	clrf	3	;select bank 0
    82  0649  0805               	movf	5,w	;volatile
    83  064A  00B7               	movwf	?a_keyPortInput
    84  064B  01B8               	clrf	?a_keyPortInput+1
    85                           ;key.c: 19: keyIn=keyIn&0x0027;
    86  064C  3027               	movlw	39
    87  064D  05B7               	andwf	?a_keyPortInput
    88  064E  01B8               	clrf	?a_keyPortInput+1
    89                           ;key.c: 20: return(keyIn);
    90  064F  0838               	movf	?a_keyPortInput+1,w
    91  0650  00F1               	movwf	btemp+1
    92  0651  0837               	movf	?a_keyPortInput,w
    93  0652  00F0               	movwf	btemp
    94                           ;key.c: 21: }
    95  0653  0008               	return
    96  0654                     _readKeyInput
    97                           ;	_key assigned to ?a_readKeyInput+0
    98  0000                     _readKeyInput$key	set	?a_readKeyInput
    99                           ;	_input assigned to ?a_readKeyInput+1
   100  0000                     _readKeyInput$input	set	?a_readKeyInput+1
   101                           ;key.c: 25: unsigned int input;
   102  0654  2648               	fcall	_keyPortInput
   103  0655  0870               	movf	btemp,w
   104  0656  00B5               	movwf	?a_readKeyInput+1
   105  0657  0871               	movf	btemp+1,w
   106  0658  00B6               	movwf	?a_readKeyInput+2
   107                           ;key.c: 28: if (input ==0x0026)
   108  0659  0835               	movf	?a_readKeyInput+1,w
   109  065A  3A26               	xorlw	38
   110  065B  0436               	iorwf	?a_readKeyInput+2,w
   111  065C  1D03               	btfss	3,2
   112  065D  2E61               	goto	l8
   113                           ;key.c: 29: key=0x01;
   114  065E  01B4               	clrf	?a_readKeyInput
   115  065F  0AB4               	incf	?a_readKeyInput
   116                           ;key.c: 30: else if (input ==0x0025)
   117  0660  2E7F               	goto	l9
   118  0661                     l8
   119  0661  0835               	movf	?a_readKeyInput+1,w
   120  0662  3A25               	xorlw	37
   121  0663  0436               	iorwf	?a_readKeyInput+2,w
   122  0664  1D03               	btfss	3,2
   123  0665  2E68               	goto	l10
   124                           ;key.c: 31: key=0x02;
   125  0666  3002               	movlw	2
   126  0667  2E7E               	goto	L3
   127                           ;key.c: 32: else if (input ==0x0023)
   128  0668                     l10
   129  0668  0835               	movf	?a_readKeyInput+1,w
   130  0669  3A23               	xorlw	35
   131  066A  0436               	iorwf	?a_readKeyInput+2,w
   132  066B  1D03               	btfss	3,2
   133  066C  2E6F               	goto	l12
   134                           ;key.c: 33: key=0x03;
   135  066D  3003               	movlw	3
   136  066E  2E7E               	goto	L3
   137                           ;key.c: 34: else if (input ==0x0007)
   138  066F                     l12
   139  066F  0835               	movf	?a_readKeyInput+1,w
   140  0670  3A07               	xorlw	7
   141  0671  0436               	iorwf	?a_readKeyInput+2,w
   142  0672  1D03               	btfss	3,2
   143  0673  2E76               	goto	l14
   144                           ;key.c: 35: key=0x04;
   145  0674  3004               	movlw	4
   146  0675  2E7E               	goto	L3
   147                           ;key.c: 36: else if (input ==0x0027)
   148  0676                     l14
   149  0676  0835               	movf	?a_readKeyInput+1,w
   150  0677  3A27               	xorlw	39
   151  0678  0436               	iorwf	?a_readKeyInput+2,w
   152  0679  1D03               	btfss	3,2
   153  067A  2E7D               	goto	l16
   154                           ;key.c: 37: key=0x00;
   155  067B  01B4               	clrf	?a_readKeyInput
   156                           ;key.c: 38: else key=0xFF;
   157  067C  2E7F               	goto	l9
   158  067D                     l16
   159  067D  30FF               	movlw	-1
   160  067E                     L3
   161  067E  00B4               	movwf	?a_readKeyInput
   162  067F                     l9
   163                           ;key.c: 39: return (key);
   164  067F  0834               	movf	?a_readKeyInput,w
   165                           ;key.c: 40: }
   166  0680  0008               	return
   167                           ;key.c: 48: unsigned char checkKeyRepeat(void)
   168                           ;key.c: 49: {
   169  0681                     _checkKeyRepeat
   170                           ;	_rd assigned to ?a_checkKeyRepeat+0
   171  0000                     _checkKeyRepeat$rd	set	?a_checkKeyRepeat
   172                           ;	_tRepeat assigned to ?a_checkKeyRepeat+1
   173  0000                     _checkKeyRepeat$tRepeat	set	?a_checkKeyRepeat+1
   174                           ;	_tDelay assigned to ?a_checkKeyRepeat+3
   175  0000                     _checkKeyRepeat$tDelay	set	?a_checkKeyRepeat+3
   176                           ;	_tStart assigned to ?a_checkKeyRepeat+5
   177  0000                     _checkKeyRepeat$tStart	set	?a_checkKeyRepeat+5
   178                           ;	_time assigned to ?a_checkKeyRepeat+9
   179  0000                     _checkKeyRepeat$time	set	?a_checkKeyRepeat+9
   180                           ;key.c: 50: unsigned long time;
   181  0681  0183               	clrf	3	;select bank 0
   182  0682  01B4               	clrf	?a_checkKeyRepeat
   183                           ;key.c: 54: tDelay=(keyCtlBlock.pRepeatCtl)->tD
      +                          elay;
   184  0683  1683               	bsf	3,5
   185  0684  0843               	movf	(_keyCtlBlock+14)^(0+128),w
   186  0685  3E03               	addlw	3
   187  0686  0084               	movwf	4
   188  0687  1383               	bcf	3,7
   189  0688  0800               	movf	0,w
   190  0689  1283               	bcf	3,5
   191  068A  00B7               	movwf	?a_checkKeyRepeat+3
   192  068B  0A84               	incf	4
   193  068C  0800               	movf	0,w
   194  068D  00B8               	movwf	?a_checkKeyRepeat+4
   195                           ;key.c: 55: tRepeat=(keyCtlBlock.pRepeatCtl)->t
      +                          Repeat;
   196  068E  1683               	bsf	3,5
   197  068F  0A43               	incf	(_keyCtlBlock+14)^(0+128),w
   198  0690  0084               	movwf	4
   199  0691  0800               	movf	0,w
   200  0692  1283               	bcf	3,5
   201  0693  00B5               	movwf	?a_checkKeyRepeat+1
   202  0694  0A84               	incf	4
   203  0695  0800               	movf	0,w
   204  0696  00B6               	movwf	?a_checkKeyRepeat+2
   205                           ;key.c: 56: tStart=keyCtlBlock.sTime;
   206  0697  1683               	bsf	3,5
   207  0698  083E               	movf	(_keyCtlBlock+9)^(0+128),w
   208  0699  1283               	bcf	3,5
   209  069A  00B9               	movwf	?a_checkKeyRepeat+5
   210  069B  1683               	bsf	3,5
   211  069C  083F               	movf	(_keyCtlBlock+10)^(0+128),w
   212  069D  1283               	bcf	3,5
   213  069E  00BA               	movwf	?a_checkKeyRepeat+6
   214  069F  1683               	bsf	3,5
   215  06A0  0840               	movf	(_keyCtlBlock+11)^(0+128),w
   216  06A1  1283               	bcf	3,5
   217  06A2  00BB               	movwf	?a_checkKeyRepeat+7
   218  06A3  1683               	bsf	3,5
   219  06A4  0841               	movf	(_keyCtlBlock+12)^(0+128),w
   220  06A5  1283               	bcf	3,5
   221  06A6  00BC               	movwf	?a_checkKeyRepeat+8
   222                           ;key.c: 57: time=loadSystemTime(6);
   223  06A7  3006               	movlw	6
   224  06A8  118A  21A7  118A   	fcall	_loadSystemTime
   225  06AB  0870               	movf	btemp,w
   226  06AC  00BD               	movwf	?a_checkKeyRepeat+9
   227  06AD  0871               	movf	btemp+1,w
   228  06AE  00BE               	movwf	?a_checkKeyRepeat+10
   229  06AF  0872               	movf	btemp+2,w
   230  06B0  00BF               	movwf	?a_checkKeyRepeat+11
   231  06B1  0873               	movf	btemp+3,w
   232  06B2  00C0               	movwf	?a_checkKeyRepeat+12
   233                           ;key.c: 58: if (keyCtlBlock.repeat==1)
   234  06B3  1683               	bsf	3,5
   235  06B4  0B42               	decfsz	(_keyCtlBlock+13)^(0+128),w
   236  06B5  2F09               	goto	l20
   237                           ;key.c: 59: { time=time-tStart-tDelay;
   238  06B6  1283               	bcf	3,5
   239  06B7  0837               	movf	?a_checkKeyRepeat+3,w
   240  06B8  00F4               	movwf	btemp+4
   241  06B9  0838               	movf	?a_checkKeyRepeat+4,w
   242  06BA  00F5               	movwf	btemp+5
   243  06BB  01F6               	clrf	btemp+6
   244  06BC  01F7               	clrf	btemp+7
   245  06BD  0839               	movf	?a_checkKeyRepeat+5,w
   246  06BE  023D               	subwf	?a_checkKeyRepeat+9,w
   247  06BF  00F0               	movwf	btemp
   248  06C0  083E               	movf	?a_checkKeyRepeat+10,w
   249  06C1  00F1               	movwf	btemp+1
   250  06C2  083A               	movf	?a_checkKeyRepeat+6,w
   251  06C3  1C03               	btfss	3,0
   252  06C4  0F3A               	incfsz	?a_checkKeyRepeat+6,w
   253  06C5  02F1               	subwf	btemp+1
   254  06C6  083F               	movf	?a_checkKeyRepeat+11,w
   255  06C7  00F2               	movwf	btemp+2
   256  06C8  083B               	movf	?a_checkKeyRepeat+7,w
   257  06C9  1C03               	btfss	3,0
   258  06CA  0F3B               	incfsz	?a_checkKeyRepeat+7,w
   259  06CB  02F2               	subwf	btemp+2
   260  06CC  0840               	movf	?a_checkKeyRepeat+12,w
   261  06CD  00F3               	movwf	btemp+3
   262  06CE  083C               	movf	?a_checkKeyRepeat+8,w
   263  06CF  1C03               	btfss	3,0
   264  06D0  0F3C               	incfsz	?a_checkKeyRepeat+8,w
   265  06D1  02F3               	subwf	btemp+3
   266  06D2  0874               	movf	btemp+4,w
   267  06D3  0270               	subwf	btemp,w
   268  06D4  00F8               	movwf	btemp+8
   269  06D5  0871               	movf	btemp+1,w
   270  06D6  00F9               	movwf	btemp+9
   271  06D7  0875               	movf	btemp+5,w
   272  06D8  1C03               	btfss	3,0
   273  06D9  0F75               	incfsz	btemp+5,w
   274  06DA  02F9               	subwf	btemp+9
   275  06DB  0872               	movf	btemp+2,w
   276  06DC  00FA               	movwf	btemp+10
   277  06DD  0876               	movf	btemp+6,w
   278  06DE  1C03               	btfss	3,0
   279  06DF  0F76               	incfsz	btemp+6,w
   280  06E0  02FA               	subwf	btemp+10
   281  06E1  0873               	movf	btemp+3,w
   282  06E2  00FB               	movwf	btemp+11
   283  06E3  0877               	movf	btemp+7,w
   284  06E4  1C03               	btfss	3,0
   285  06E5  0F77               	incfsz	btemp+7,w
   286  06E6  02FB               	subwf	btemp+11
   287  06E7  0878               	movf	btemp+8,w
   288  06E8  00BD               	movwf	?a_checkKeyRepeat+9
   289  06E9  0879               	movf	btemp+9,w
   290  06EA  00BE               	movwf	?a_checkKeyRepeat+10
   291  06EB  087A               	movf	btemp+10,w
   292  06EC  00BF               	movwf	?a_checkKeyRepeat+11
   293  06ED  087B               	movf	btemp+11,w
   294  06EE  00C0               	movwf	?a_checkKeyRepeat+12
   295                           ;key.c: 60: if ((time%tRepeat)==0)
   296  06EF  0835               	movf	?a_checkKeyRepeat+1,w
   297  06F0  00F4               	movwf	btemp+4

⌨️ 快捷键说明

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