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

📄 hal_rf_set_channel.lst

📁 CC2420+pic,很好用的程序啊,适合初学者,绝对没有问题的,快来下载啊
💻 LST
字号:
   1               		.file	"hal_rf_set_channel.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:
  91               	.global	halRfSetChannel
  93               	halRfSetChannel:
   1:../../../lib/hal/hal_rf_set_channel.c **** /**************************************************************************************************
   2:../../../lib/hal/hal_rf_set_channel.c ****  *                                                                                                 
   3:../../../lib/hal/hal_rf_set_channel.c ****  *        **********                                                                               
   4:../../../lib/hal/hal_rf_set_channel.c ****  *       ************                                                                              
   5:../../../lib/hal/hal_rf_set_channel.c ****  *      ***        ***                                                                             
   6:../../../lib/hal/hal_rf_set_channel.c ****  *      ***   +++   ***                                                                            
   7:../../../lib/hal/hal_rf_set_channel.c ****  *      ***   + +   ***                                                                            
   8:../../../lib/hal/hal_rf_set_channel.c ****  *      ***   +                        CHIPCON HARDWARE ABSTRACTION LIBRARY FOR THE CC2420         
   9:../../../lib/hal/hal_rf_set_channel.c ****  *      ***   + +   ***                             CC2420 channel selection                       
  10:../../../lib/hal/hal_rf_set_channel.c ****  *      ***   +++   ***                                                                            
  11:../../../lib/hal/hal_rf_set_channel.c ****  *      ***        ***                                                                             
  12:../../../lib/hal/hal_rf_set_channel.c ****  *       ************                                                                              
  13:../../../lib/hal/hal_rf_set_channel.c ****  *        **********                                                                               
  14:../../../lib/hal/hal_rf_set_channel.c ****  *                                                                                                 
  15:../../../lib/hal/hal_rf_set_channel.c ****  **************************************************************************************************
  16:../../../lib/hal/hal_rf_set_channel.c ****  * The Chipcon Hardware Abstraction Library is a collection of functions, macros and constants, whi
  17:../../../lib/hal/hal_rf_set_channel.c ****  * can be used to ease access to the hardware on the CC2420 and the target microcontroller.        
  18:../../../lib/hal/hal_rf_set_channel.c ****  *                                                                                                 
  19:../../../lib/hal/hal_rf_set_channel.c ****  * This file contains a function that allows you to switch radio channels on the CC2420.           
  20:../../../lib/hal/hal_rf_set_channel.c ****  *                                                                                                 
  21:../../../lib/hal/hal_rf_set_channel.c ****  * EXAMPLE OF USAGE:                                                                               
  22:../../../lib/hal/hal_rf_set_channel.c ****  *     // Turn off RX...                                                                           
  23:../../../lib/hal/hal_rf_set_channel.c ****  *     DISABLE_GLOBAL_INT();                                                                       
  24:../../../lib/hal/hal_rf_set_channel.c ****  *     FASTSPI_STROBE(CC2420_SRFOFF);                                                              
  25:../../../lib/hal/hal_rf_set_channel.c ****  *     ENABLE_GLOBAL_INT();                                                                        
  26:../../../lib/hal/hal_rf_set_channel.c ****  *                                                                                                 
  27:../../../lib/hal/hal_rf_set_channel.c ****  *     // ... switch to the next channel in the loop ...                                           
  28:../../../lib/hal/hal_rf_set_channel.c ****  *     halRfSetChannel(channel++);                                                                 
  29:../../../lib/hal/hal_rf_set_channel.c ****  *     if (channel == 27) channel = 11;                                                            
  30:../../../lib/hal/hal_rf_set_channel.c ****  *                                                                                                 
  31:../../../lib/hal/hal_rf_set_channel.c ****  *     // ... and go back into RX                                                                  
  32:../../../lib/hal/hal_rf_set_channel.c ****  *     DISABLE_GLOBAL_INT();                                                                       
  33:../../../lib/hal/hal_rf_set_channel.c ****  *     FASTSPI_STROBE(CC2420_SRXON);                                                               
  34:../../../lib/hal/hal_rf_set_channel.c ****  *     ENABLE_GLOBAL_INT();                                                                        
  35:../../../lib/hal/hal_rf_set_channel.c ****  **************************************************************************************************
  36:../../../lib/hal/hal_rf_set_channel.c ****  * Compiler: AVR-GCC                                                                               
  37:../../../lib/hal/hal_rf_set_channel.c ****  * Target platform: CC2420DB, CC2420 + any MCU with very few modifications required                
  38:../../../lib/hal/hal_rf_set_channel.c ****  **************************************************************************************************
  39:../../../lib/hal/hal_rf_set_channel.c ****  * Revision history:                                                                               
  40:../../../lib/hal/hal_rf_set_channel.c ****  * $Log: hal_rf_set_channel.c,v $
  41:../../../lib/hal/hal_rf_set_channel.c ****  * Revision 1.3  2004/03/30 14:59:35  mbr
  42:../../../lib/hal/hal_rf_set_channel.c ****  * Release for web
  43:../../../lib/hal/hal_rf_set_channel.c ****  * 
  44:../../../lib/hal/hal_rf_set_channel.c ****  *
  45:../../../lib/hal/hal_rf_set_channel.c ****  *
  46:../../../lib/hal/hal_rf_set_channel.c ****  *
  47:../../../lib/hal/hal_rf_set_channel.c ****  **************************************************************************************************
  48:../../../lib/hal/hal_rf_set_channel.c **** #include <include.h>
  49:../../../lib/hal/hal_rf_set_channel.c **** 
  50:../../../lib/hal/hal_rf_set_channel.c **** 
  51:../../../lib/hal/hal_rf_set_channel.c **** 
  52:../../../lib/hal/hal_rf_set_channel.c **** 
  53:../../../lib/hal/hal_rf_set_channel.c **** //-------------------------------------------------------------------------------------------------
  54:../../../lib/hal/hal_rf_set_channel.c **** //	void halRfSetChannel(UINT8 Channel)
  55:../../../lib/hal/hal_rf_set_channel.c **** //
  56:../../../lib/hal/hal_rf_set_channel.c **** //	DESCRIPTION:
  57:../../../lib/hal/hal_rf_set_channel.c **** //		Programs CC2420 for a given IEEE 802.15.4 channel. 
  58:../../../lib/hal/hal_rf_set_channel.c **** //		Note that SRXON, STXON or STXONCCA must be run for the new channel selection to take full effec
  59:../../../lib/hal/hal_rf_set_channel.c **** //
  60:../../../lib/hal/hal_rf_set_channel.c **** //	PARAMETERS:
  61:../../../lib/hal/hal_rf_set_channel.c **** //		UINT8 channel
  62:../../../lib/hal/hal_rf_set_channel.c **** //			The channel number (11-26)
  63:../../../lib/hal/hal_rf_set_channel.c **** //-------------------------------------------------------------------------------------------------
  64:../../../lib/hal/hal_rf_set_channel.c **** void halRfSetChannel(UINT8 channel) {
  95               	.LM1:
  96               	/* prologue: frame size=0 */
  97               	/* prologue end (size=0) */
  65:../../../lib/hal/hal_rf_set_channel.c **** 	UINT16 f;
  66:../../../lib/hal/hal_rf_set_channel.c **** 	
  67:../../../lib/hal/hal_rf_set_channel.c **** 	// Derive frequency programming from the given channel number
  68:../../../lib/hal/hal_rf_set_channel.c **** 	f = (UINT16) (channel - 11); // Subtract the base channel 
  99               	.LM2:
 100 0000 282F      		mov r18,r24
 101 0002 3327      		clr r19
 102 0004 2B50      		subi r18,lo8(-(-11))
 103 0006 3040      		sbci r19,hi8(-(-11))
  69:../../../lib/hal/hal_rf_set_channel.c **** 	f = f + (f << 2);    		 // Multiply with 5, which is the channel spacing
 105               	.LM3:
 106 0008 C901      		movw r24,r18
 107 000a 880F      		lsl r24
 108 000c 991F      		rol r25
 109 000e 880F      		lsl r24
 110 0010 991F      		rol r25
 111 0012 280F      		add r18,r24
 112 0014 391F      		adc r19,r25
  70:../../../lib/hal/hal_rf_set_channel.c **** 	f = f + 357 + 0x4000;		 // 357 is 2405-2048, 0x4000 is LOCK_THR = 1
 114               	.LM4:
 115 0016 2B59      		subi r18,lo8(-(16741))
 116 0018 3E4B      		sbci r19,hi8(-(16741))
  71:../../../lib/hal/hal_rf_set_channel.c **** 	
  72:../../../lib/hal/hal_rf_set_channel.c ****     // Write it to the CC2420
  73:../../../lib/hal/hal_rf_set_channel.c **** 	DISABLE_GLOBAL_INT();
 118               	.LM5:
 119               	/* #APP */
 120 001a F894      		cli
 121               		
  74:../../../lib/hal/hal_rf_set_channel.c **** 	FASTSPI_SETREG(CC2420_FSCTRL, f);
 123               	.LM6:
 124               	/* #NOAPP */
 125 001c C098      		cbi 56-0x20,0
 126 001e 88E1      		ldi r24,lo8(24)
 127 0020 8FB9      		out 47-0x20,r24
 128               	.L6:
 130               	.LM7:
 131 0022 779B      		sbis 46-0x20,7
 132 0024 FECF      		rjmp .L6
 133 0026 832F      		mov r24,r19
 134 0028 9927      		clr r25
 135 002a 8FB9      		out 47-0x20,r24
 136               	.L11:
 137 002c 779B      		sbis 46-0x20,7
 138 002e FECF      		rjmp .L11
 139 0030 2FB9      		out 47-0x20,r18
 140               	.L16:
 141 0032 779B      		sbis 46-0x20,7
 142 0034 FECF      		rjmp .L16
 143 0036 C09A      		sbi 56-0x20,0
  75:../../../lib/hal/hal_rf_set_channel.c **** 	ENABLE_GLOBAL_INT();
 145               	.LM8:
 146               	/* #APP */
 147 0038 7894      		sei
 148               		
 149               	/* #NOAPP */
 150               	/* epilogue: frame size=0 */
 151 003a 0895      		ret
 152               	/* epilogue end (size=1) */
 153               	/* function halRfSetChannel size 36 (35) */
 156               	.Lscope0:
 158               		.text
 160               	Letext:
 161               	/* File "../../../lib/hal/hal_rf_set_channel.c": code   36 = 0x0024 (  35), prologues   0, epilogue
DEFINED SYMBOLS
                            *ABS*:00000000 hal_rf_set_channel.c
                            *ABS*:0000003f __SREG__
                            *ABS*:0000003e __SP_H__
                            *ABS*:0000003d __SP_L__
                            *ABS*:00000000 __tmp_reg__
                            *ABS*:00000001 __zero_reg__
C:\DOCUME~1\zx\LOCALS~1\Temp/cciyaaaa.s:93     .text:00000000 halRfSetChannel
C:\DOCUME~1\zx\LOCALS~1\Temp/cciyaaaa.s:160    .text:0000003c Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss

⌨️ 快捷键说明

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