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

📄 guest.lst

📁 模拟串口通讯
💻 LST
📖 第 1 页 / 共 3 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-76266                            Wed Jul 30 16:02:02 2008

Licensed to: ONE TWO
     1                           	processor	16F877A
     2                           	opt	pw 79
     3                           	psect	__Z76266RS_,global,delta=1
     4                           	psect	text0,local,class=CODE,delta=2
     5                           	psect	text2,local,class=CODE,delta=2
     6                           	psect	text3,local,class=CODE,delta=2
     7                           	psect	intcode,global,class=CODE,delta=2
     8                           	psect	intsave_0,global,ovrld,class=COMBANK,spa
      +                          ce=1,delta=1
     9                           	psect	intret,global,class=CODE,delta=2
    10                           	psect	intentry,global,class=CODE,delta=2
    11                           	psect	intsave,global,class=BANK0,space=1,delta
      +                          =1
    12                           	psect	strings,global,class=STRING,delta=2
    13                           	psect	rbit_0,global,bit,class=BANK0,space=1,de
      +                          lta=1
    14                           	psect	rbss_0,global,class=BANK0,space=1,delta=
      +                          1
    15                           	psect	temp,global,ovrld,class=BANK0,space=1,de
      +                          lta=1
    16  0000                     
    17  0000                     
    18  0000                     
    19  0000                     
    20  0000                     
    21  0000                     
    22  0000                     
    23  0000                     
    24  0000                     
    25  0000                     
    26                           
    27                           	psect	__Z76266RS_
    28  0190                     
    29  0190                     
    30                           
    31                           	psect	text0
    32  0553                     _Delay
    33                           ;	_i assigned to ?a_Delay+0
    34  0000                     _Delay$i	set	?a_Delay
    35                           ;guest.c: 31: unsigned char i;
    36  0553  3008               	movlw	8
    37  0554  0183               	clrf	3	;select bank 0
    38  0555  00AA               	movwf	?a_Delay
    39  0556  2D5D               	goto	l5
    40  0557                     l2
    41                           ;guest.c: 33: {
    42                           ;guest.c: 34: DelayMs(250);
    43  0557  30FA               	movlw	-6
    44  0558  120A  118A  2560   	fcall	_DelayMs
      +       120A  118A         
    45  055D                     l5
    46                           ;guest.c: 35: }
    47  055D  0BAA               	decfsz	?a_Delay
    48  055E  2D57               	goto	l2
    49  055F  0008               	return
    50                           
    51                           	psect	text2
    52                           ;guest.c: 47: bit EvenParity(unsigned char data
      +                          )
    53                           ;guest.c: 48: {
    54  06E0                     _EvenParity
    55                           ;	_data assigned to ?a_EvenParity+0
    56  0000                     _EvenParity$data	set	?a_EvenParity
    57                           ;_data stored from w
    58  06E0  0183               	clrf	3	;select bank 0
    59  06E1  00AB               	movwf	?a_EvenParity
    60  06E2  0E2B               	swapf	?a_EvenParity,w	;#
    61  06E3  06AB               	xorwf	?a_EvenParity	;#
    62  06E4  0C2B               	rrf	?a_EvenParity,w	;#
    63  06E5  06AB               	xorwf	?a_EvenParity	;#
    64  06E6  192B               	btfsc	?a_EvenParity,2	;#
    65  06E7  0AAB               	incf	?a_EvenParity	;#
    66                           ;guest.c: 57:  if (data&0x01)
    67  06E8  1C2B               	btfss	?a_EvenParity,0
    68  06E9  2EEC               	goto	l8
    69                           ;guest.c: 58: return 1;
    70  06EA  1403               	bsf	3,0
    71  06EB  0008               	return
    72  06EC                     l8
    73                           ;guest.c: 60: return 0;
    74  06EC  1003               	bcf	3,0
    75                           ;guest.c: 61: }
    76  06ED  0008               	return
    77                           ;guest.c: 121: void SingleBusTx(unsigned char d
      +                          ata)
    78                           ;guest.c: 122: {
    79  06EE                     _SingleBusTx
    80                           ;	_data assigned to ?a_SingleBusTx+0
    81  0000                     _SingleBusTx$data	set	?a_SingleBusTx
    82                           ;_data stored from w
    83  06EE  0183               	clrf	3	;select bank 0
    84  06EF  00AA               	movwf	?a_SingleBusTx
    85                           ;guest.c: 123: TX_BUF = data;
    86  06F0  00A7               	movwf	_TX_BUF
    87                           ;guest.c: 124: INTE = 0;
    88  06F1  120B               	bcf	11,4
    89                           ;guest.c: 125: RD6 = 0;
    90  06F2  1308               	bcf	8,6
    91                           ;guest.c: 127: TX_FLAG = 0;
    92  06F3  01A8               	clrf	_TX_FLAG
    93                           ;guest.c: 128: TmrCounter = 2;
    94  06F4  3002               	movlw	2
    95  06F5  00A9               	movwf	_TmrCounter
    96                           ;guest.c: 129: TMR0 = 0x12;
    97  06F6  3012               	movlw	18
    98  06F7  0081               	movwf	1	;volatile
    99                           ;guest.c: 130: while(!TX_FLAG);
   100  06F8                     l21
   101  06F8  08A8               	movf	_TX_FLAG
   102  06F9  1903               	btfsc	3,2
   103  06FA  2EF8               	goto	l21
   104                           ;guest.c: 131: TX_FLAG = 0;
   105  06FB  01A8               	clrf	_TX_FLAG
   106                           ;guest.c: 132: for(BitCounter=10;--BitCounter;)
   107  06FC  300A               	movlw	10
   108  06FD  00A1               	movwf	_BitCounter
   109  06FE  2F16               	goto	l27
   110  06FF                     l24
   111                           ;guest.c: 133: {
   112                           ;guest.c: 134: if(BitCounter==1)
   113  06FF  0B21               	decfsz	_BitCounter,w
   114  0700  2F04               	goto	l28
   115                           ;guest.c: 135: RD6 = EvenParity(data);
   116  0701  082A               	movf	?a_SingleBusTx,w
   117  0702  26E0               	fcall	_EvenParity
   118  0703  2F05               	goto	L2
   119                           ;guest.c: 136: else
   120  0704                     l28
   121                           ;guest.c: 137: RD6 = TX_BUF & 0x01;
   122  0704  0C27               	rrf	_TX_BUF,w
   123  0705                     L2
   124  0705  1C03               	btfss	3,0
   125  0706  2F09               	goto	u180
   126  0707  1708               	bsf	8,6
   127  0708  2F0A               	goto	l29
   128  0709                     u180
   129  0709  1308               	bcf	8,6
   130  070A                     l29
   131                           ;guest.c: 138: TmrCounter = 2;
   132  070A  3002               	movlw	2
   133  070B  1283               	bcf	3,5
   134  070C  1303               	bcf	3,6	;carry unused
   135  070D  00A9               	movwf	_TmrCounter
   136                           ;guest.c: 139: TMR0 = 0x12;
   137  070E  3012               	movlw	18
   138  070F  0081               	movwf	1	;volatile
   139                           ;guest.c: 140: while(!TX_FLAG);
   140  0710                     l30
   141  0710  08A8               	movf	_TX_FLAG
   142  0711  1903               	btfsc	3,2
   143  0712  2F10               	goto	l30
   144                           ;guest.c: 141: TX_FLAG = 0;
   145  0713  01A8               	clrf	_TX_FLAG
   146                           ;guest.c: 142: TX_BUF >>= 1;
   147  0714  1003               	bcf	3,0
   148  0715  0CA7               	rrf	_TX_BUF
   149  0716                     l27
   150                           ;guest.c: 143: }
   151  0716  0BA1               	decfsz	_BitCounter
   152  0717  2EFF               	goto	l24
   153                           ;guest.c: 145: RD6 = 1;
   154  0718  1708               	bsf	8,6
   155                           ;guest.c: 146: BitCounter = 10;
   156  0719  300A               	movlw	10
   157  071A  00A1               	movwf	_BitCounter
   158                           ;guest.c: 147: INTE = 1;
   159  071B  160B               	bsf	11,4
   160                           ;guest.c: 148: }
   161  071C  0008               	return
   162                           ;guest.c: 40: void set_port(void)
   163                           ;guest.c: 41: {
   164  071D                     _set_port
   165                           ;guest.c: 42: ADCON1 = 0x06;
   166  071D  3006               	movlw	6
   167  071E  1683               	bsf	3,5
   168  071F  1303               	bcf	3,6	;carry unused
   169  0720  009F               	movwf	31	;volatile
   170                           ;guest.c: 43: PSPMODE = 0;
   171  0721  1209               	bcf	9,4
   172                           ;guest.c: 44: }
   173  0722  1283               	bcf	3,5
   174  0723  0008               	return
   175                           ;guest.c: 153: void main(void)
   176                           ;guest.c: 154: {
   177  0724                     _main
   178                           ;guest.c: 155: GIE = 1;
   179  0724  178B               	bsf	11,7
   180                           ;guest.c: 156: T0IE = 1;
   181  0725  168B               	bsf	11,5
   182                           ;guest.c: 157: INTE = 1;
   183  0726  160B               	bsf	11,4
   184                           ;guest.c: 158: OPTION = 0x00;
   185  0727  1683               	bsf	3,5
   186  0728  1303               	bcf	3,6	;carry unused
   187  0729  0181               	clrf	1
   188                           ;guest.c: 159: Data = 0x55;
   189  072A  3055               	movlw	85
   190  072B  1283               	bcf	3,5
   191  072C  00A2               	movwf	_Data
   192                           ;guest.c: 160: BitCounter = 10;
   193  072D  300A               	movlw	10
   194  072E  00A1               	movwf	_BitCounter
   195                           ;guest.c: 161: TmrCounter = 2;
   196  072F  3002               	movlw	2
   197  0730  00A9               	movwf	_TmrCounter
   198                           ;guest.c: 162: TRISC6 = 0;
   199  0731  1683               	bsf	3,5
   200  0732  1307               	bcf	7,6
   201                           ;guest.c: 163: TRISC2 = 0;
   202  0733  1107               	bcf	7,2
   203                           ;guest.c: 164: TRISC7 = 0;
   204  0734  1387               	bcf	7,7
   205                           ;guest.c: 165: RC7 = 1;
   206  0735  1283               	bcf	3,5
   207  0736  1787               	bsf	7,7
   208                           ;guest.c: 166: TRISB0 = 1;
   209  0737  1683               	bsf	3,5
   210  0738  1406               	bsf	6,0
   211                           ;guest.c: 167: TRISD6 = 0;
   212  0739  1308               	bcf	8,6
   213                           ;guest.c: 168: RC2 = 1;
   214  073A  1283               	bcf	3,5
   215  073B  1507               	bsf	7,2
   216                           ;guest.c: 169: RD6 = 1;
   217  073C  1708               	bsf	8,6
   218                           ;guest.c: 170: RB0 = 1;
   219  073D  1406               	bsf	6,0
   220                           ;guest.c: 171: RC_FLAG = 0;
   221  073E  01A5               	clrf	_RC_FLAG
   222                           ;guest.c: 172: set_port();
   223  073F  271D               	fcall	_set_port
   224                           ;guest.c: 173: lcd_initial();
   225  0740  120A  118A  257F   	fcall	_lcd_initial
   226                           ;guest.c: 174: lcd_clear();
   227  0743  120A  118A  256D   	fcall	_lcd_clear
   228                           ;guest.c: 175: lcd_gotoxy(0,0);
   229  0746  01AA               	clrf	?_lcd_gotoxy
   230  0747  3000               	movlw	0
   231  0748  120A  118A  264B   	fcall	_lcd_gotoxy
   232                           ;guest.c: 176: lcd_putstr("Tx:");
   233  074B  308E               	movlw	low u19
   234  074C  00AA               	movwf	?_lcd_putstr
   235  074D  3000               	movlw	high u19
   236  074E  00AB               	movwf	?_lcd_putstr+1
   237  074F  120A  118A  2596   	fcall	_lcd_putstr
   238                           ;guest.c: 177: lcd_gotoxy(0,1);
   239  0752  01AA               	clrf	?_lcd_gotoxy
   240  0753  0AAA               	incf	?_lcd_gotoxy
   241  0754  3000               	movlw	0
   242  0755  120A  118A  264B   	fcall	_lcd_gotoxy
   243                           ;guest.c: 178: lcd_putstr("Rc:");
   244  0758  3092               	movlw	low u29
   245  0759  00AA               	movwf	?_lcd_putstr
   246  075A  3000               	movlw	high u29
   247  075B  00AB               	movwf	?_lcd_putstr+1
   248  075C  120A  118A  2596   	fcall	_lcd_putstr
      +       120A  118A         
   249  0761                     l35
   250                           ;guest.c: 179: while(1)
   251                           ;guest.c: 180: {
   252  0761  08A5               	movf	_RC_FLAG
   253  0762  1903               	btfsc	3,2
   254  0763  2F61               	goto	l35
   255                           ;guest.c: 182: {
   256  0764  01A5               	clrf	_RC_FLAG
   257                           ;guest.c: 184: if(PARITY==EvenParity(RC_REG))
   258  0765  1C20               	btfss	_PARITY/(0+8),_PARITY& (0+7)
   259  0766  2F69               	goto	u230

⌨️ 快捷键说明

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