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

📄 main.lst

📁 NRF2401 PIC16源码
💻 LST
📖 第 1 页 / 共 5 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL1
                                                      Wed Aug 30 14:25:31 2006


     1                           	processor	16F876A
     2                           	opt	pw 79
     3                           	psect	__Z49231UD_,global,delta=1
     4                           	psect	text3,local,class=CODE,delta=2
     5                           	psect	intcode,global,class=CODE,delta=2
     6                           	psect	intsave_0,global,ovrld,class=COMBANK,spa
      +                          ce=1,delta=1
     7                           	psect	intret,global,class=CODE,delta=2
     8                           	psect	intentry,global,class=CODE,delta=2
     9                           	psect	intsave,global,class=BANK0,space=1,delta
      +                          =1
    10                           	psect	text4,local,class=CODE,delta=2
    11                           	psect	text5,local,class=CODE,delta=2
    12                           	psect	text11,local,class=CODE,delta=2
    13                           	psect	idloc,global,class=IDLOC,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                           	psect	rbss_1,global,class=BANK1,space=1,delta=
      +                          1
    17                           	psect	temp,global,ovrld,class=BANK0,space=1,de
      +                          lta=1
    18  0000                     
    19  0000                     
    20  0000                     
    21  0000                     
    22  0000                     
    23  0000                     
    24  0000                     
    25  0000                     
    26  0000                     
    27  0000                     
    28                           
    29                           	psect	intcode
    30                           ;main.c: 68: void interrupt UartINT(void)
    31                           ;main.c: 69: {
    32  0017                     _UartINT
    33  0017                     int_func
    34                           ;	_temp assigned to ?a_UartINT+0
    35  0000                     _UartINT$temp	set	?a_UartINT
    36                           ;main.c: 70: unsigned char temp;
    37  0017  0183               	clrf	3	;select bank 0
    38  0018  1E8C               	btfss	12,5
    39  0019  285D               	goto	l13
    40                           ;main.c: 73: temp=RCREG;
    41  001A  081A               	movf	26,w	;volatile
    42  001B  00E4               	movwf	?a_UartINT
    43                           ;main.c: 75: {
    44                           ;main.c: 74: if(!RxingFlag)
    45  001C  18A0               	btfsc	_RxingFlag/(0+8),_RxingFlag& (0+7)
    46  001D  2824               	goto	L1
    47  001E  3AAA               	xorlw	-86
    48  001F  1D03               	btfss	3,2
    49  0020  285D               	goto	l13
    50                           ;main.c: 77: {
    51  0021  01A2               	clrf	_RevNum
    52                           ;main.c: 79: RxingFlag=1;
    53  0022  14A0               	bsf	_RxingFlag/(0+8),_RxingFlag& (0+7)
    54                           ;main.c: 80: }
    55                           ;main.c: 82: else
    56  0023  285D               	goto	l13
    57                           ;main.c: 83: {
    58  0024                     L1
    59  0024  3A0D               	xorlw	13
    60  0025  1D03               	btfss	3,2
    61  0026  2838               	goto	l18
    62  0027  0822               	movf	_RevNum,w
    63  0028  00F0               	movwf	btemp
    64  0029  01F1               	clrf	btemp+1
    65  002A  30FD               	movlw	253
    66  002B  07F0               	addwf	btemp
    67  002C  1803               	btfsc	3,0
    68  002D  0AF1               	incf	btemp+1
    69  002E  30FF               	movlw	255
    70  002F  07F1               	addwf	btemp+1
    71  0030  0833               	movf	_RecBuff+1,w
    72  0031  0670               	xorwf	btemp,w
    73  0032  0471               	iorwf	btemp+1,w
    74  0033  1D03               	btfss	3,2
    75  0034  2838               	goto	l18
    76                           ;main.c: 85: {
    77  0035  10A0               	bcf	_RxingFlag/(0+8),_RxingFlag& (0+7)
    78                           ;main.c: 87: f_rx_evt=1;
    79  0036  1520               	bsf	_f_rx_evt/(0+8),_f_rx_evt& (0+7)
    80                           ;main.c: 88: }
    81  0037  285D               	goto	l13
    82  0038                     l18
    83                           ;main.c: 90: {
    84  0038  0822               	movf	_RevNum,w
    85  0039  3E32               	addlw	_RecBuff
    86  003A  0084               	movwf	4
    87  003B  1383               	bcf	3,7
    88  003C  0864               	movf	?a_UartINT,w
    89  003D  0080               	movwf	0
    90  003E  0AA2               	incf	_RevNum
    91                           ;main.c: 92: if((RevNum>20)||(RevNum>RecBuff[1]
      +                          +3))
    92  003F  3015               	movlw	21
    93  0040  0222               	subwf	_RevNum,w
    94  0041  1803               	btfsc	3,0
    95  0042  2859               	goto	u120
    96  0043  0822               	movf	_RevNum,w
    97  0044  00F0               	movwf	btemp
    98  0045  01F1               	clrf	btemp+1
    99  0046  0833               	movf	_RecBuff+1,w
   100  0047  00F2               	movwf	btemp+2
   101  0048  01F3               	clrf	btemp+3
   102  0049  3003               	movlw	3
   103  004A  07F2               	addwf	btemp+2
   104  004B  1803               	btfsc	3,0
   105  004C  0AF3               	incf	btemp+3
   106  004D  0873               	movf	btemp+3,w
   107  004E  3A80               	xorlw	128
   108  004F  00F4               	movwf	btemp+4
   109  0050  0871               	movf	btemp+1,w
   110  0051  3A80               	xorlw	128
   111  0052  0274               	subwf	btemp+4,w
   112  0053  1D03               	btfss	3,2
   113  0054  2857               	goto	u115
   114  0055  0870               	movf	btemp,w
   115  0056  0272               	subwf	btemp+2,w
   116  0057                     u115
   117  0057  1803               	btfsc	3,0
   118  0058  285D               	goto	l13
   119  0059                     u120
   120                           ;main.c: 93: {
   121  0059  1283               	bcf	3,5
   122  005A  1303               	bcf	3,6	;carry unused
   123  005B  10A0               	bcf	_RxingFlag/(0+8),_RxingFlag& (0+7)
   124                           ;main.c: 95: RevNum=0;
   125  005C  01A2               	clrf	_RevNum
   126                           ;main.c: 96: }
   127                           ;main.c: 98: }
   128                           ;main.c: 99: }
   129  005D                     l13
   130                           
   131                           	psect	intsave_0
   132  0075                     saved_w
   133  0075                     	ds	1
   134                           
   135                           	psect	intret
   136  0067  0866               	movf	saved_fsr,w
   137  0068  0084               	movwf	4	;restore FSR
   138  0069  0867               	movf	saved_pclath,w
   139  006A  008A               	movwf	10
   140  006B                     int_restore
   141  006B  0865               	movf	saved_status,w
   142  006C  0083               	movwf	3
   143  006D  0EF5               	swapf	saved_w
   144  006E  0E75               	swapf	saved_w,w
   145  006F  0009               	retfie
   146                           
   147                           	psect	intentry
   148  0004                     int_entry
   149  0004  00F5               	movwf	saved_w
   150  0005  0803               	movf	3,w
   151  0006  0183               	clrf	3
   152  0007  00E5               	movwf	saved_status
   153  0008  0804               	movf	4,w
   154  0009  00E6               	movwf	saved_fsr
   155  000A  080A               	movf	10,w
   156  000B  00E7               	movwf	saved_pclath
   157  000C  018A               	clrf	10
   158                           
   159                           	psect	intsave
   160  0065                     saved_status
   161  0065                     	ds	1
   162  0066                     saved_fsr
   163  0066                     	ds	1
   164  0067                     saved_pclath
   165  0067                     	ds	1
   166                           
   167                           	psect	text4
   168                           ;main.c: 102: void RF_write_byte(unsigned char 
      +                          WData)
   169                           ;main.c: 103: {
   170  064F                     _RF_write_byte
   171                           ;	_WData assigned to ?a_RF_write_byte+0
   172  0000                     _RF_write_byte$WData	set	?a_RF_write_byte
   173                           ;	_i assigned to ?a_RF_write_byte+1
   174  0000                     _RF_write_byte$i	set	?a_RF_write_byte+1
   175                           ;_WData stored from w
   176  064F  0183               	clrf	3	;select bank 0
   177  0650  00DA               	movwf	?a_RF_write_byte
   178                           ;main.c: 104: unsigned char i;
   179  0651  1683               	bsf	3,5
   180  0652  1187               	bcf	7,3
   181                           ;main.c: 108: TRISC4=0;
   182  0653  1207               	bcf	7,4
   183                           ;main.c: 109: for(i=0;i<8;i++)
   184  0654  1283               	bcf	3,5
   185  0655  01DB               	clrf	?a_RF_write_byte+1
   186  0656                     l22
   187                           ;main.c: 110: {
   188                           ;main.c: 111: flag=WData&0x80;
   189  0656  1020               	bcf	F473/(0+8),F473& (0+7)
   190                           ;main.c: 112: RC4=0;
   191  0657  1207               	bcf	7,4
   192                           ;main.c: 113: if(flag) RC4=1;
   193  0658  1820               	btfsc	F473/(0+8),F473& (0+7)
   194  0659  1607               	bsf	7,4
   195                           ;main.c: 114: WData<<=1;
   196  065A  1003               	bcf	3,0
   197  065B  0DDA               	rlf	?a_RF_write_byte
   198                           ;main.c: 115: RC3=1;
   199  065C  1587               	bsf	7,3
   200                           ;main.c: 116: asm("nop");
   201  065D  0000               	nop	;#
   202                           ;main.c: 117: asm("nop");
   203  065E  0000               	nop	;#
   204                           ;main.c: 118: asm("nop");
   205  065F  0000               	nop	;#
   206                           ;main.c: 119: asm("nop");
   207  0660  0000               	nop	;#
   208                           ;main.c: 120: RC3=0;
   209  0661  1187               	bcf	7,3
   210                           ;main.c: 121: }
   211  0662  0ADB               	incf	?a_RF_write_byte+1
   212  0663  3008               	movlw	8
   213  0664  025B               	subwf	?a_RF_write_byte+1,w
   214  0665  1803               	btfsc	3,0
   215  0666  0008               	return
   216  0667  2E56               	goto	l22
   217                           
   218                           	psect	text5
   219                           ;main.c: 124: unsigned char RF_read_byte(void)
   220                           ;main.c: 125: {
   221  0668                     _RF_read_byte
   222                           ;	_i assigned to ?a_RF_read_byte+0
   223  0000                     _RF_read_byte$i	set	?a_RF_read_byte
   224                           ;	_result assigned to ?a_RF_read_byte+1
   225  0000                     _RF_read_byte$result	set	?a_RF_read_byte+1
   226                           ;main.c: 126: unsigned char i;
   227  0668  0183               	clrf	3	;select bank 0
   228  0669  01DB               	clrf	?a_RF_read_byte+1
   229                           ;main.c: 129: TRISC3=0;
   230  066A  1683               	bsf	3,5
   231  066B  1187               	bcf	7,3
   232                           ;main.c: 130: TRISC4=1;
   233  066C  1607               	bsf	7,4
   234                           ;main.c: 131: for(i=0;i<8;i++)
   235  066D  1283               	bcf	3,5
   236  066E  01DA               	clrf	?a_RF_read_byte
   237                           ;main.c: 132: {
   238                           ;main.c: 133: result<<=1;
   239  066F  1003               	bcf	3,0
   240  0670                     L2
   241  0670  0DDB               	rlf	?a_RF_read_byte+1
   242                           ;main.c: 134: RC3=1;
   243  0671  1587               	bsf	7,3
   244                           ;main.c: 135: asm("nop");
   245  0672  0000               	nop	;#
   246                           ;main.c: 136: if(RC4) result++;
   247  0673  1A07               	btfsc	7,4
   248  0674  0ADB               	incf	?a_RF_read_byte+1
   249                           ;main.c: 137: asm("nop");
   250  0675  0000               	nop	;#

⌨️ 快捷键说明

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