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

📄 timer3.lst

📁 利用zigbee进行定位的程序
💻 LST
字号:
   1               		.file	"timer3.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
  11               		.text
  12               	.Ltext0:
 120               	.global	Timer3_intDisable
 122               	Timer3_intDisable:
   1:timer3.c      **** //----------------------------------------------------//
   2:timer3.c      **** //-------Institute Of  Computing Technology-----------//
   3:timer3.c      **** //------------Chinese Academic  Science---------------//
   4:timer3.c      **** //-----中国科学院计算技术研究所先进测试技术实验室-----//
   5:timer3.c      **** //----------------------------------------------------//
   6:timer3.c      **** 
   7:timer3.c      **** /**
   8:timer3.c      ****  * www.wsn.net.cn
   9:timer3.c      ****  * @copyright:nbicc_lpp
  10:timer3.c      ****  * @data:2005.11.22
  11:timer3.c      ****  * @version:0.0.1
  12:timer3.c      ****  * @updata:$
  13:timer3.c      ****  *
  14:timer3.c      ****  */
  15:timer3.c      **** #include "timer3.h"
  16:timer3.c      ****  	// Timer/Counter3 Clock source: System Clock
  17:timer3.c      **** 	// Timer/Counter3 Clock value: Set
  18:timer3.c      **** 	// Timer/Counter3 Mode: CTC-OCRa
  19:timer3.c      **** 	// Timer/Counter3 Output: A: Disconnected, B: Disconnected, C: Disconnected
  20:timer3.c      **** 
  21:timer3.c      **** //-------------------------------------------------------------------------------
  22:timer3.c      **** inline   void Timer3_intDisable(void)
  23:timer3.c      **** {
 124               	.LM1:
 125               	/* prologue: frame size=0 */
 126               	/* prologue end (size=0) */
 127               	.LBB2:
  24:timer3.c      ****       { os_atomic_t _nesc_atomic = os_atomic_start();
 129               	.LM2:
 130 0000 0E94 0000 		call os_atomic_start
  25:timer3.c      ****        	{
  26:timer3.c      **** 	ETIMSK &= 0xef;
 132               	.LM3:
 133 0004 9091 7D00 		lds r25,125
 134 0008 9F7E      		andi r25,lo8(-17)
 135 000a 9093 7D00 		sts 125,r25
  27:timer3.c      **** 	}
  28:timer3.c      ****       os_atomic_end(_nesc_atomic); }
 137               	.LM4:
 138 000e 0E94 0000 		call os_atomic_end
 139               	.LBE2:
 140               	/* epilogue: frame size=0 */
 141 0012 0895      		ret
 142               	/* epilogue end (size=1) */
 143               	/* function Timer3_intDisable size 10 (9) */
 146               	.global	Timer3_fire
 148               	Timer3_fire:
  29:timer3.c      **** }
  30:timer3.c      **** 
  31:timer3.c      ****  
  32:timer3.c      **** 
  33:timer3.c      **** inline    uint8_t Timer3_fire(void){
 150               	.LM5:
 151               	/* prologue: frame size=0 */
 152               	/* prologue end (size=0) */
 153               	/* epilogue: frame size=0 */
 154 0014 0895      		ret
 155               	/* epilogue end (size=1) */
 156               	/* function Timer3_fire size 1 (0) */
 161               	.global	Timer3_setIntervalAndScale
 163               	Timer3_setIntervalAndScale:
  34:timer3.c      **** 
  35:timer3.c      **** 
  36:timer3.c      ****   
  37:timer3.c      **** 		
  38:timer3.c      ****   	
  39:timer3.c      ****   /*
  40:timer3.c      ****  
  41:timer3.c      ****   cc2420_writetxfifo(((demopacket->length)-1), (uint8_t *) demopacket);
  42:timer3.c      ****   (demopacket->dsn)++;
  43:timer3.c      ****   demopacket->address.destination_address=(++demopacket->address.destination_address)&0x02;
  44:timer3.c      ****    
  45:timer3.c      ****   cc2420_setrxmode();
  46:timer3.c      **** 
  47:timer3.c      ****   Leds_greenToggle();
  48:timer3.c      ****   Leds_redToggle();
  49:timer3.c      ****   Leds_yellowOff();
  50:timer3.c      ****   */
  51:timer3.c      ****   
  52:timer3.c      **** }
  53:timer3.c      **** 
  54:timer3.c      **** uint8_t Timer3_setIntervalAndScale(uint16_t interval, uint8_t scale)
  55:timer3.c      **** {
 165               	.LM6:
 166               	/* prologue: frame size=0 */
 167 0016 0F93      		push r16
 168 0018 1F93      		push r17
 169 001a CF93      		push r28
 170               	/* prologue end (size=3) */
 171 001c 8C01      		movw r16,r24
 172 001e C62F      		mov r28,r22
  56:timer3.c      **** 
  57:timer3.c      ****   if (scale > 7) {
 174               	.LM7:
 175 0020 6830      		cpi r22,lo8(8)
 176 0022 18F0      		brlo .L4
  58:timer3.c      ****     return FAIL;
 178               	.LM8:
 179 0024 80E0      		ldi r24,lo8(0)
 180 0026 90E0      		ldi r25,hi8(0)
 181 0028 25C0      		rjmp .L3
 182               	.L4:
 183               	.LBB3:
  59:timer3.c      ****     }
  60:timer3.c      **** 
  61:timer3.c      **** { os_atomic_t _nesc_atomic = os_atomic_start();
 185               	.LM9:
 186 002a 0E94 0000 		call os_atomic_start
  62:timer3.c      ****     {
  63:timer3.c      ****       
  64:timer3.c      **** 	OCR3A = interval;//this is the scale
 188               	.LM10:
 189 002e 1093 8700 		sts (134)+1,r17
 190 0032 0093 8600 		sts 134,r16
  65:timer3.c      **** 	OCR3B = 0x0000;
 192               	.LM11:
 193 0036 1092 8500 		sts (132)+1,__zero_reg__
 194 003a 1092 8400 		sts 132,__zero_reg__
  66:timer3.c      **** 	OCR3C = 0x0000;
 196               	.LM12:
 197 003e 1092 8300 		sts (130)+1,__zero_reg__
 198 0042 1092 8200 		sts 130,__zero_reg__
  67:timer3.c      **** 	TCNT3 = 0x0000; //this is the counter
 200               	.LM13:
 201 0046 1092 8900 		sts (136)+1,__zero_reg__
 202 004a 1092 8800 		sts 136,__zero_reg__
  68:timer3.c      **** 	TCCR3A = 0x00;//Output: A: Disconnected, B: Disconnected, C: Disconnected,WGM[1..0]=00
 204               	.LM14:
 205 004e 1092 8B00 		sts 139,__zero_reg__
  69:timer3.c      **** 	scale |= 0x08;//
 207               	.LM15:
 208 0052 C860      		ori r28,lo8(8)
  70:timer3.c      **** 	TCCR3B |= scale;//clk/(scale),WGM[3..2]=01
 210               	.LM16:
 211 0054 9091 8A00 		lds r25,138
 212 0058 9C2B      		or r25,r28
 213 005a 9093 8A00 		sts 138,r25
  71:timer3.c      **** 	TCCR3C = 0x00;//
 215               	.LM17:
 216 005e 1092 8C00 		sts 140,__zero_reg__
  72:timer3.c      **** 	ETIMSK |= 0x10;//OCIE3 is enable 
 218               	.LM18:
 219 0062 9091 7D00 		lds r25,125
 220 0066 9061      		ori r25,lo8(16)
 221 0068 9093 7D00 		sts 125,r25
  73:timer3.c      **** 	
  74:timer3.c      ****     }
  75:timer3.c      ****     os_atomic_end(_nesc_atomic); }
 223               	.LM19:
 224 006c 0E94 0000 		call os_atomic_end
 225               	.LBE3:
  76:timer3.c      ****   return SUCCESS;
 227               	.LM20:
 228 0070 81E0      		ldi r24,lo8(1)
 229 0072 90E0      		ldi r25,hi8(1)
 230               	.L3:
 231               	/* epilogue: frame size=0 */
 232 0074 CF91      		pop r28
 233 0076 1F91      		pop r17
 234 0078 0F91      		pop r16
 235 007a 0895      		ret
 236               	/* epilogue end (size=4) */
 237               	/* function Timer3_setIntervalAndScale size 51 (44) */
 241               	.global	Timer3_sethalfsymbol
 243               	Timer3_sethalfsymbol:
  77:timer3.c      **** }
  78:timer3.c      **** 
  79:timer3.c      **** void  Timer3_sethalfsymbol(uint16_t symbols)
  80:timer3.c      **** {  	
 245               	.LM21:
 246               	/* prologue: frame size=0 */
 247               	/* prologue end (size=0) */
  81:timer3.c      ****  
  82:timer3.c      ****       uint16_t halfsymbols;
  83:timer3.c      ****       halfsymbols=symbols*2;
  84:timer3.c      ****       Timer3_setIntervalAndScale(halfsymbols, 0x5);
 249               	.LM22:
 250 007c 65E0      		ldi r22,lo8(5)
 251 007e 880F      		lsl r24
 252 0080 991F      		rol r25
 253 0082 0E94 0000 		call Timer3_setIntervalAndScale
 254               	/* epilogue: frame size=0 */
 255 0086 0895      		ret
 256               	/* epilogue end (size=1) */
 257               	/* function Timer3_sethalfsymbol size 6 (5) */
 261               	.global	Timer3_setInterval
 263               	Timer3_setInterval:
  85:timer3.c      ****      
  86:timer3.c      **** }
  87:timer3.c      **** 
  88:timer3.c      **** uint16_t Timer3_setInterval(uint16_t interval)
  89:timer3.c      **** {
 265               	.LM23:
 266               	/* prologue: frame size=0 */
 267               	/* prologue end (size=0) */
  90:timer3.c      ****       uint32_t temp;
  91:timer3.c      ****       //uint16_t temp1;
  92:timer3.c      ****        temp=TCNT3+interval;
 269               	.LM24:
 270 0088 2091 8800 		lds r18,136
 271 008c 3091 8900 		lds r19,(136)+1
 272 0090 280F      		add r18,r24
 273 0092 391F      		adc r19,r25
 274 0094 4427      		clr r20
 275 0096 5527      		clr r21
  93:timer3.c      **** 	//temp1=temp;
  94:timer3.c      **** 	if (temp>=65535) temp=temp-65535;
 277               	.LM25:
 278 0098 2F3F      		cpi r18,lo8(65535)
 279 009a 8FEF      		ldi r24,hi8(65535)
 280 009c 3807      		cpc r19,r24
 281 009e 80E0      		ldi r24,hlo8(65535)
 282 00a0 4807      		cpc r20,r24
 283 00a2 80E0      		ldi r24,hhi8(65535)
 284 00a4 5807      		cpc r21,r24
 285 00a6 20F0      		brlo .L7
 287               	.LM26:
 288 00a8 2F5F      		subi r18,lo8(-(-65535))
 289 00aa 3F4F      		sbci r19,hi8(-(-65535))
 290 00ac 4040      		sbci r20,hlo8(-(-65535))
 291 00ae 5040      		sbci r21,hhi8(-(-65535))
 292               	.L7:
  95:timer3.c      **** 	return (temp);
  96:timer3.c      **** }...
 294               	.LM27:
 295 00b0 C901      		movw r24,r18
 296               	/* epilogue: frame size=0 */
 297 00b2 0895      		ret
 298               	/* epilogue end (size=1) */
 299               	/* function Timer3_setInterval size 22 (21) */
 302               		.comm payload,2,1
 303               		.comm rssi,1003,1
 304               		.comm isready,1,1
 305               		.comm testnum,1,1
 306               		.comm pagenum,2,1
 307               		.comm prssi,2,1
 308               		.comm test,264,1
 309               		.comm tend,2,1
 310               		.comm OS_queue,16,1
 311               		.comm OS_sched_full,1,1
 312               		.comm OS_sched_free,1,1
 313               		.comm cc2420_bramspi,1,1
 314               		.comm cc2420_rambuf,2,1
 315               		.comm cc2420_ramlen,1,1
 316               		.comm cc2420_ramaddr,2,1
 317               		.comm cc2420fifo_bspi,1,1
 318               		.comm cc2420fifo_txbuf,2,1
 319               		.comm cc2420fifo_txlength,1,1
 320               		.comm cc2420_rxbuf,4,1
 321               		.comm cc2420_rxlength,1,1
 322               		.comm cc2420_rxbuf_now,2,1
 323               		.comm cc2420_rxlength_now,1,1
 324               		.comm cc2420_rxbufuse,1,1
 325               		.comm rfpackernum,1,1
 326               		.comm cc2420_rxflag,1,1
 327               		.comm cc2420_currentparameters,28,1
 328               		.comm demopacket,2,1
 329               		.comm cc2420_stateRadio,1,1
 330               		.comm cc2420_LocalAddr,2,1
 331               		.comm ieee_address,8,1
 332               		.comm SENSOR_DATA_VALUE,20,1
 333               		.comm ADC_INTERRUPT_FLAG,1,1
 334               		.comm flash_busy,1,1
 335               		.comm Timer3_set_flag,1,1
 336               		.comm Timer3_mscale,1,1
 337               		.comm Timer3_nextScale,1,1
 338               		.comm Timer3_minterval,2,1
 376               		.text
 378               	Letext:
 379               	/* File "timer3.c": code   90 = 0x005a (  79), prologues   3, epilogues   8 */
