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

📄 pic_adc.lst

📁 基于温度传感器LM35与PIC16F877A的应用程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
   278  053D  0871               	movf	btemp+1,w
   279  053E  07A2               	addwf	_checksum+1	;volatile
   280                           ;pic_adc.c: 120: }
   281  053F  0AAB               	incf	?a_main+4
   282  0540  3028               	movlw	40
   283  0541  022B               	subwf	?a_main+4,w
   284  0542  1C03               	btfss	3,0
   285  0543  2D2F               	goto	l27
   286                           ;pic_adc.c: 121: squ = (double)checksum;
   287  0544  0822               	movf	_checksum+1,w	;volatile
   288  0545  00F1               	movwf	btemp+1
   289  0546  0821               	movf	_checksum,w	;volatile
   290  0547  00F0               	movwf	btemp
   291  0548  120A  118A  2765   	fcall	lwtofl
   292  054B  0870               	movf	btemp,w
   293  054C  00A3               	movwf	_squ	;volatile
   294  054D  0871               	movf	btemp+1,w
   295  054E  00A4               	movwf	_squ+1	;volatile
   296  054F  0872               	movf	btemp+2,w
   297  0550  00A5               	movwf	_squ+2	;volatile
   298  0551  0873               	movf	btemp+3,w
   299  0552  00A6               	movwf	_squ+3	;volatile
   300                           ;pic_adc.c: 122: squ = squ / 4;
   301  0553  01F4               	clrf	btemp+4
   302  0554  01F5               	clrf	btemp+5
   303  0555  3080               	movlw	128
   304  0556  00F6               	movwf	btemp+6
   305  0557  3040               	movlw	64
   306  0558  00F7               	movwf	btemp+7
   307  0559  3023               	movlw	_squ	;volatile
   308  055A  0084               	movwf	4
   309  055B  1383               	bcf	3,7
   310  055C  120A  118A  2687   	fcall	fldiv_f
   311                           ;pic_adc.c: 123: temperature_temp = (unsigned l
      +                          ong)((100 * squ) / 1023);
   312  055F  1283               	bcf	3,5
   313  0560  1303               	bcf	3,6	;carry unused
   314  0561  0823               	movf	_squ,w	;volatile
   315  0562  00F4               	movwf	btemp+4
   316  0563  0824               	movf	_squ+1,w	;volatile
   317  0564  00F5               	movwf	btemp+5
   318  0565  0825               	movf	_squ+2,w	;volatile
   319  0566  00F6               	movwf	btemp+6
   320  0567  0826               	movf	_squ+3,w	;volatile
   321  0568  00F7               	movwf	btemp+7
   322  0569  01F0               	clrf	btemp
   323  056A  01F1               	clrf	btemp+1
   324  056B  30C8               	movlw	200
   325  056C  00F2               	movwf	btemp+2
   326  056D  3042               	movlw	66
   327  056E  00F3               	movwf	btemp+3
   328  056F  120A  118A  276B   	fcall	flmul
   329  0572  01F4               	clrf	btemp+4
   330  0573  30C0               	movlw	192
   331  0574  00F5               	movwf	btemp+5
   332  0575  307F               	movlw	127
   333  0576  00F6               	movwf	btemp+6
   334  0577  3044               	movlw	68
   335  0578  00F7               	movwf	btemp+7
   336  0579  120A  118A  27BB   	fcall	fldiv
   337  057C  120A  118A  2693   	fcall	fltol
   338  057F  0870               	movf	btemp,w
   339  0580  00AC               	movwf	?a_main+5
   340  0581  0871               	movf	btemp+1,w
   341  0582  00AD               	movwf	?a_main+6
   342  0583  0872               	movf	btemp+2,w
   343  0584  00AE               	movwf	?a_main+7
   344  0585  0873               	movf	btemp+3,w
   345  0586  00AF               	movwf	?a_main+8
   346                           ;pic_adc.c: 124: a = temperature_temp / 100;
   347  0587  3064               	movlw	100
   348  0588  00F4               	movwf	btemp+4
   349  0589  01F5               	clrf	btemp+5
   350  058A  01F6               	clrf	btemp+6
   351  058B  01F7               	clrf	btemp+7
   352  058C  082C               	movf	?a_main+5,w
   353  058D  00F0               	movwf	btemp
   354  058E  082D               	movf	?a_main+6,w
   355  058F  00F1               	movwf	btemp+1
   356  0590  082E               	movf	?a_main+7,w
   357  0591  00F2               	movwf	btemp+2
   358  0592  082F               	movf	?a_main+8,w
   359  0593  00F3               	movwf	btemp+3
   360  0594  120A  118A  26C4   	fcall	lldiv
      +       120A  118A         
   361  0599  0870               	movf	btemp,w
   362  059A  00A9               	movwf	?a_main+2
   363                           ;pic_adc.c: 125: lcd_disp(0x86, a + 0x30);
   364  059B  3E30               	addlw	48
   365  059C  00B0               	movwf	?_lcd_disp
   366  059D  3086               	movlw	-122
   367  059E  24B0               	fcall	_lcd_disp
   368                           ;pic_adc.c: 126: d = temperature_temp % 100;
   369  059F  3064               	movlw	100
   370  05A0  00F4               	movwf	btemp+4
   371  05A1  01F5               	clrf	btemp+5
   372  05A2  01F6               	clrf	btemp+6
   373  05A3  01F7               	clrf	btemp+7
   374  05A4  082C               	movf	?a_main+5,w
   375  05A5  00F0               	movwf	btemp
   376  05A6  082D               	movf	?a_main+6,w
   377  05A7  00F1               	movwf	btemp+1
   378  05A8  082E               	movf	?a_main+7,w
   379  05A9  00F2               	movwf	btemp+2
   380  05AA  082F               	movf	?a_main+8,w
   381  05AB  00F3               	movwf	btemp+3
   382  05AC  120A  118A  26C4   	fcall	llmod
   383  05AF  0874               	movf	btemp+4,w
   384  05B0  00A8               	movwf	?a_main+1
   385                           ;pic_adc.c: 127: b = d / 10;
   386  05B1  300A               	movlw	10
   387  05B2  00F1               	movwf	btemp+1
   388  05B3  0828               	movf	?a_main+1,w
   389  05B4  120A  118A  25F8   	fcall	lbdiv
      +       120A  118A         
   390  05B9  00AA               	movwf	?a_main+3
   391                           ;pic_adc.c: 128: lcd_disp(0x87, b + 0x30);
   392  05BA  3E30               	addlw	48
   393  05BB  00B0               	movwf	?_lcd_disp
   394  05BC  3087               	movlw	-121
   395  05BD  24B0  120A  118A   	fcall	_lcd_disp
   396                           ;pic_adc.c: 129: lcd_disp(0x88, 0x2e);
   397  05C0  302E               	movlw	46
   398  05C1  00B0               	movwf	?_lcd_disp
   399  05C2  3088               	movlw	-120
   400  05C3  24B0               	fcall	_lcd_disp
   401                           ;pic_adc.c: 130: c = temperature_temp - a * 100
      +                           - b * 10;
   402  05C4  3064               	movlw	100
   403  05C5  00F1               	movwf	btemp+1
   404  05C6  0829               	movf	?a_main+2,w
   405  05C7  120A  118A  24A4   	fcall	lbmul
   406  05CA  022C               	subwf	?a_main+5,w
   407  05CB  00F2               	movwf	btemp+2
   408  05CC  300A               	movlw	10
   409  05CD  00F1               	movwf	btemp+1
   410  05CE  082A               	movf	?a_main+3,w
   411  05CF  120A  118A  24A4   	fcall	lbmul
      +       120A  118A         
   412  05D4  0272               	subwf	btemp+2,w
   413  05D5  00A7               	movwf	?a_main
   414                           ;pic_adc.c: 131: lcd_disp(0x89, c + 0x30);
   415  05D6  3E30               	addlw	48
   416  05D7  00B0               	movwf	?_lcd_disp
   417  05D8  3089               	movlw	-119
   418  05D9  24B0  120A  118A   	fcall	_lcd_disp
   419                           ;pic_adc.c: 132: lcd_disp(0x8a, 0xdf);
   420  05DC  30DF               	movlw	-33
   421  05DD  00B0               	movwf	?_lcd_disp
   422  05DE  308A               	movlw	-118
   423  05DF  24B0  120A  118A   	fcall	_lcd_disp
   424                           ;pic_adc.c: 133: lcd_disp(0x8b, 0x43);
   425  05E2  3043               	movlw	67
   426  05E3  00B0               	movwf	?_lcd_disp
   427  05E4  308B               	movlw	-117
   428  05E5  24B0  120A  118A   	fcall	_lcd_disp
   429                           ;pic_adc.c: 134: checksum = 0;
   430  05E8  01A1               	clrf	_checksum	;volatile
   431  05E9  01A2               	clrf	_checksum+1	;volatile
   432                           ;pic_adc.c: 135: ADCON0 |= 0x04;
   433  05EA  151F               	bsf	31,2	;volatile
   434                           ;pic_adc.c: 136: count = 0;
   435  05EB  01A0               	clrf	_count	;volatile
   436                           ;pic_adc.c: 137: lcd_disp(0xcf, 0xfe);
   437  05EC  30FE               	movlw	-2
   438  05ED  00B0               	movwf	?_lcd_disp
   439  05EE  30CF               	movlw	-49
   440  05EF  24B0  120A  118A   	fcall	_lcd_disp
   441                           ;pic_adc.c: 138: delay(1500);
   442  05F2  30DC               	movlw	220
   443  05F3  00B0               	movwf	?_delay
   444  05F4  3005               	movlw	5
   445  05F5  00B1               	movwf	?_delay+1
   446  05F6  24FC               	fcall	_delay
   447  05F7  2D28               	goto	L1
   448                           
   449                           	psect	intcode
   450                           ;pic_adc.c: 143: void interrupt adc_interrupt(v
      +                          oid)
   451                           ;pic_adc.c: 144: {
   452  0015                     _adc_interrupt
   453  0015                     int_func
   454                           ;	_i assigned to ?a_adc_interrupt+0
   455  0000                     _adc_interrupt$i	set	?a_adc_interrupt
   456                           ;pic_adc.c: 145: unsigned char i;
   457  0015  0183               	clrf	3	;select bank 0
   458  0016  130C               	bcf	12,6
   459                           ;pic_adc.c: 148: temperature[count] = (ADRESH <
      +                          < 8) + ADRESL;
   460  0017  081E               	movf	30,w	;volatile
   461  0018  00F3               	movwf	btemp+3
   462  0019  01F2               	clrf	btemp+2
   463  001A  1683               	bsf	3,5
   464  001B  081E               	movf	30,w	;volatile
   465  001C  00F0               	movwf	btemp
   466  001D  01F1               	clrf	btemp+1
   467  001E  0872               	movf	btemp+2,w
   468  001F  07F0               	addwf	btemp
   469  0020  1803               	btfsc	3,0
   470  0021  0AF1               	incf	btemp+1
   471  0022  0873               	movf	btemp+3,w
   472  0023  07F1               	addwf	btemp+1
   473  0024  1283               	bcf	3,5
   474  0025  0820               	movf	_count,w	;volatile
   475  0026  0720               	addwf	_count,w	;volatile
   476  0027  3E10               	addlw	_temperature^(0+256)
   477  0028  0084               	movwf	4
   478  0029  1783               	bsf	3,7
   479  002A  0870               	movf	btemp,w
   480  002B  0080               	movwf	0
   481  002C  0A84               	incf	4
   482  002D  0871               	movf	btemp+1,w
   483  002E  0080               	movwf	0
   484                           ;pic_adc.c: 149: count ++;
   485  002F  0AA0               	incf	_count	;volatile
   486                           ;pic_adc.c: 150: i = 10;
   487  0030  300A               	movlw	10
   488  0031  00B5               	movwf	?a_adc_interrupt
   489                           ;pic_adc.c: 151: while(--i);
   490  0032                     l31
   491  0032  0BB5               	decfsz	?a_adc_interrupt
   492  0033  2832               	goto	l31
   493                           ;pic_adc.c: 152: ADCON0 |= 0x04;
   494  0034  151F               	bsf	31,2	;volatile
   495                           
   496                           	psect	intsave_0
   497  007C                     saved_w
   498  007C                     	ds	1
   499                           
   500                           	psect	intret
   501  003D  083A               	movf	saved_fsr,w
   502  003E  0084               	movwf	4	;restore FSR
   503  003F  083B               	movf	saved_pclath,w
   504  0040  008A               	movwf	10
   505  0041                     int_restore
   506  0041  0839               	movf	saved_status,w
   507  0042  0083               	movwf	3
   508  0043  0EFC               	swapf	saved_w
   509  0044  0E7C               	swapf	saved_w,w
   510  0045  0009               	retfie
   511                           
   512                           	psect	intentry
   513  0004                     int_entry
   514  0004  00FC               	movwf	saved_w
   515  0005  0803               	movf	3,w
   516  0006  0183               	clrf	3
   517  0007  00B9               	movwf	saved_status
   518  0008  0804               	movf	4,w
   519  0009  00BA               	movwf	saved_fsr
   520  000A  080A               	movf	10,w
   521  000B  00BB               	movwf	saved_pclath
   522  000C  018A               	clrf	10
   523  0000                     
   524  0000                     
   525  0000                     
   526  0000                     
   527  0000                     
   528  0000                     
   529  0000                     
   530  0000                     
   531  0000                     
   532  0000                     
   533  0000                     
   534  0000                     
   535  0000                     
   536  0000                     
   537  0000                     
   538  0000                     
   539  0000                     
   540  0000                     
   541  0000                     
   542  0000                     
   543  0000                     
   544  0000                     
   545  0000                     
   546  0000                     
   547  0000                     
   548  0000                     
   549  0000                     
   550  0000                     
   551  0000                     
   552  0000                     
   553  0000                     
   554  0000                     
   555  0000                     
   556  0000                     
   557  0000                     
   558  0000                     
   559  0000                     
   560  0000                     
   561  0000                     
   562  0000                     
   563  0000                     
   564  0000                     
   565  0000                     
   566  0000                     
   567  0000                     
   568  0000                     
   569  0000                     

⌨️ 快捷键说明

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