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

📄 main.lst

📁 用PIC16F887做的4个触摸按键的例程
💻 LST
📖 第 1 页 / 共 5 页
字号:
   245  0062' 0C80'              	rrf	btemp
   246  0063' 0B82'              	decfsz	btemp+2
   247  0064' 2800'              	goto	u975
   248  0065' 0800'              	movf	btemp,w
   249  0066' 0080'              	movwf	_SMALLAVG
   250  0067' 0801'              	movf	btemp+1,w
   251  0068' 0081'              	movwf	_SMALLAVG+1
   252                           ;main.c: 531: RAW[INDEX] = BIGVAL;
   253  0069' 0800'              	movf	_INDEX,w
   254  006A' 0700'              	addwf	_INDEX,w
   255  006B' 3E00'              	addlw	_RAW^(0+256)
   256  006C' 0084               	movwf	4
   257  006D' 1783               	bsf	3,7
   258  006E' 0800'              	movf	_BIGVAL,w
   259  006F' 0080               	movwf	0
   260  0070' 0A84               	incf	4
   261  0071' 0801'              	movf	_BIGVAL+1,w
   262  0072' 0080               	movwf	0
   263                           ;main.c: 538: if (FIRST > 0) {
   264  0073' 0880'              	movf	_FIRST
   265  0074' 1903               	btfsc	3,2
   266  0075' 2800'              	goto	l137
   267                           ;main.c: 539: FIRST--;
   268  0076' 0380'              	decf	_FIRST
   269                           ;main.c: 540: AVERAGE[INDEX] = BIGVAL;
   270  0077' 0800'              	movf	_INDEX,w
   271  0078' 0700'              	addwf	_INDEX,w
   272  0079' 3E00'              	addlw	_AVERAGE^(0+256)
   273  007A' 0084               	movwf	4
   274  007B' 1783               	bsf	3,7
   275  007C' 0800'              	movf	_BIGVAL,w
   276  007D' 0080               	movwf	0
   277  007E' 0A84               	incf	4
   278  007F' 0801'              	movf	_BIGVAL+1,w
   279  0080' 0080               	movwf	0
   280                           ;main.c: 541: if (!Flags.SLEEP)
   281  0081' 1880'              	btfsc	_Flags,1
   282  0082' 2800'              	goto	l138
   283                           ;main.c: 542: SetNextChannel();
   284  0083' 2000'              	fcall	_SetNextChannel
   285  0084'                    l138
   286                           ;main.c: 543: RestartTimers();
   287  0084' 120A' 118A' 2800'  	ljmp	_RestartTimers
   288                           ;main.c: 544: return;
   289  0087'                    l137
   290                           ;main.c: 545: }
   291  0087' 0800'              	movf	_INDEX,w
   292  0088' 0700'              	addwf	_INDEX,w
   293  0089' 3E00'              	addlw	_TRIP^(0+256)
   294  008A' 0084               	movwf	4
   295  008B' 1783               	bsf	3,7
   296  008C' 0800               	movf	0,w
   297  008D' 0080'              	movwf	btemp
   298  008E' 0A84               	incf	4
   299  008F' 0800               	movf	0,w
   300  0090' 0081'              	movwf	btemp+1
   301  0091' 0800'              	movf	btemp,w
   302  0092' 0080'              	movwf	?a_CapISR
   303  0093' 0801'              	movf	btemp+1,w
   304  0094' 0081'              	movwf	?a_CapISR+1
   305  0095' 0800'              	movf	_INDEX,w
   306  0096' 0700'              	addwf	_INDEX,w
   307  0097' 3E00'              	addlw	_AVERAGE^(0+256)
   308  0098' 0084               	movwf	4
   309  0099' 1783               	bsf	3,7
   310  009A' 0800               	movf	0,w
   311  009B' 0080'              	movwf	btemp
   312  009C' 0A84               	incf	4
   313  009D' 0800               	movf	0,w
   314  009E' 0081'              	movwf	btemp+1
   315  009F' 0800'              	movf	?a_CapISR,w
   316  00A0' 0280'              	subwf	btemp
   317  00A1' 1C03               	btfss	3,0
   318  00A2' 0381'              	decf	btemp+1
   319  00A3' 0801'              	movf	?a_CapISR+1,w
   320  00A4' 0281'              	subwf	btemp+1
   321  00A5' 0801'              	movf	btemp+1,w
   322  00A6' 0201'              	subwf	_BIGVAL+1,w
   323  00A7' 1D03               	btfss	3,2
   324  00A8' 2800'              	goto	u1005
   325  00A9' 0800'              	movf	btemp,w
   326  00AA' 0200'              	subwf	_BIGVAL,w
   327  00AB'                    u1005
   328  00AB' 1803               	btfsc	3,0
   329  00AC' 2800'              	goto	l139
   330                           ;main.c: 553: if (!(Buttons.BTN0 || Buttons.BTN
      +                          1 || Buttons.BTN2 ||
   331  00AD' 1C00'              	btfss	_Buttons,0
   332  00AE' 1880'              	btfsc	_Buttons,1
   333  00AF' 2800'              	goto	l139
   334  00B0' 1D00'              	btfss	_Buttons,2
   335  00B1' 1980'              	btfsc	_Buttons,3
   336  00B2' 2800'              	goto	l139
   337  00B3' 1E00'              	btfss	_Buttons,4
   338  00B4' 1A80'              	btfsc	_Buttons,5
   339  00B5' 2800'              	goto	l139
   340  00B6' 1B00'              	btfsc	_Buttons,6
   341  00B7' 2800'              	goto	l139
   342  00B8' 1F80'              	btfss	_Buttons,7
   343  00B9' 1801'              	btfsc	_Buttons+1,0
   344  00BA' 2800'              	goto	l139
   345  00BB' 1881'              	btfsc	_Buttons+1,1
   346  00BC' 2800'              	goto	l139
   347  00BD' 2800'              	goto	l142
   348                           ;main.c: 557: switch(INDEX) {
   349  00BE'                    l143
   350                           ;main.c: 558: case 1: Buttons.BTN0 = 1; Flags.B
      +                          UZZDONE = 0; break;
   351  00BE' 1400'              	bsf	_Buttons,0
   352  00BF' 2800'              	goto	L13
   353  00C0'                    l144
   354                           ;main.c: 559: case 2: Buttons.BTN1 = 1; Flags.B
      +                          UZZDONE = 0; break;
   355  00C0' 1480'              	bsf	_Buttons,1
   356  00C1' 2800'              	goto	L13
   357  00C2'                    l145
   358                           ;main.c: 560: case 3: Buttons.BTN2 = 1; Flags.B
      +                          UZZDONE = 0; break;
   359  00C2' 1500'              	bsf	_Buttons,2
   360  00C3' 2800'              	goto	L13
   361  00C4'                    l146
   362                           ;main.c: 561: case 4: Buttons.BTN3 = 1; Flags.B
      +                          UZZDONE = 0; break;
   363  00C4' 1580'              	bsf	_Buttons,3
   364  00C5' 2800'              	goto	L13
   365  00C6'                    l147
   366                           ;main.c: 562: case 5: Buttons.BTN4 = 1; Flags.B
      +                          UZZDONE = 0; break;
   367  00C6' 1600'              	bsf	_Buttons,4
   368  00C7' 2800'              	goto	L13
   369  00C8'                    l148
   370                           ;main.c: 563: case 6: Buttons.BTN5 = 1; Flags.B
      +                          UZZDONE = 0; break;
   371  00C8' 1680'              	bsf	_Buttons,5
   372  00C9' 2800'              	goto	L13
   373  00CA'                    l149
   374                           ;main.c: 564: case 7: Buttons.BTN6 = 1; Flags.B
      +                          UZZDONE = 0; break;
   375  00CA' 1700'              	bsf	_Buttons,6
   376  00CB' 2800'              	goto	L13
   377  00CC'                    l150
   378                           ;main.c: 565: case 8: Buttons.BTN7 = 1; Flags.B
      +                          UZZDONE = 0; break;
   379  00CC' 1780'              	bsf	_Buttons,7
   380  00CD' 2800'              	goto	L13
   381  00CE'                    l151
   382                           ;main.c: 566: case 9: Buttons.BTN8 = 1; Flags.B
      +                          UZZDONE = 0; break;
   383  00CE' 1401'              	bsf	_Buttons+1,0
   384  00CF' 2800'              	goto	L13
   385  00D0'                    l152
   386                           ;main.c: 567: case 10: Buttons.BTN9 = 1; Flags.
      +                          BUZZDONE = 0; break;
   387  00D0' 1481'              	bsf	_Buttons+1,1
   388  00D1'                    L13
   389  00D1' 1100'              	bcf	_Flags,2
   390  00D2' 2800'              	goto	l139
   391  00D3'                    l142
   392  00D3' 0800'              	movf	_INDEX,w
   393  00D4' 3A01               	xorlw	1
   394  00D5' 1903               	btfsc	3,2
   395  00D6' 2800'              	goto	l143
   396  00D7' 3A03               	xorlw	3
   397  00D8' 1903               	btfsc	3,2
   398  00D9' 2800'              	goto	l144
   399  00DA' 3A01               	xorlw	1
   400  00DB' 1903               	btfsc	3,2
   401  00DC' 2800'              	goto	l145
   402  00DD' 3A07               	xorlw	7
   403  00DE' 1903               	btfsc	3,2
   404  00DF' 2800'              	goto	l146
   405  00E0' 3A01               	xorlw	1
   406  00E1' 1903               	btfsc	3,2
   407  00E2' 2800'              	goto	l147
   408  00E3' 3A03               	xorlw	3
   409  00E4' 1903               	btfsc	3,2
   410  00E5' 2800'              	goto	l148
   411  00E6' 3A01               	xorlw	1
   412  00E7' 1903               	btfsc	3,2
   413  00E8' 2800'              	goto	l149
   414  00E9' 3A0F               	xorlw	15
   415  00EA' 1903               	btfsc	3,2
   416  00EB' 2800'              	goto	l150
   417  00EC' 3A01               	xorlw	1
   418  00ED' 1903               	btfsc	3,2
   419  00EE' 2800'              	goto	l151
   420  00EF' 3A03               	xorlw	3
   421  00F0' 1903               	btfsc	3,2
   422  00F1' 2800'              	goto	l152
   423  00F2'                    l139
   424                           ;main.c: 569: }
   425  00F2' 0880'              	movf	_INDEX
   426  00F3' 1D03               	btfss	3,2
   427  00F4' 2800'              	goto	l153
   428  00F5' 0800'              	movf	_INDEX,w
   429  00F6' 0700'              	addwf	_INDEX,w
   430  00F7' 3E00'              	addlw	_TRIP^(0+256)
   431  00F8' 0084               	movwf	4
   432  00F9' 1783               	bsf	3,7
   433  00FA' 0800               	movf	0,w
   434  00FB' 0080'              	movwf	btemp
   435  00FC' 0A84               	incf	4
   436  00FD' 0800               	movf	0,w
   437  00FE' 0081'              	movwf	btemp+1
   438  00FF' 0800'              	movf	btemp,w
   439  0100' 0080'              	movwf	?a_CapISR
   440  0101' 0801'              	movf	btemp+1,w
   441  0102' 0081'              	movwf	?a_CapISR+1
   442  0103' 0800'              	movf	_INDEX,w
   443  0104' 0700'              	addwf	_INDEX,w
   444  0105' 3E00'              	addlw	_AVERAGE^(0+256)
   445  0106' 0084               	movwf	4
   446  0107' 1783               	bsf	3,7
   447  0108' 0800               	movf	0,w
   448  0109' 0080'              	movwf	btemp
   449  010A' 0A84               	incf	4
   450  010B' 0800               	movf	0,w
   451  010C' 0081'              	movwf	btemp+1
   452  010D' 0800'              	movf	?a_CapISR,w
   453  010E' 0280'              	subwf	btemp
   454  010F' 1C03               	btfss	3,0
   455  0110' 0381'              	decf	btemp+1
   456  0111' 0801'              	movf	?a_CapISR+1,w
   457  0112' 0281'              	subwf	btemp+1
   458  0113' 0801'              	movf	btemp+1,w
   459  0114' 0201'              	subwf	_BIGVAL+1,w
   460  0115' 1D03               	btfss	3,2
   461  0116' 2800'              	goto	u1215
   462  0117' 0800'              	movf	btemp,w
   463  0118' 0200'              	subwf	_BIGVAL,w
   464  0119'                    u1215
   465  0119' 1C03               	btfss	3,0
   466                           ;main.c: 576: Buttons.PWR = 1;
   467  011A' 1402'              	bsf	_Buttons+2,0
   468  011B'                    l153
   469                           ;main.c: 577: }
   470  011B' 0800'              	movf	_INDEX,w
   471  011C' 0700'              	addwf	_INDEX,w
   472  011D' 3E00'              	addlw	_TRIP^(0+256)
   473  011E' 0084               	movwf	4
   474  011F' 1783               	bsf	3,7
   475  0120' 0800               	movf	0,w
   476  0121' 0080'              	movwf	btemp
   477  0122' 0A84               	incf	4
   478  0123' 0800               	movf	0,w
   479  0124' 0081'              	movwf	btemp+1
   480  0125' 0800'              	movf	btemp,w
   481  0126' 0080'              	movwf	?a_CapISR
   482  0127' 0801'              	movf	btemp+1,w
   483  0128' 0081'              	movwf	?a_CapISR+1
   484  0129' 0800'              	movf	_INDEX,w
   485  012A' 0700'              	addwf	_INDEX,w
   486  012B' 3E00'              	addlw	_AVERAGE^(0+256)
   487  012C' 0084               	movwf	4
   488  012D' 1783               	bsf	3,7
   489  012E' 0800               	movf	0,w
   490  012F' 0080'              	movwf	btemp
   491  0130' 0A84               	incf	4
   492  0131' 0800               	movf	0,w
   493  0132' 0081'              	movwf	btemp+1
   494  0133' 0800'              	movf	?a_CapISR,w
   495  0134' 0280'              	subwf	btemp

⌨️ 快捷键说明

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