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

📄 485-pc-bus.lst

📁 吐血奉献
💻 LST
📖 第 1 页 / 共 2 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-79926                            Wed Apr 29 08:43:34 2009

Licensed to: ONE
     1                           	processor	16F877A
     2                           	opt	pw 79
     3                           	psect	__Z79926RS_,global,delta=1
     4                           	psect	text0,local,class=CODE,delta=2
     5                           	psect	text3,local,class=CODE,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	text5,local,class=CODE,delta=2
    12                           	psect	rbss_0,global,class=BANK0,space=1,delta=
      +                          1
    13  0000                     
    14  0000                     
    15  0000                     
    16  0000                     
    17  0000                     
    18  0000                     
    19  0000                     
    20  0000                     
    21  0000                     
    22  0000                     
    23                           
    24                           	psect	__Z79926RS_
    25  0190                     
    26  0190                     
    27                           
    28                           	psect	text0
    29  079F                     _send_serial
    30                           ;	_count assigned to ?a_send_serial+0
    31  0000                     _send_serial$count	set	?a_send_serial
    32                           ;_count stored from w
    33  079F  0183               	clrf	3	;select bank 0
    34  07A0  00B0               	movwf	?a_send_serial
    35                           ;485-PC-BUS.c: 19: TXEN=1;
    36  07A1  1683               	bsf	3,5
    37  07A2  1698               	bsf	24,5
    38                           ;485-PC-BUS.c: 20: TXREG=count;
    39  07A3  1283               	bcf	3,5
    40  07A4  0830               	movf	?a_send_serial,w
    41  07A5  0099               	movwf	25	;volatile
    42  07A6                     l3
    43                           ;485-PC-BUS.c: 21: while(1)
    44                           ;485-PC-BUS.c: 22: {
    45  07A6  1683               	bsf	3,5
    46  07A7  1C98               	btfss	24,1
    47  07A8  2FA6               	goto	l3
    48                           ;485-PC-BUS.c: 25: TXEN=0;
    49  07A9  1298               	bcf	24,5
    50                           ;485-PC-BUS.c: 27: }
    51  07AA  1283               	bcf	3,5
    52  07AB  0008               	return
    53                           ;485-PC-BUS.c: 39: void sciinitial()
    54                           ;485-PC-BUS.c: 40: {
    55  07AC                     _sciinitial
    56                           ;485-PC-BUS.c: 41: TXSTA=0x04;
    57  07AC  3004               	movlw	4
    58  07AD  1683               	bsf	3,5
    59  07AE  1303               	bcf	3,6	;carry unused
    60  07AF  0098               	movwf	24	;volatile
    61                           ;485-PC-BUS.c: 42: RCSTA=0x80;
    62  07B0  3080               	movlw	-128
    63  07B1  1283               	bcf	3,5
    64  07B2  0098               	movwf	24	;volatile
    65                           ;485-PC-BUS.c: 43: TRISC=0x80;
    66  07B3  1683               	bsf	3,5
    67  07B4  0087               	movwf	7	;volatile
    68                           ;485-PC-BUS.c: 44: SPBRG=0x33;
    69  07B5  3033               	movlw	51
    70  07B6  0099               	movwf	25	;volatile
    71                           ;485-PC-BUS.c: 45: PIR1=0x00;
    72  07B7  1283               	bcf	3,5
    73  07B8  018C               	clrf	12	;volatile
    74                           ;485-PC-BUS.c: 46: PIE1=PIE1|0x20;
    75  07B9  1683               	bsf	3,5
    76  07BA  168C               	bsf	12,5	;volatile
    77                           ;485-PC-BUS.c: 47: CREN=1;
    78  07BB  1283               	bcf	3,5
    79  07BC  1618               	bsf	24,4
    80                           ;485-PC-BUS.c: 48: TXEN=1;
    81  07BD  1683               	bsf	3,5
    82  07BE  1698               	bsf	24,5
    83                           ;485-PC-BUS.c: 49: }
    84  07BF  1283               	bcf	3,5
    85  07C0  0008               	return
    86                           ;485-PC-BUS.c: 30: void initial()
    87                           ;485-PC-BUS.c: 31: {
    88  07C1                     _initial
    89                           ;485-PC-BUS.c: 32: INTCON=0x00;
    90  07C1  018B               	clrf	11	;volatile
    91                           ;485-PC-BUS.c: 33: ADCON1=0x07;
    92  07C2  3007               	movlw	7
    93  07C3  1683               	bsf	3,5
    94  07C4  1303               	bcf	3,6	;carry unused
    95  07C5  009F               	movwf	31	;volatile
    96                           ;485-PC-BUS.c: 34: PIE1=0;
    97  07C6  018C               	clrf	12	;volatile
    98                           ;485-PC-BUS.c: 35: PIE2=0;
    99  07C7  018D               	clrf	13	;volatile
   100                           ;485-PC-BUS.c: 36: }
   101  07C8  1283               	bcf	3,5
   102  07C9  0008               	return
   103                           ;485-PC-BUS.c: 85: main()
   104                           ;485-PC-BUS.c: 86: {
   105  07CA                     _main
   106                           ;485-PC-BUS.c: 87: initial();
   107  07CA  27C1               	fcall	_initial
   108                           ;485-PC-BUS.c: 88: sciinitial();
   109  07CB  27AC               	fcall	_sciinitial
   110                           ;485-PC-BUS.c: 89: TRISD2=0;
   111  07CC  1683               	bsf	3,5
   112  07CD  1108               	bcf	8,2
   113                           ;485-PC-BUS.c: 91: RD2=0;
   114  07CE  1283               	bcf	3,5
   115  07CF  1108               	bcf	8,2
   116                           ;485-PC-BUS.c: 92: flag=0;
   117  07D0  01A0               	clrf	_flag
   118                           ;485-PC-BUS.c: 93: INTCON=INTCON|0xc0;
   119  07D1  30C0               	movlw	-64
   120  07D2  048B               	iorwf	11	;volatile
   121                           ;485-PC-BUS.c: 94: rcount=0;
   122  07D3  01A4               	clrf	_rcount
   123  07D4                     l21
   124                           ;485-PC-BUS.c: 95: while(1)
   125                           ;485-PC-BUS.c: 96: {
   126  07D4  0B20               	decfsz	_flag,w
   127  07D5  2FD4               	goto	l21
   128                           ;485-PC-BUS.c: 98: {
   129  07D6  01A0               	clrf	_flag
   130                           ;485-PC-BUS.c: 100: RD2=1;
   131  07D7  1508               	bsf	8,2
   132                           ;485-PC-BUS.c: 101: if(rcount>4)
   133  07D8  3005               	movlw	5
   134  07D9  0224               	subwf	_rcount,w
   135  07DA  1C03               	btfss	3,0
   136  07DB  2FF7               	goto	l24
   137                           ;485-PC-BUS.c: 102: {
   138  07DC  01A4               	clrf	_rcount
   139                           ;485-PC-BUS.c: 104: if((r_buf[1]==0x30)&&(r_buf
      +                          [2]==0x31))
   140  07DD  0829               	movf	_r_buf+1,w
   141  07DE  3A30               	xorlw	48
   142  07DF  1D03               	btfss	3,2
   143  07E0  2FEA               	goto	l25
   144  07E1  082A               	movf	_r_buf+2,w
   145  07E2  3A31               	xorlw	49
   146  07E3  1D03               	btfss	3,2
   147  07E4  2FEA               	goto	l25
   148                           ;485-PC-BUS.c: 105: {
   149  07E5  3042               	movlw	66
   150  07E6  279F               	fcall	_send_serial
   151                           ;485-PC-BUS.c: 107: send_serial(0x0a);
   152  07E7  300A               	movlw	10
   153  07E8  279F               	fcall	_send_serial
   154                           ;485-PC-BUS.c: 108: }
   155  07E9  2FF7               	goto	l24
   156  07EA                     l25
   157                           ;485-PC-BUS.c: 110: {
   158  07EA  01A3               	clrf	_k
   159  07EB                     l30
   160  07EB  3005               	movlw	5
   161  07EC  0223               	subwf	_k,w
   162  07ED  1803               	btfsc	3,0
   163  07EE  2FF7               	goto	l24
   164                           ;485-PC-BUS.c: 112: send_serial(r_buf[k]);
   165  07EF  0823               	movf	_k,w
   166  07F0  3E28               	addlw	_r_buf
   167  07F1  0084               	movwf	4
   168  07F2  1383               	bcf	3,7
   169  07F3  0800               	movf	0,w
   170  07F4  279F               	fcall	_send_serial
   171  07F5  0AA3               	incf	_k
   172  07F6  2FEB               	goto	l30
   173                           ;485-PC-BUS.c: 113: }
   174  07F7                     l24
   175                           ;485-PC-BUS.c: 114: }
   176  07F7  01A1               	clrf	_i
   177  07F8                     l34
   178  07F8  3032               	movlw	50
   179  07F9  0221               	subwf	_i,w
   180  07FA  1803               	btfsc	3,0
   181  07FB  2FFE               	goto	l32
   182  07FC  0AA1               	incf	_i
   183  07FD  2FF8               	goto	l34
   184  07FE                     l32
   185                           ;485-PC-BUS.c: 116: RD2=0;
   186  07FE  1108               	bcf	8,2
   187                           ;485-PC-BUS.c: 117: }
   188  07FF  2FD4               	goto	l21
   189                           
   190                           	psect	intcode
   191                           ;485-PC-BUS.c: 51: void interrupt LOW_ISR()
   192                           ;485-PC-BUS.c: 52: {
   193  000D                     _LOW_ISR
   194  000D                     int_func
   195                           ;	_a assigned to ?a_LOW_ISR+0
   196  0000                     _LOW_ISR$a	set	?a_LOW_ISR
   197                           ;	_flag_recover assigned to ?a_LOW_ISR+1
   198  0000                     _LOW_ISR$flag_recover	set	?a_LOW_ISR+1
   199                           ;	_flag_startrec assigned to ?a_LOW_ISR+2
   200  0000                     _LOW_ISR$flag_startrec	set	?a_LOW_ISR+2
   201                           ;485-PC-BUS.c: 53: unsigned char a=1,flag_recov
      +                          er=0,flag_startrec=0;
   202  000D  0183               	clrf	3	;select bank 0
   203  000E  01B1               	clrf	?a_LOW_ISR
   204  000F  0AB1               	incf	?a_LOW_ISR
   205  0010  01B2               	clrf	?a_LOW_ISR+1
   206  0011  01B3               	clrf	?a_LOW_ISR+2
   207                           ;485-PC-BUS.c: 54: if(RCIF==1)
   208  0012  1E8C               	btfss	12,5
   209  0013  2839               	goto	l8
   210                           ;485-PC-BUS.c: 55: {
   211  0014  128C               	bcf	12,5
   212                           ;485-PC-BUS.c: 57: while(!flag_recover)
   213                           ;485-PC-BUS.c: 73: }
   214                           ;485-PC-BUS.c: 75: }
   215  0015                     l10
   216  0015  08B2               	movf	?a_LOW_ISR+1
   217  0016  1D03               	btfss	3,2
   218  0017  2837               	goto	l12
   219                           ;485-PC-BUS.c: 58: {
   220  0018                     l13
   221  0018  1E8C               	btfss	12,5
   222  0019  2818               	goto	l13
   223                           ;485-PC-BUS.c: 60: recdata = RCREG;
   224  001A  081A               	movf	26,w	;volatile
   225  001B  00A5               	movwf	_recdata
   226                           ;485-PC-BUS.c: 61: RCIF=0;
   227  001C  128C               	bcf	12,5
   228                           ;485-PC-BUS.c: 62: if((!flag_startrec)&&(recdat
      +                          a==0x24))
   229  001D  08B3               	movf	?a_LOW_ISR+2
   230  001E  1D03               	btfss	3,2
   231  001F  2826               	goto	l16
   232  0020  0825               	movf	_recdata,w
   233  0021  3A24               	xorlw	36
   234  0022  1D03               	btfss	3,2
   235  0023  2826               	goto	l16
   236                           ;485-PC-BUS.c: 63: {
   237  0024  01B3               	clrf	?a_LOW_ISR+2
   238  0025  0AB3               	incf	?a_LOW_ISR+2
   239  0026                     l16
   240                           ;485-PC-BUS.c: 65: }
   241  0026  08B3               	movf	?a_LOW_ISR+2
   242  0027  1903               	btfsc	3,2
   243  0028  2815               	goto	l10
   244                           ;485-PC-BUS.c: 68: {
   245  0029  0824               	movf	_rcount,w
   246  002A  3E28               	addlw	_r_buf
   247  002B  0084               	movwf	4
   248  002C  1383               	bcf	3,7
   249  002D  0825               	movf	_recdata,w
   250  002E  0080               	movwf	0
   251                           ;485-PC-BUS.c: 70: rcount ++;
   252  002F  0AA4               	incf	_rcount
   253                           ;485-PC-BUS.c: 71: if(recdata == 0x2a)
   254  0030  0825               	movf	_recdata,w
   255  0031  3A2A               	xorlw	42
   256  0032  1D03               	btfss	3,2
   257  0033  2815               	goto	l10
   258                           ;485-PC-BUS.c: 72: {flag_recover = 1;}
   259  0034  01B2               	clrf	?a_LOW_ISR+1
   260  0035  0AB2               	incf	?a_LOW_ISR+1
   261  0036  2815               	goto	l10
   262  0037                     l12
   263                           ;485-PC-BUS.c: 78: flag=1;
   264  0037  01A0               	clrf	_flag
   265  0038  0AA0               	incf	_flag
   266                           ;485-PC-BUS.c: 79: }
   267  0039                     l8
   268                           
   269                           	psect	intsave_0
   270  0070                     saved_w
   271  0070                     	ds	1
   272                           
   273                           	psect	intret
   274  0039  0835               	movf	saved_fsr,w
   275  003A  0084               	movwf	4	;restore FSR
   276  003B  0836               	movf	saved_pclath,w
   277  003C  008A               	movwf	10
   278  003D                     int_restore
   279  003D  0834               	movf	saved_status,w
   280  003E  0083               	movwf	3
   281  003F  0EF0               	swapf	saved_w
   282  0040  0E70               	swapf	saved_w,w
   283  0041  0009               	retfie
   284                           
   285                           	psect	intentry
   286  0004                     int_entry
   287  0004  00F0               	movwf	saved_w
   288  0005  0803               	movf	3,w
   289  0006  0183               	clrf	3
   290  0007  00B4               	movwf	saved_status
   291  0008  0804               	movf	4,w
   292  0009  00B5               	movwf	saved_fsr
   293  000A  080A               	movf	10,w
   294  000B  00B6               	movwf	saved_pclath
   295  000C  018A               	clrf	10
   296                           
   297                           	psect	intsave
   298  0034                     saved_status
   299  0034                     	ds	1
   300  0035                     saved_fsr
   301  0035                     	ds	1
   302  0036                     saved_pclath
   303  0036                     	ds	1
   304                           
   305                           	psect	text5
   306  0000                     
   307  0000                     
   308  0000                     

⌨️ 快捷键说明

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