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

📄 main.lst

📁 检测喷轨的发生器程序
💻 LST
📖 第 1 页 / 共 2 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-88888                            Wed Jan 16 12:31:42 2008

Licensed to: ONE TWO
     1                           	processor	16F877A
     2                           	opt	pw 79
     3                           	psect	__Z88888RS_,global,delta=1
     4                           	psect	text0,local,class=CODE,delta=2
     5                           	psect	config,global,class=CONFIG,delta=2
     6                           	psect	intcode,global,class=CODE,delta=2
     7                           	psect	intsave_0,global,ovrld,class=COMBANK,spa
      +                          ce=1,delta=1
     8                           	psect	intret,global,class=CODE,delta=2
     9                           	psect	intentry,global,class=CODE,delta=2
    10                           	psect	intsave,global,class=BANK0,space=1,delta
      +                          =1
    11                           	psect	text1,local,class=CODE,delta=2
    12                           	psect	text3,local,class=CODE,delta=2
    13                           	psect	text4,local,class=CODE,delta=2
    14                           	psect	rbit_0,global,bit,class=BANK0,space=1,de
      +                          lta=1
    15                           	psect	rbss_0,global,class=BANK0,space=1,delta=
      +                          1
    16  0000                     
    17  0000                     
    18  0000                     
    19  0000                     
    20  0000                     
    21  0000                     
    22  0000                     
    23  0000                     
    24  0000                     
    25  0000                     
    26                           
    27                           	psect	__Z88888RS_
    28  0190                     
    29  0190                     	;#
    30                           
    31                           	psect	config
    32  2007  1F76               	dw	8054	;#
    33                           
    34                           	psect	intcode
    35  000B                     _IRQ
    36  000B                     int_func
    37                           ;main.c: 49: if(TMR2IF)
    38  000B  0183               	clrf	3	;select bank 0
    39  000C  1C8C               	btfss	12,1
    40  000D  2820               	goto	l2
    41                           ;main.c: 50: {
    42  000E  108C               	bcf	12,1
    43                           ;main.c: 52: RpmCount++;
    44  000F  0AA1               	incf	_RpmCount
    45                           ;main.c: 53: if(RpmCount>RpmSum)
    46  0010  0821               	movf	_RpmCount,w
    47  0011  0222               	subwf	_RpmSum,w
    48  0012  1803               	btfsc	3,0
    49  0013  2820               	goto	l2
    50                           ;main.c: 54: {
    51  0014  01A1               	clrf	_RpmCount
    52                           ;main.c: 56: TimeEnd =1;
    53  0015  1420               	bsf	_TimeEnd/(0+8),_TimeEnd& (0+7)
    54                           ;main.c: 57: RD0=1;RD1=1;RD2=1;RD3=1;TMR2IE=0;T
      +                          MR0IE=1;TMR0IF=0;TMR0=0;
    55  0016  1408               	bsf	8,0
    56  0017  1488               	bsf	8,1
    57  0018  1508               	bsf	8,2
    58  0019  1588               	bsf	8,3
    59  001A  1683               	bsf	3,5
    60  001B  108C               	bcf	12,1
    61  001C  168B               	bsf	11,5
    62  001D  110B               	bcf	11,2
    63  001E  1283               	bcf	3,5
    64  001F  0181               	clrf	1	;volatile
    65                           ;main.c: 58: }
    66  0020                     l2
    67                           ;main.c: 60: if(TMR0IF==1&TMR0IE==1)
    68  0020  1A8B               	btfsc	11,5
    69  0021  1D0B               	btfss	11,2
    70  0022  282D               	goto	l1
    71                           ;main.c: 61: { TMR0IF=0;RD0=0;RD1=0;RD2=0;RD3=0
      +                          ;TMR2IE=1;TMR0IE=0;TMR2=0x00;}
    72  0023  110B               	bcf	11,2
    73  0024  1008               	bcf	8,0
    74  0025  1088               	bcf	8,1
    75  0026  1108               	bcf	8,2
    76  0027  1188               	bcf	8,3
    77  0028  1683               	bsf	3,5
    78  0029  148C               	bsf	12,1
    79  002A  128B               	bcf	11,5
    80  002B  1283               	bcf	3,5
    81  002C  0191               	clrf	17	;volatile
    82                           ;main.c: 62: }
    83  002D                     l1
    84                           
    85                           	psect	intsave_0
    86  0070                     saved_w
    87  0070                     	ds	1
    88                           
    89                           	psect	intret
    90  002D  0828               	movf	saved_pclath,w
    91  002E  008A               	movwf	10
    92  002F                     int_restore
    93  002F  0827               	movf	saved_status,w
    94  0030  0083               	movwf	3
    95  0031  0EF0               	swapf	saved_w
    96  0032  0E70               	swapf	saved_w,w
    97  0033  0009               	retfie
    98                           
    99                           	psect	intentry
   100  0004                     int_entry
   101  0004  00F0               	movwf	saved_w
   102  0005  0803               	movf	3,w
   103  0006  0183               	clrf	3
   104  0007  00A7               	movwf	saved_status
   105  0008  080A               	movf	10,w
   106  0009  00A8               	movwf	saved_pclath
   107  000A  018A               	clrf	10
   108                           
   109                           	psect	intsave
   110  0027                     saved_status
   111  0027                     	ds	1
   112  0028                     saved_pclath
   113  0028                     	ds	1
   114                           
   115                           	psect	text1
   116                           ;main.c: 67: void DELAY()
   117                           ;main.c: 68: {
   118  076F                     _DELAY
   119                           ;	_u assigned to ?a_DELAY+0
   120  0000                     _DELAY$u	set	?a_DELAY
   121                           ;	_x assigned to ?a_DELAY+1
   122  0000                     _DELAY$x	set	?a_DELAY+1
   123                           ;main.c: 69: unsigned char u,x;
   124  076F  0183               	clrf	3	;select bank 0
   125  0770  01A6               	clrf	?a_DELAY+1
   126  0771                     l6
   127                           ;main.c: 71: { asm("clrwdt");
   128  0771  0064               	clrwdt	;#
   129                           ;main.c: 72: for(u=110;--u;) continue;
   130  0772  306E               	movlw	110
   131  0773  00A5               	movwf	?a_DELAY
   132  0774                     l9
   133  0774  0BA5               	decfsz	?a_DELAY
   134  0775  2F74               	goto	l9
   135                           ;main.c: 73: }
   136  0776  0AA6               	incf	?a_DELAY+1
   137  0777  3029               	movlw	41
   138  0778  0226               	subwf	?a_DELAY+1,w
   139  0779  1803               	btfsc	3,0
   140  077A  0008               	return
   141  077B  2F71               	goto	l6
   142                           ;main.c: 79: void keyscan()
   143                           ;main.c: 80: {
   144  077C                     _keyscan
   145                           ;main.c: 82: if(RC0==1&RC1==1)
   146  077C  0183               	clrf	3	;select bank 0
   147  077D  1887               	btfsc	7,1
   148  077E  1C07               	btfss	7,0
   149  077F  2F86               	goto	l14
   150                           ;main.c: 83: {
   151  0780  276F               	fcall	_DELAY
   152                           ;main.c: 85: if(RC0==1&RC1==1)
   153  0781  1887               	btfsc	7,1
   154  0782  1C07               	btfss	7,0
   155  0783  0008               	return
   156                           ;main.c: 86: {keyflag=3; }
   157  0784  3003               	movlw	3
   158  0785  2F9C               	goto	L1
   159                           ;main.c: 87: }
   160                           ;main.c: 88: else if(RC0==1&RC1==0)
   161  0786                     l14
   162  0786  1283               	bcf	3,5
   163  0787  1303               	bcf	3,6	;carry unused
   164  0788  1807               	btfsc	7,0
   165  0789  1887               	btfsc	7,1
   166  078A  2F94               	goto	l17
   167                           ;main.c: 89: {
   168  078B  276F               	fcall	_DELAY
   169                           ;main.c: 91: if(RC0==1&RC1==0)
   170  078C  1807               	btfsc	7,0
   171  078D  1887               	btfsc	7,1
   172  078E  0008               	return
   173                           ;main.c: 92: {keyflag=1;}
   174  078F  1283               	bcf	3,5
   175  0790  1303               	bcf	3,6	;carry unused
   176  0791  01A4               	clrf	_keyflag
   177  0792  0AA4               	incf	_keyflag
   178                           ;main.c: 93: }
   179                           ;main.c: 94: else if(RC0==0&RC1==1)
   180  0793  0008               	return
   181  0794                     l17
   182  0794  1887               	btfsc	7,1
   183  0795  1807               	btfsc	7,0
   184  0796  2FA0               	goto	l20
   185                           ;main.c: 95: {
   186  0797  276F               	fcall	_DELAY
   187                           ;main.c: 97: if(RC0==0&RC1==1)
   188  0798  1887               	btfsc	7,1
   189  0799  1807               	btfsc	7,0
   190  079A  0008               	return
   191                           ;main.c: 98: {keyflag=2;}
   192  079B  3002               	movlw	2
   193  079C                     L1
   194  079C  1283               	bcf	3,5
   195  079D  1303               	bcf	3,6	;carry unused
   196  079E  00A4               	movwf	_keyflag
   197                           ;main.c: 99: }
   198                           ;main.c: 100: else if(RC0==0&RC1==0)
   199  079F  0008               	return
   200  07A0                     l20
   201  07A0  1C87               	btfss	7,1
   202  07A1  1807               	btfsc	7,0
   203  07A2  0008               	return
   204                           ;main.c: 101: {
   205  07A3  276F               	fcall	_DELAY
   206                           ;main.c: 103: if(RC0==0&RC1==0)
   207  07A4  1C87               	btfss	7,1
   208  07A5  1807               	btfsc	7,0
   209  07A6  0008               	return
   210                           ;main.c: 104: {keyflag=0;}
   211  07A7  1283               	bcf	3,5
   212  07A8  1303               	bcf	3,6	;carry unused
   213  07A9  01A4               	clrf	_keyflag
   214                           ;main.c: 105: }
   215                           ;main.c: 108: }
   216  07AA  0008               	return
   217                           
   218                           	psect	text3
   219                           ;main.c: 112: void main()
   220                           ;main.c: 113: {
   221  07AB                     _main
   222                           ;main.c: 114: initset();
   223  07AB  120A  118A  2767   	fcall	_initset
   224                           ;main.c: 115: keyflag=0;
   225  07AE  01A4               	clrf	_keyflag
   226                           ;main.c: 116: keyback=0;
   227  07AF  01A3               	clrf	_keyback
   228  07B0                     l27
   229                           ;main.c: 118: while(1)
   230                           ;main.c: 119: { asm("clrwdt");
   231  07B0  0064               	clrwdt	;#
   232                           ;main.c: 121: keyscan();
   233  07B1  120A  118A  277C   	fcall	_keyscan
      +       120A  118A         
   234                           ;main.c: 124: if(keyback!=keyflag)
   235  07B6  0823               	movf	_keyback,w
   236  07B7  0624               	xorwf	_keyflag,w
   237  07B8  1903               	btfsc	3,2
   238  07B9  2FB0               	goto	l27
   239                           ;main.c: 125: {
   240  07BA  08A4               	movf	_keyflag
   241  07BB  1D03               	btfss	3,2
   242  07BC  2FD2               	goto	l30
   243                           ;main.c: 127: {RpmSum=0;RB1=0; asm("nop");asm("
      +                          nop");RB2=0;asm("nop");asm("nop");RD0=0;asm("no
      +                          p");asm("nop");RD1=0;asm("nop");asm("nop");RD2=
      +                          0;asm("nop");asm("nop");RD3=0;TMR2IE=0;TMR0IE=0
      +                          ;}
   244  07BD  01A2               	clrf	_RpmSum
   245  07BE  1086               	bcf	6,1
   246  07BF  0000               	nop	;#
   247  07C0  0000               	nop	;#
   248  07C1  1106               	bcf	6,2
   249  07C2  0000               	nop	;#
   250  07C3  0000               	nop	;#
   251  07C4  1008               	bcf	8,0
   252  07C5  0000               	nop	;#
   253  07C6  0000               	nop	;#
   254  07C7  1088               	bcf	8,1
   255  07C8  0000               	nop	;#
   256  07C9  0000               	nop	;#
   257  07CA  1108               	bcf	8,2
   258  07CB  0000               	nop	;#
   259  07CC  0000               	nop	;#
   260  07CD  1188               	bcf	8,3
   261  07CE  1683               	bsf	3,5
   262  07CF  108C               	bcf	12,1
   263  07D0  128B               	bcf	11,5
   264                           ;main.c: 128: else if(keyflag==1)
   265  07D1  2FFC               	goto	l31
   266  07D2                     l30
   267  07D2  0B24               	decfsz	_keyflag,w
   268  07D3  2FDB               	goto	l32
   269                           ;main.c: 129: {RpmSum=60;RB1=1;asm("nop");asm("
      +                          nop"); RB2=0;asm("nop");asm("nop");RD0=1;asm("n
      +                          op");asm("nop");RD1=1;asm("nop");asm("nop");RD2
      +                          =1;asm("nop");asm("nop");RD3=1;TMR2IE=0;TMR0IE=
      +                          1;}
   270  07D4  303C               	movlw	60
   271  07D5  00A2               	movwf	_RpmSum
   272  07D6  1486               	bsf	6,1
   273  07D7  0000               	nop	;#
   274  07D8  0000               	nop	;#
   275  07D9  1106               	bcf	6,2
   276  07DA  2FED               	goto	L6
   277                           ;main.c: 130: else if(keyflag==2)
   278  07DB                     l32
   279  07DB  0824               	movf	_keyflag,w
   280  07DC  3A02               	xorlw	2
   281  07DD  1D03               	btfss	3,2
   282  07DE  2FE3               	goto	l34
   283                           ;main.c: 131: {RpmSum=30;RB1=0; asm("nop");asm(
      +                          "nop");RB2=1;asm("nop");asm("nop");RD0=1;asm("n
      +                          op");asm("nop");RD1=1;asm("nop");asm("nop");RD2
      +                          =1;asm("nop");asm("nop");RD3=1;TMR2IE=0;TMR0IE=
      +                          1;}
   284  07DF  301E               	movlw	30
   285  07E0  00A2               	movwf	_RpmSum
   286  07E1  1086               	bcf	6,1
   287  07E2  2FEA               	goto	L7
   288                           ;main.c: 132: else if(keyflag==3)
   289  07E3                     l34
   290  07E3  0824               	movf	_keyflag,w
   291  07E4  3A03               	xorlw	3
   292  07E5  1D03               	btfss	3,2
   293  07E6  2FFC               	goto	l31
   294                           ;main.c: 133: {RpmSum=15; RB1=1; asm("nop");asm
      +                          ("nop");RB2=1;asm("nop");asm("nop");RD0=1;asm("
      +                          nop");asm("nop");RD1=1;asm("nop");asm("nop");RD
      +                          2=1;asm("nop");asm("nop");RD3=1;TMR2IE=0;TMR0IE
      +                          =1;}
   295  07E7  300F               	movlw	15
   296  07E8  00A2               	movwf	_RpmSum
   297  07E9  1486               	bsf	6,1
   298  07EA                     L7
   299  07EA  0000               	nop	;#
   300  07EB  0000               	nop	;#
   301  07EC  1506               	bsf	6,2

⌨️ 快捷键说明

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