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

📄 basic_rf_receive.lst

📁 CC2420+pic,很好用的程序啊,适合初学者,绝对没有问题的,快来下载啊
💻 LST
📖 第 1 页 / 共 3 页
字号:
   1               		.file	"basic_rf_receive.c"
   2               		.arch atmega128
   3               	__SREG__ = 0x3f
   4               	__SP_H__ = 0x3e
   5               	__SP_L__ = 0x3d
   6               	__tmp_reg__ = 0
   7               	__zero_reg__ = 1
   8               		.global __do_copy_data
   9               		.global __do_clear_bss
  12               		.text
  13               	.Ltext0:
  90               	.global	basicRfReceiveOn
  92               	basicRfReceiveOn:
   1:../../../lib/basic_rf/basic_rf_receive.c **** /**************************************************************************************************
   2:../../../lib/basic_rf/basic_rf_receive.c ****  *                                                                                                 
   3:../../../lib/basic_rf/basic_rf_receive.c ****  *        **********                                                                               
   4:../../../lib/basic_rf/basic_rf_receive.c ****  *       ************                                                                              
   5:../../../lib/basic_rf/basic_rf_receive.c ****  *      ***        ***                                                                             
   6:../../../lib/basic_rf/basic_rf_receive.c ****  *      ***   +++   ***                                                                            
   7:../../../lib/basic_rf/basic_rf_receive.c ****  *      ***   + +   ***                                                                            
   8:../../../lib/basic_rf/basic_rf_receive.c ****  *      ***   +                               CHIPCON CC2420 BASIC RF LIBRARY                      
   9:../../../lib/basic_rf/basic_rf_receive.c ****  *      ***   + +   ***                               Packet reception                             
  10:../../../lib/basic_rf/basic_rf_receive.c ****  *      ***   +++   ***                                                                            
  11:../../../lib/basic_rf/basic_rf_receive.c ****  *      ***        ***                                                                             
  12:../../../lib/basic_rf/basic_rf_receive.c ****  *       ************                                                                              
  13:../../../lib/basic_rf/basic_rf_receive.c ****  *        **********                                                                               
  14:../../../lib/basic_rf/basic_rf_receive.c ****  *                                                                                                 
  15:../../../lib/basic_rf/basic_rf_receive.c ****  **************************************************************************************************
  16:../../../lib/basic_rf/basic_rf_receive.c ****  * This file contains functions used to enable and disable for packet reception, and the FIFOP     
  17:../../../lib/basic_rf/basic_rf_receive.c ****  * interrupt which handles the packet reception. The application must define the                   
  18:../../../lib/basic_rf/basic_rf_receive.c ****  * basicRfReceivePacket() function, which is called when a packet has been successfully received.  
  19:../../../lib/basic_rf/basic_rf_receive.c ****  *                                                                                                 
  20:../../../lib/basic_rf/basic_rf_receive.c ****  * More information can be found in basic_rf.h                                                     
  21:../../../lib/basic_rf/basic_rf_receive.c ****  **************************************************************************************************
  22:../../../lib/basic_rf/basic_rf_receive.c ****  * Compiler: AVR-GCC                                                                               
  23:../../../lib/basic_rf/basic_rf_receive.c ****  * Target platform: CC2420DB, CC2420 + any MCU with very few modifications required                
  24:../../../lib/basic_rf/basic_rf_receive.c ****  **************************************************************************************************
  25:../../../lib/basic_rf/basic_rf_receive.c ****  * Revision history:                                                                               
  26:../../../lib/basic_rf/basic_rf_receive.c ****  *  $Log: basic_rf_receive.c,v $
  27:../../../lib/basic_rf/basic_rf_receive.c ****  *  Revision 1.4  2004/07/26 11:28:10  mbr
  28:../../../lib/basic_rf/basic_rf_receive.c ****  *  Modified RXFIFO flushing by strobing CC2420_SFLUSHRX
  29:../../../lib/basic_rf/basic_rf_receive.c ****  *
  30:../../../lib/basic_rf/basic_rf_receive.c ****  *  Revision 1.3  2004/03/30 14:59:22  mbr
  31:../../../lib/basic_rf/basic_rf_receive.c ****  *  Release for web
  32:../../../lib/basic_rf/basic_rf_receive.c ****  * 
  33:../../../lib/basic_rf/basic_rf_receive.c ****  *
  34:../../../lib/basic_rf/basic_rf_receive.c ****  *
  35:../../../lib/basic_rf/basic_rf_receive.c ****  **************************************************************************************************
  36:../../../lib/basic_rf/basic_rf_receive.c **** #include <include.h>
  37:../../../lib/basic_rf/basic_rf_receive.c **** 
  38:../../../lib/basic_rf/basic_rf_receive.c **** 
  39:../../../lib/basic_rf/basic_rf_receive.c **** 
  40:../../../lib/basic_rf/basic_rf_receive.c **** 
  41:../../../lib/basic_rf/basic_rf_receive.c **** //-------------------------------------------------------------------------------------------------
  42:../../../lib/basic_rf/basic_rf_receive.c **** //  void halRfReceiveOn(void)
  43:../../../lib/basic_rf/basic_rf_receive.c **** //
  44:../../../lib/basic_rf/basic_rf_receive.c **** //  DESCRIPTION:
  45:../../../lib/basic_rf/basic_rf_receive.c **** //      Enables the CC2420 receiver and the FIFOP interrupt. When a packet is received through this
  46:../../../lib/basic_rf/basic_rf_receive.c **** //      interrupt, it will call halRfReceivePacket(...), which must be defined by the application
  47:../../../lib/basic_rf/basic_rf_receive.c **** //-------------------------------------------------------------------------------------------------
  48:../../../lib/basic_rf/basic_rf_receive.c **** void basicRfReceiveOn(void) {
  94               	.LM1:
  95               	/* prologue: frame size=0 */
  96               	/* prologue end (size=0) */
  49:../../../lib/basic_rf/basic_rf_receive.c ****     rfSettings.receiveOn = TRUE;
  98               	.LM2:
  99 0000 81E0      		ldi r24,lo8(1)
 100 0002 8093 0000 		sts rfSettings+8,r24
  50:../../../lib/basic_rf/basic_rf_receive.c **** 	FASTSPI_STROBE(CC2420_SRXON);
 102               	.LM3:
 103 0006 C098      		cbi 56-0x20,0
 104 0008 83E0      		ldi r24,lo8(3)
 105 000a 8FB9      		out 47-0x20,r24
 106               	.L5:
 108               	.LM4:
 109 000c 779B      		sbis 46-0x20,7
 110 000e FECF      		rjmp .L5
 111 0010 C09A      		sbi 56-0x20,0
  51:../../../lib/basic_rf/basic_rf_receive.c **** 	FASTSPI_STROBE(CC2420_SFLUSHRX);
 113               	.LM5:
 114 0012 C098      		cbi 56-0x20,0
 115 0014 88E0      		ldi r24,lo8(8)
 116 0016 8FB9      		out 47-0x20,r24
 117               	.L11:
 118 0018 779B      		sbis 46-0x20,7
 119 001a FECF      		rjmp .L11
 120 001c C09A      		sbi 56-0x20,0
  52:../../../lib/basic_rf/basic_rf_receive.c ****     ENABLE_FIFOP_INT();
 122               	.LM6:
 123 001e 89B7      		in r24,89-0x20
 124 0020 8160      		ori r24,lo8(1)
 125 0022 89BF      		out 89-0x20,r24
 126               	/* epilogue: frame size=0 */
 127 0024 0895      		ret
 128               	/* epilogue end (size=1) */
 129               	/* function basicRfReceiveOn size 19 (18) */
 131               	.Lscope0:
 134               	.global	basicRfReceiveOff
 136               	basicRfReceiveOff:
  53:../../../lib/basic_rf/basic_rf_receive.c **** } // basicRfReceiveOn
  54:../../../lib/basic_rf/basic_rf_receive.c **** 
  55:../../../lib/basic_rf/basic_rf_receive.c **** 
  56:../../../lib/basic_rf/basic_rf_receive.c **** 
  57:../../../lib/basic_rf/basic_rf_receive.c **** 
  58:../../../lib/basic_rf/basic_rf_receive.c **** //-------------------------------------------------------------------------------------------------
  59:../../../lib/basic_rf/basic_rf_receive.c **** //  void halRfReceiveOff(void)
  60:../../../lib/basic_rf/basic_rf_receive.c **** //
  61:../../../lib/basic_rf/basic_rf_receive.c **** //  DESCRIPTION:
  62:../../../lib/basic_rf/basic_rf_receive.c **** //      Disables the CC2420 receiver and the FIFOP interrupt.
  63:../../../lib/basic_rf/basic_rf_receive.c **** //-------------------------------------------------------------------------------------------------
  64:../../../lib/basic_rf/basic_rf_receive.c **** void basicRfReceiveOff(void) {
 138               	.LM7:
 139               	/* prologue: frame size=0 */
 140               	/* prologue end (size=0) */
  65:../../../lib/basic_rf/basic_rf_receive.c ****     rfSettings.receiveOn = FALSE;
 142               	.LM8:
 143 0026 1092 0000 		sts rfSettings+8,__zero_reg__
  66:../../../lib/basic_rf/basic_rf_receive.c **** 	FASTSPI_STROBE(CC2420_SRFOFF);
 145               	.LM9:
 146 002a C098      		cbi 56-0x20,0
 147 002c 86E0      		ldi r24,lo8(6)
 148 002e 8FB9      		out 47-0x20,r24
 149               	.L19:
 151               	.LM10:
 152 0030 779B      		sbis 46-0x20,7
 153 0032 FECF      		rjmp .L19
 154 0034 C09A      		sbi 56-0x20,0
  67:../../../lib/basic_rf/basic_rf_receive.c ****     DISABLE_FIFOP_INT();
 156               	.LM11:
 157 0036 89B7      		in r24,89-0x20
 158 0038 8E7F      		andi r24,lo8(-2)
 159 003a 89BF      		out 89-0x20,r24
 160               	/* epilogue: frame size=0 */
 161 003c 0895      		ret
 162               	/* epilogue end (size=1) */
 163               	/* function basicRfReceiveOff size 12 (11) */
 165               	.Lscope1:
 168               	.global	__vector_1
 170               	__vector_1:
  68:../../../lib/basic_rf/basic_rf_receive.c **** } // basicRfReceiveOff
  69:../../../lib/basic_rf/basic_rf_receive.c **** 
  70:../../../lib/basic_rf/basic_rf_receive.c **** 
  71:../../../lib/basic_rf/basic_rf_receive.c **** 
  72:../../../lib/basic_rf/basic_rf_receive.c **** 
  73:../../../lib/basic_rf/basic_rf_receive.c **** //-------------------------------------------------------------------------------------------------
  74:../../../lib/basic_rf/basic_rf_receive.c **** //  SIGNAL(SIG_INTERRUPT0) - CC2420 FIFOP interrupt service routine
  75:../../../lib/basic_rf/basic_rf_receive.c **** //
  76:../../../lib/basic_rf/basic_rf_receive.c **** //  DESCRIPTION:
  77:../../../lib/basic_rf/basic_rf_receive.c **** //		When a packet has been completely received, this ISR will extract the data from the RX FIFO, pu
  78:../../../lib/basic_rf/basic_rf_receive.c **** //		it into the active BASIC_RF_RX_INFO structure, and call basicRfReceivePacket() (defined by the
  79:../../../lib/basic_rf/basic_rf_receive.c **** //		application). FIFO overflow and illegally formatted packets is handled by this routine.
  80:../../../lib/basic_rf/basic_rf_receive.c **** //
  81:../../../lib/basic_rf/basic_rf_receive.c **** //      Note: Packets are acknowledged automatically by CC2420 through the auto-acknowledgment feat
  82:../../../lib/basic_rf/basic_rf_receive.c **** //-------------------------------------------------------------------------------------------------
  83:../../../lib/basic_rf/basic_rf_receive.c **** SIGNAL(SIG_INTERRUPT0) {
 172               	.LM12:
 173               	/* prologue: frame size=4 */
 174 003e 1F92      		push __zero_reg__
 175 0040 0F92      		push __tmp_reg__
 176 0042 0FB6      		in __tmp_reg__,__SREG__
 177 0044 0F92      		push __tmp_reg__
 178 0046 1124      		clr __zero_reg__
 179 0048 2F93      		push r18
 180 004a 3F93      		push r19
 181 004c 4F93      		push r20
 182 004e 5F93      		push r21
 183 0050 6F93      		push r22
 184 0052 7F93      		push r23
 185 0054 8F93      		push r24
 186 0056 9F93      		push r25
 187 0058 AF93      		push r26
 188 005a BF93      		push r27
 189 005c EF93      		push r30
 190 005e FF93      		push r31
 191 0060 CF93      		push r28
 192 0062 DF93      		push r29
 193 0064 CDB7      		in r28,__SP_L__
 194 0066 DEB7      		in r29,__SP_H__
 195 0068 2497      		sbiw r28,4
 196 006a DEBF      		out __SP_H__,r29
 197 006c CDBF      		out __SP_L__,r28
 198               	/* prologue end (size=24) */
  84:../../../lib/basic_rf/basic_rf_receive.c **** 	WORD frameControlField;
  85:../../../lib/basic_rf/basic_rf_receive.c **** 	INT8 length;
  86:../../../lib/basic_rf/basic_rf_receive.c **** 	BYTE pFooter[2];
  87:../../../lib/basic_rf/basic_rf_receive.c **** 
  88:../../../lib/basic_rf/basic_rf_receive.c ****     // Clean up and exit in case of FIFO overflow, which is indicated by FIFOP = 1 and FIFO = 0
  89:../../../lib/basic_rf/basic_rf_receive.c **** 	if((FIFOP_IS_1) && (!(FIFO_IS_1))) {	   
 200               	.LM13:
 201 006e 809B      		sbis 48-0x20,0
 202 0070 0EC0      		rjmp .L24
 204               	.LM14:
 205 0072 8199      		sbic 48-0x20,1
 206 0074 0CC0      		rjmp .L24
  90:../../../lib/basic_rf/basic_rf_receive.c **** 	    FASTSPI_STROBE(CC2420_SFLUSHRX);
 208               	.LM15:
 209 0076 C098      		cbi 56-0x20,0
 210 0078 88E0      		ldi r24,lo8(8)
 211 007a 8FB9      		out 47-0x20,r24
 212               	.L28:
 213 007c 779B      		sbis 46-0x20,7
 214 007e FECF      		rjmp .L28
 215 0080 C09A      		sbi 56-0x20,0
  91:../../../lib/basic_rf/basic_rf_receive.c **** 	    FASTSPI_STROBE(CC2420_SFLUSHRX);
 217               	.LM16:
 218 0082 C098      		cbi 56-0x20,0
 219 0084 88E0      		ldi r24,lo8(8)
 220 0086 8FB9      		out 47-0x20,r24
 221               	.L34:
 222 0088 779B      		sbis 46-0x20,7
 223 008a FECF      		rjmp .L34
 224 008c A7C0      		rjmp .L117
 225               	.L24:
  92:../../../lib/basic_rf/basic_rf_receive.c **** 	    return;
  93:../../../lib/basic_rf/basic_rf_receive.c **** 	}
  94:../../../lib/basic_rf/basic_rf_receive.c **** 
  95:../../../lib/basic_rf/basic_rf_receive.c **** 	// Payload length
  96:../../../lib/basic_rf/basic_rf_receive.c **** 	FASTSPI_READ_FIFO_BYTE(length);
 227               	.LM17:
 228 008e C098      		cbi 56-0x20,0

⌨️ 快捷键说明

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