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

📄 nrf24l01.lst

📁 nRF24L01参考程序_PIC
💻 LST
📖 第 1 页 / 共 3 页
字号:


HI-TECH Software PICC Macro Assembler V9.60
                                                      Thu Jan 14 20:13:06 2010


     1                           	processor	16F676
     2                           	opt	pw 79
     3                           	psect	text0,local,class=CODE,delta=2
     4                           	psect	config,global,class=CONFIG,delta=2
     5                           	psect	strings,global,class=STRING,delta=2
     6                           	psect	const1,local,class=CONST,delta=2
     7                           	psect	text1,local,class=CODE,delta=2
     8                           	psect	text2,local,class=CODE,delta=2
     9                           	psect	text3,local,class=CODE,delta=2
    10                           	psect	text4,local,class=CODE,delta=2
    11                           	psect	text5,local,class=CODE,delta=2
    12                           	psect	text6,local,class=CODE,delta=2
    13                           	psect	text7,local,class=CODE,delta=2
    14                           	psect	text8,local,class=CODE,delta=2
    15                           	psect	text9,local,class=CODE,delta=2
    16                           	psect	text10,local,class=CODE,delta=2
    17                           	psect	text11,local,class=CODE,delta=2
    18                           	psect	text12,local,class=CODE,delta=2
    19                           	psect	text13,local,class=CODE,delta=2
    20                           	psect	text14,local,class=CODE,delta=2
    21                           	psect	rbss_0,global,class=BANK0,space=1,delta=
      +                          1
    22  0000                     
    23  0000                     
    24  0000                     
    25  0000                     
    26  0000                     
    27  0000                     
    28  0000                     
    29  0000                     
    30  0000                     
    31  0000                     	;#
    32                           
    33                           	psect	text0
    34  030D                     _Port_init
    35                           ;nRF24L01.C: 35: void Port_init(void){
    36  030D  1683               	bsf	3,5
    37  030E  0191               	clrf	17
    38                           ;nRF24L01.C: 37: CMCON=0x07;
    39  030F  3007               	movlw	7
    40  0310  1283               	bcf	3,5
    41  0311  0099               	movwf	25	;volatile
    42                           ;nRF24L01.C: 38: TRISA=0x00;
    43  0312  1683               	bsf	3,5
    44  0313  0185               	clrf	5	;volatile
    45                           ;nRF24L01.C: 39: PORTA=0xff;
    46  0314  30FF               	movlw	-1
    47  0315  1283               	bcf	3,5
    48  0316  0085               	movwf	5	;volatile
    49                           ;nRF24L01.C: 41: TRISC=0x03;
    50  0317  3003               	movlw	3
    51  0318  1683               	bsf	3,5
    52  0319  0087               	movwf	7	;volatile
    53                           ;nRF24L01.C: 42: RC4=0;
    54  031A  1283               	bcf	3,5
    55  031B  1207               	bcf	7,4
    56                           ;nRF24L01.C: 43: RC5=1;
    57  031C  1687               	bsf	7,5
    58                           ;nRF24L01.C: 44: RC2=0;
    59  031D  1107               	bcf	7,2
    60                           ;nRF24L01.C: 46: RA0=1;
    61  031E  1405               	bsf	5,0
    62                           ;nRF24L01.C: 47: }
    63  031F  0008               	return	;W free
    64                           
    65                           	psect	config
    66  2007  3F15               	dw	16149	;#
    67                           
    68                           	psect	const1
    69  0014  0782               	addwf	2
    70  0015                     _TX_ADDRESS
    71  0015  3434               	retlw	52
    72  0016  3443               	retlw	67
    73  0017  3410               	retlw	16
    74  0018  3410               	retlw	16
    75  0019  3463               	retlw	99
    76                           
    77                           	psect	text1
    78  0394                     _Dlms
    79                           ;	_i assigned to ?a_Dlms+0
    80  0000                     _Dlms$i	set	?a_Dlms
    81                           ;	_a assigned to ?a_Dlms+2
    82  0000                     _Dlms$a	set	?a_Dlms+2
    83                           ;nRF24L01.C: 58: void Dlms(unsigned int z){
    84  0394  1283               	bcf	3,5
    85  0395  0825               	movf	?_Dlms,w
    86  0396  00A9               	movwf	?a_Dlms+2
    87  0397  0826               	movf	?_Dlms+1,w
    88  0398  00AA               	movwf	?a_Dlms+3
    89  0399  0429               	iorwf	?a_Dlms+2,w
    90  039A  1903               	btfsc	3,2
    91  039B  0008               	return
    92  039C                     l3
    93                           ;nRF24L01.C: 61: for(i=110;i>0;i--);
    94  039C  306E               	movlw	110
    95  039D  00A7               	movwf	?a_Dlms
    96  039E  01A8               	clrf	?a_Dlms+1
    97  039F                     l6
    98  039F  08A7               	movf	?a_Dlms
    99  03A0  1903               	btfsc	3,2
   100  03A1  03A8               	decf	?a_Dlms+1
   101  03A2  03A7               	decf	?a_Dlms
   102  03A3  0828               	movf	?a_Dlms+1,w
   103  03A4  0427               	iorwf	?a_Dlms,w
   104  03A5  1D03               	btfss	3,2
   105  03A6  2B9F               	goto	l6
   106  03A7  08A9               	movf	?a_Dlms+2
   107  03A8  1903               	btfsc	3,2
   108  03A9  03AA               	decf	?a_Dlms+3
   109  03AA  03A9               	decf	?a_Dlms+2
   110  03AB  082A               	movf	?a_Dlms+3,w
   111  03AC  0429               	iorwf	?a_Dlms+2,w
   112  03AD  1903               	btfsc	3,2
   113  03AE  0008               	return
   114  03AF  2B9C               	goto	l3
   115                           
   116                           	psect	text2
   117  0364                     _SPI_RW
   118                           ;	_bit_ctr assigned to ?a_SPI_RW+0
   119  0000                     _SPI_RW$bit_ctr	set	?a_SPI_RW
   120                           ;	_byte assigned to ?a_SPI_RW+1
   121  0000                     _SPI_RW$byte	set	?a_SPI_RW+1
   122                           ;_byte stored from w
   123  0364  1283               	bcf	3,5
   124  0365  00AC               	movwf	?a_SPI_RW+1
   125                           ;nRF24L01.C: 72: unsigned char SPI_RW(unsigned 
      +                          char byte){
   126  0366  01AB               	clrf	?a_SPI_RW
   127                           ;nRF24L01.C: 75: byte = (byte << 1);
   128  0367  1003               	bcf	3,0
   129  0368                     L1
   130  0368  0DAC               	rlf	?a_SPI_RW+1
   131                           ;nRF24L01.C: 76: RC3 = CARRY;
   132  0369  1C03               	btfss	3,0
   133  036A  2B6D               	goto	u40
   134  036B  1587               	bsf	7,3
   135  036C  2B6E               	goto	u54
   136  036D                     u40
   137  036D  1187               	bcf	7,3
   138  036E                     u54
   139                           ;nRF24L01.C: 77: RC2 = 1;
   140  036E  1283               	bcf	3,5
   141  036F  1507               	bsf	7,2
   142                           ;nRF24L01.C: 78: byte |= RC0;
   143  0370  3000               	movlw	0
   144  0371  1807               	btfsc	7,0
   145  0372  3001               	movlw	1
   146  0373  04AC               	iorwf	?a_SPI_RW+1
   147                           ;nRF24L01.C: 79: RC2 = 0;
   148  0374  1107               	bcf	7,2
   149  0375  0AAB               	incf	?a_SPI_RW
   150  0376  3008               	movlw	8
   151  0377  022B               	subwf	?a_SPI_RW,w
   152  0378  1C03               	btfss	3,0
   153  0379  2B68               	goto	L1
   154                           ;nRF24L01.C: 80: }
   155  037A  082C               	movf	?a_SPI_RW+1,w
   156                           ;nRF24L01.C: 82: }
   157  037B  0008               	return	;uses W
   158                           
   159                           	psect	text3
   160  02F5                     _SPI_Write
   161                           ;	_reg assigned to ?a_SPI_Write+0
   162  0000                     _SPI_Write$reg	set	?a_SPI_Write
   163                           ;	_status assigned to ?a_SPI_Write+1
   164  0000                     _SPI_Write$status	set	?a_SPI_Write+1
   165                           ;_reg stored from w
   166  02F5  1283               	bcf	3,5
   167  02F6  00A6               	movwf	?a_SPI_Write
   168                           ;nRF24L01.C: 91: unsigned char SPI_Write(unsign
      +                          ed char reg, unsigned char value){
   169  02F7  1287               	bcf	7,5
   170                           ;nRF24L01.C: 95: status = SPI_RW(reg);
   171  02F8  1283               	bcf	3,5
   172  02F9  2364               	call	_SPI_RW
   173  02FA  00A7               	movwf	?a_SPI_Write+1
   174                           ;nRF24L01.C: 96: SPI_RW(value);
   175  02FB  0825               	movf	?_SPI_Write,w
   176  02FC  2364               	call	_SPI_RW
   177                           ;nRF24L01.C: 97: RC5 = 1;
   178  02FD  1687               	bsf	7,5
   179                           ;nRF24L01.C: 99: return(status);
   180  02FE  0827               	movf	?a_SPI_Write+1,w
   181                           ;nRF24L01.C: 100: }
   182  02FF  0008               	return	;uses W
   183                           
   184                           	psect	text4
   185  02EB                     _SPI_Read
   186                           ;	_reg assigned to ?a_SPI_Read+0
   187  0000                     _SPI_Read$reg	set	?a_SPI_Read
   188                           ;	_reg_val assigned to ?a_SPI_Read+1
   189  0000                     _SPI_Read$reg_val	set	?a_SPI_Read+1
   190                           ;_reg stored from w
   191  02EB  1283               	bcf	3,5
   192  02EC  00A6               	movwf	?a_SPI_Read
   193                           ;nRF24L01.C: 109: unsigned char SPI_Read(unsign
      +                          ed char reg){
   194  02ED  1287               	bcf	7,5
   195                           ;nRF24L01.C: 113: SPI_RW(reg);
   196  02EE  1283               	bcf	3,5
   197  02EF  2364               	call	_SPI_RW
   198                           ;nRF24L01.C: 114: reg_val = SPI_RW(0);
   199  02F0  3000               	movlw	0
   200  02F1  2364               	call	_SPI_RW
   201  02F2  00A7               	movwf	?a_SPI_Read+1
   202                           ;nRF24L01.C: 115: RC5 = 1;
   203  02F3  1687               	bsf	7,5
   204                           ;nRF24L01.C: 118: }
   205  02F4  0008               	return	;uses W
   206                           ;       param _pBuf assigned to ?_SPI_Read_Buf+
      +                          0
   207  0000                     _SPI_Read_Buf$pBuf	set	?_SPI_Read_Buf
   208                           ;       param _bytes assigned to ?_SPI_Read_Buf
      +                          +1
   209  0000                     _SPI_Read_Buf$bytes	set	?_SPI_Read_Buf+1
   210                           
   211                           	psect	text5
   212  0320                     _SPI_Read_Buf
   213                           ;	_reg assigned to ?a_SPI_Read_Buf+0
   214  0000                     _SPI_Read_Buf$reg	set	?a_SPI_Read_Buf
   215                           ;	_status assigned to ?a_SPI_Read_Buf+1
   216  0000                     _SPI_Read_Buf$status	set	?a_SPI_Read_Buf+1
   217                           ;	_byte_ctr assigned to ?a_SPI_Read_Buf+2
   218  0000                     _SPI_Read_Buf$byte_ctr	set	?a_SPI_Read_Buf+2
   219                           ;_reg stored from w
   220  0320  1283               	bcf	3,5
   221  0321  00A5               	movwf	?a_SPI_Read_Buf
   222                           ;nRF24L01.C: 128: unsigned char SPI_Read_Buf(un
      +                          signed char reg, unsigned char *pBuf, unsigned 
      +                          char bytes){
   223  0322  1287               	bcf	7,5
   224                           ;nRF24L01.C: 132: status = SPI_RW(reg);
   225  0323  1283               	bcf	3,5
   226  0324  2364               	call	_SPI_RW
   227  0325  00A6               	movwf	?a_SPI_Read_Buf+1
   228                           ;nRF24L01.C: 134: for(byte_ctr=0;byte_ctr<bytes
      +                          ;byte_ctr++)
   229  0326  01A7               	clrf	?a_SPI_Read_Buf+2

⌨️ 快捷键说明

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