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

📄 main.lst

📁 此为一个详细的程序源代码 由单片机PIC16F873检测电平
💻 LST
📖 第 1 页 / 共 5 页
字号:
   251                           ;main.c: 13: Zero = ReadEEPROM(0x00);
   252  0B10  3000               	movlw	0
   253  0B11  158A  2231  158A   	fcall	_ReadEEPROM
   254  0B14  00A9               	movwf	_Zero
   255                           ;main.c: 14: if(Zero==0xff)
   256  0B15  0F29               	incfsz	_Zero,w
   257  0B16  2B1C               	goto	l3
   258                           ;main.c: 15: {
   259  0B17  01A9               	clrf	_Zero
   260                           ;main.c: 17: WriteEEPROM(Zero,0x00);
   261  0B18  01C5               	clrf	?_WriteEEPROM
   262  0B19  0829               	movf	_Zero,w
   263  0B1A  158A  2277         	fcall	_WriteEEPROM
   264  0B1C                     l3
   265                           ;main.c: 18: }
   266  0B1C  3003               	movlw	3
   267  0B1D  158A  2231         	fcall	_ReadEEPROM
   268  0B1F  00B7               	movwf	_Biaoding
   269                           ;main.c: 20: Biaoding.Char[1] = ReadEEPROM(0x04
      +                          );
   270  0B20  3004               	movlw	4
   271  0B21  158A  2231  158A   	fcall	_ReadEEPROM
   272  0B24  00B8               	movwf	_Biaoding+1
   273                           ;main.c: 21: if(Biaoding.Int ==0xffff)
   274  0B25  0A37               	incf	_Biaoding,w
   275  0B26  1903               	btfsc	3,2
   276  0B27  0A38               	incf	_Biaoding+1,w
   277  0B28  1D03               	btfss	3,2
   278  0B29  2B38               	goto	l4
   279                           ;main.c: 22: {
   280  0B2A  30EA               	movlw	234
   281  0B2B  00B7               	movwf	_Biaoding
   282  0B2C  3001               	movlw	1
   283  0B2D  00B8               	movwf	_Biaoding+1
   284                           ;main.c: 24: WriteEEPROM(Biaoding.Char[0],0x03)
      +                          ;
   285  0B2E  3003               	movlw	3
   286  0B2F  00C5               	movwf	?_WriteEEPROM
   287  0B30  0837               	movf	_Biaoding,w
   288  0B31  158A  2277         	fcall	_WriteEEPROM
   289                           ;main.c: 25: WriteEEPROM(Biaoding.Char[1],0x04)
      +                          ;
   290  0B33  3004               	movlw	4
   291  0B34  00C5               	movwf	?_WriteEEPROM
   292  0B35  0838               	movf	_Biaoding+1,w
   293  0B36  158A  2277         	fcall	_WriteEEPROM
   294  0B38                     l4
   295                           ;main.c: 26: }
   296  0B38  3001               	movlw	1
   297  0B39  158A  2231         	fcall	_ReadEEPROM
   298  0B3B  00A8               	movwf	_WarnPoint
   299                           ;main.c: 29: Liangcheng = ReadEEPROM(0x05);
   300  0B3C  3005               	movlw	5
   301  0B3D  158A  2231  158A   	fcall	_ReadEEPROM
   302  0B40  00A3               	movwf	_Liangcheng
   303                           ;main.c: 30: if(Liangcheng == 0xff)
   304  0B41  0F23               	incfsz	_Liangcheng,w
   305  0B42  2B45               	goto	l5
   306                           ;main.c: 31: Liangcheng = 20;
   307  0B43  3014               	movlw	20
   308  0B44  00A3               	movwf	_Liangcheng
   309  0B45                     l5
   310                           ;main.c: 32: if(WarnPoint == 0xff)
   311  0B45  0F28               	incfsz	_WarnPoint,w
   312  0B46  2B53               	goto	l6
   313                           ;main.c: 33: WarnPoint = (Liangcheng-Zero)>>1;
   314  0B47  0823               	movf	_Liangcheng,w
   315  0B48  00CC               	movwf	btemp
   316  0B49  01CD               	clrf	btemp+1
   317  0B4A  0829               	movf	_Zero,w
   318  0B4B  02CC               	subwf	btemp
   319  0B4C  1C03               	btfss	3,0
   320  0B4D  03CD               	decf	btemp+1
   321  0B4E  0D4D               	rlf	btemp+1,w
   322  0B4F  0CCD               	rrf	btemp+1
   323  0B50  0CCC               	rrf	btemp
   324  0B51  084C               	movf	btemp,w
   325  0B52  00A8               	movwf	_WarnPoint
   326  0B53                     l6
   327                           ;main.c: 34: Danwei = ReadEEPROM(0x02);
   328  0B53  3002               	movlw	2
   329  0B54  158A  2231  158A   	fcall	_ReadEEPROM
   330  0B57  00A1               	movwf	_Danwei
   331                           ;main.c: 36: ShutFlag = 0;
   332  0B58  12A0               	bcf	_ShutFlag/(0+8),_ShutFlag& (0+7)
   333                           ;main.c: 37: timeCount = 0;
   334  0B59  01AB               	clrf	_timeCount
   335                           ;main.c: 38: ini_time = 25;
   336  0B5A  3019               	movlw	25
   337  0B5B  00AA               	movwf	_ini_time
   338                           ;main.c: 39: ErrorFlag = 0;
   339  0B5C  10A0               	bcf	_ErrorFlag/(0+8),_ErrorFlag& (0+7)
   340                           ;main.c: 40: WarnFlag = 0;
   341  0B5D  13A0               	bcf	_WarnFlag/(0+8),_WarnFlag& (0+7)
   342                           ;main.c: 41: ADFlag = 0;
   343  0B5E  1020               	bcf	_ADFlag/(0+8),_ADFlag& (0+7)
   344                           ;main.c: 42: ShowFlag=0;
   345  0B5F  01A6               	clrf	_ShowFlag
   346                           ;main.c: 43: nongdu=0;
   347  0B60  01BB               	clrf	_nongdu
   348  0B61  01BC               	clrf	_nongdu+1
   349                           ;main.c: 44: PowerLowFlag = 0;
   350  0B62  1220               	bcf	_PowerLowFlag/(0+8),_PowerLowFlag& (0+7)
   351                           ;main.c: 45: MENU_Flag = 0;
   352  0B63  1120               	bcf	_MENU_Flag/(0+8),_MENU_Flag& (0+7)
   353                           ;main.c: 46: SonMenuFlag = 0;
   354  0B64  1320               	bcf	_SonMenuFlag/(0+8),_SonMenuFlag& (0+7)
   355                           ;main.c: 47: time_Menu_Flag=0;
   356  0B65  01AD               	clrf	_time_Menu_Flag
   357                           ;main.c: 49: RBPU = 0;
   358  0B66  1683               	bsf	3,5
   359  0B67  1381               	bcf	1,7
   360                           ;main.c: 51: TRISB = 0B11100001;
   361  0B68  30E1               	movlw	-31
   362  0B69  0086               	movwf	6	;volatile
   363                           ;main.c: 52: TRISA = 0b11011011;
   364  0B6A  30DB               	movlw	-37
   365  0B6B  0085               	movwf	5	;volatile
   366                           ;main.c: 53: TRISC = 0b00000000;
   367  0B6C  0187               	clrf	7	;volatile
   368                           ;main.c: 55: ADCON1 = 0x05;
   369  0B6D  3005               	movlw	5
   370  0B6E  009F               	movwf	31	;volatile
   371                           ;main.c: 57: PR2 = 199;
   372  0B6F  30C7               	movlw	-57
   373  0B70  0092               	movwf	18	;volatile
   374                           ;main.c: 58: T2CON = 0b01001101;
   375  0B71  304D               	movlw	77
   376  0B72  1283               	bcf	3,5
   377  0B73  0092               	movwf	18	;volatile
   378                           ;main.c: 59: TMR2IE = 1;
   379  0B74  1683               	bsf	3,5
   380  0B75  148C               	bsf	12,1
   381                           ;main.c: 61: PEIE = 1;
   382  0B76  170B               	bsf	11,6
   383                           ;main.c: 62: GIE = 1;
   384  0B77  178B               	bsf	11,7
   385                           ;main.c: 65: }
   386  0B78  1283               	bcf	3,5
   387  0B79  0008               	return
   388                           ;main.c: 66: void main()
   389                           ;main.c: 67: {
   390  0B7A                     _main
   391                           ;main.c: 70: INI();
   392  0B7A  230F               	fcall	_INI
   393                           ;main.c: 72: PORTC = 0x01;
   394  0B7B  3001               	movlw	1
   395  0B7C  0087               	movwf	7	;volatile
   396                           ;main.c: 73: Enable();
   397  0B7D  158A  2267         	fcall	_Enable
   398                           ;main.c: 74: PORTC = 0x01;
   399  0B7F  3001               	movlw	1
   400  0B80  0087               	movwf	7	;volatile
   401                           ;main.c: 75: Enable();
   402  0B81  158A  2267         	fcall	_Enable
   403                           ;main.c: 76: PORTC = 0x38;
   404  0B83  3038               	movlw	56
   405  0B84  0087               	movwf	7	;volatile
   406                           ;main.c: 77: Enable();
   407  0B85  158A  2267         	fcall	_Enable
   408                           ;main.c: 78: PORTC = 0x0f;
   409  0B87  300F               	movlw	15
   410  0B88  0087               	movwf	7	;volatile
   411                           ;main.c: 79: Enable();
   412  0B89  158A  2267         	fcall	_Enable
   413                           ;main.c: 80: PORTC = 0x06;
   414  0B8B  3006               	movlw	6
   415  0B8C  0087               	movwf	7	;volatile
   416                           ;main.c: 81: Enable();
   417  0B8D  158A  2267  158A   	fcall	_Enable
   418  0B90                     l9
   419                           ;main.c: 83: while(1)
   420                           ;main.c: 84: {
   421  0B90  0835               	movf	_Adresult_Vol,w
   422  0B91  00B1               	movwf	_ADi
   423  0B92  0836               	movf	_Adresult_Vol+1,w
   424  0B93  00B2               	movwf	_ADi+1
   425                           ;main.c: 86: if(ADi<Zero)
   426  0B94  0829               	movf	_Zero,w
   427  0B95  00CC               	movwf	btemp
   428  0B96  01CD               	clrf	btemp+1
   429  0B97  084D               	movf	btemp+1,w
   430  0B98  0232               	subwf	_ADi+1,w
   431  0B99  1D03               	btfss	3,2
   432  0B9A  2B9D               	goto	u55
   433  0B9B  084C               	movf	btemp,w
   434  0B9C  0231               	subwf	_ADi,w
   435  0B9D                     u55
   436  0B9D  1803               	btfsc	3,0
   437  0B9E  2BA2               	goto	l11
   438                           ;main.c: 87: ADi = Zero;
   439  0B9F  0829               	movf	_Zero,w
   440  0BA0  00B1               	movwf	_ADi
   441  0BA1  01B2               	clrf	_ADi+1
   442  0BA2                     l11
   443                           ;main.c: 89: nongdu = Zero*10+(unsigned int)((f
      +                          loat)(ADi-Zero)/(float)(Biaoding.Int-Zero)*(flo
      +                          at)Liangcheng*10.0);
   444  0BA2  300A               	movlw	10
   445  0BA3  00CE               	movwf	btemp+2
   446  0BA4  01CF               	clrf	btemp+3
   447  0BA5  0829               	movf	_Zero,w
   448  0BA6  00CC               	movwf	btemp
   449  0BA7  01CD               	clrf	btemp+1
   450  0BA8  158A  223C         	fcall	lwmul
   451  0BAA  0850               	movf	btemp+4,w
   452  0BAB  00BD               	movwf	?a_main
   453  0BAC  0851               	movf	btemp+5,w
   454  0BAD  00BE               	movwf	?a_main+1
   455  0BAE  0823               	movf	_Liangcheng,w
   456  0BAF  00CC               	movwf	btemp
   457  0BB0  158A  26EA         	fcall	lbtoft
   458  0BB2  084C               	movf	btemp,w
   459  0BB3  00BF               	movwf	?a_main+2
   460  0BB4  084D               	movf	btemp+1,w
   461  0BB5  00C0               	movwf	?a_main+3
   462  0BB6  084E               	movf	btemp+2,w
   463  0BB7  00C1               	movwf	?a_main+4
   464  0BB8  0838               	movf	_Biaoding+1,w
   465  0BB9  00CD               	movwf	btemp+1
   466  0BBA  0837               	movf	_Biaoding,w
   467  0BBB  00CC               	movwf	btemp
   468  0BBC  0829               	movf	_Zero,w
   469  0BBD  02CC               	subwf	btemp
   470  0BBE  1C03               	btfss	3,0
   471  0BBF  03CD               	decf	btemp+1
   472  0BC0  158A  27FB         	fcall	lwtoft
   473  0BC2  084C               	movf	btemp,w
   474  0BC3  00C2               	movwf	?a_main+5
   475  0BC4  084D               	movf	btemp+1,w
   476  0BC5  00C3               	movwf	?a_main+6
   477  0BC6  084E               	movf	btemp+2,w
   478  0BC7  00C4               	movwf	?a_main+7
   479  0BC8  0832               	movf	_ADi+1,w
   480  0BC9  00CD               	movwf	btemp+1
   481  0BCA  0831               	movf	_ADi,w
   482  0BCB  00CC               	movwf	btemp
   483  0BCC  0829               	movf	_Zero,w
   484  0BCD  02CC               	subwf	btemp
   485  0BCE  1C03               	btfss	3,0
   486  0BCF  03CD               	decf	btemp+1
   487  0BD0  158A  27FB         	fcall	lwtoft
   488  0BD2  0842               	movf	?a_main+5,w
   489  0BD3  00CF               	movwf	btemp+3
   490  0BD4  0843               	movf	?a_main+6,w
   491  0BD5  00D0               	movwf	btemp+4
   492  0BD6  0844               	movf	?a_main+7,w
   493  0BD7  00D1               	movwf	btemp+5
   494  0BD8  158A  2740         	fcall	ftdiv
   495  0BDA  083F               	movf	?a_main+2,w
   496  0BDB  00CF               	movwf	btemp+3
   497  0BDC  0840               	movf	?a_main+3,w
   498  0BDD  00D0               	movwf	btemp+4
   499  0BDE  0841               	movf	?a_main+4,w
   500  0BDF  00D1               	movwf	btemp+5
   501  0BE0  158A  2778         	fcall	ftmul
   502  0BE2  01CF               	clrf	btemp+3
   503  0BE3  3020               	movlw	32
   504  0BE4  00D0               	movwf	btemp+4
   505  0BE5  3041               	movlw	65
   506  0BE6  00D1               	movwf	btemp+5
   507  0BE7  158A  2778         	fcall	ftmul
   508  0BE9  158A  27B9         	fcall	fttol

⌨️ 快捷键说明

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