DEFINED SYMBOLS
                            *ABS*:00000000 timer3.c
                            *ABS*:0000003f __SREG__
                            *ABS*:0000003e __SP_H__
                            *ABS*:0000003d __SP_L__
                            *ABS*:00000000 __tmp_reg__
                            *ABS*:00000001 __zero_reg__
C:\DOCUME~1\bt\LOCALS~1\Temp/cca8aaaa.s:122    .text:00000000 Timer3_intDisable
C:\DOCUME~1\bt\LOCALS~1\Temp/cca8aaaa.s:148    .text:00000014 Timer3_fire
C:\DOCUME~1\bt\LOCALS~1\Temp/cca8aaaa.s:163    .text:00000016 Timer3_setIntervalAndScale
C:\DOCUME~1\bt\LOCALS~1\Temp/cca8aaaa.s:243    .text:0000007c Timer3_sethalfsymbol
C:\DOCUME~1\bt\LOCALS~1\Temp/cca8aaaa.s:263    .text:00000088 Timer3_setInterval
                            *COM*:00000002 payload
                            *COM*:000003eb rssi
                            *COM*:00000001 isready
                            *COM*:00000001 testnum
                            *COM*:00000002 pagenum
                            *COM*:00000002 prssi
                            *COM*:00000108 test
                            *COM*:00000002 tend
                            *COM*:00000010 OS_queue
                            *COM*:00000001 OS_sched_full
                            *COM*:00000001 OS_sched_free
                            *COM*:00000001 cc2420_bramspi
                            *COM*:00000002 cc2420_rambuf
                            *COM*:00000001 cc2420_ramlen
                            *COM*:00000002 cc2420_ramaddr
                            *COM*:00000001 cc2420fifo_bspi
                            *COM*:00000002 cc2420fifo_txbuf
                            *COM*:00000001 cc2420fifo_txlength
                            *COM*:00000004 cc2420_rxbuf
                            *COM*:00000001 cc2420_rxlength
                            *COM*:00000002 cc2420_rxbuf_now
                            *COM*:00000001 cc2420_rxlength_now
                            *COM*:00000001 cc2420_rxbufuse
                            *COM*:00000001 rfpackernum
                            *COM*:00000001 cc2420_rxflag
                            *COM*:0000001c cc2420_currentparameters
                            *COM*:00000002 demopacket
                            *COM*:00000001 cc2420_stateRadio
                            *COM*:00000002 cc2420_LocalAddr
                            *COM*:00000008 ieee_address
                            *COM*:00000014 SENSOR_DATA_VALUE
                            *COM*:00000001 ADC_INTERRUPT_FLAG
                            *COM*:00000001 flash_busy
                            *COM*:00000001 Timer3_set_flag
                            *COM*:00000001 Timer3_mscale
                            *COM*:00000001 Timer3_nextScale
                            *COM*:00000002 Timer3_minterval
C:\DOCUME~1\bt\LOCALS~1\Temp/cca8aaaa.s:378    .text:000000b4 Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
os_atomic_start
os_atomic_end

⌨️ 快捷键说明

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