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

📄 systime.lst

📁 无线传感器星型网络的节点的基站程序,采用802.15.4协议
💻 LST
📖 第 1 页 / 共 4 页
字号:
 1038 0362 0E94 0000 		call PLME_SET_TRX_STATE_request
 351:systime.c     **** 				Leds_greenOff();
 352:systime.c     **** 				Leds_yellowOff();
 1040               	.LM111:
 1041 0366 0E94 0000 		call Leds_greenOff
 353:systime.c     **** 				//Leds_redOff();
 1043               	.LM112:
 1044 036a 0E94 0000 		call Leds_yellowOff
 354:systime.c     **** 				if((Is_received_beacon==FALSE)&&(!IS_COORDINATOR))
 355:systime.c     **** 					{
 356:systime.c     **** 					   OS_post(synrequest_task);
 357:systime.c     **** 					   //mac_current_state=MAC_STATE_SYNING;
 358:systime.c     **** 					   //mac_current_state_saved=MAC_STATE_SYNING;
 359:systime.c     **** 					}
 360:systime.c     **** 				printf("\n***system sleeping***\n");
 361:systime.c     **** 				break;
 1046               	.LM113:
 1047 036e 80E0      		ldi r24,lo8(.LC2)
 1048 0370 90E0      		ldi r25,hi8(.LC2)
 1049               	.L60:
 1050 0372 0E94 0000 		call puts
 362:systime.c     **** 			case(SYN_WAITTING_FOR_BEACON):
 1052               	.LM114:
 1053 0376 0895      		ret
 1054               	.L52:
 363:systime.c     **** 				printf("\nloss syn\n");
 364:systime.c     ****                             if(!IS_NETWORK_FORMED)
 1056               	.LM115:
 1057 0378 80E0      		ldi r24,lo8(.LC3)
 1058 037a 90E0      		ldi r25,hi8(.LC3)
 1059 037c 0E94 0000 		call puts
 365:systime.c     **** 					mac_current_state=MAC_STATE_ENERGY_SCAN_FINISHED;
 1061               	.LM116:
 1062 0380 8091 0000 		lds r24,IS_NETWORK_FORMED
 1063 0384 8823      		tst r24
 1064 0386 21F4      		brne .L53
 366:systime.c     **** 				else  			
 1066               	.LM117:
 1067 0388 86E0      		ldi r24,lo8(6)
 1068 038a 8093 0000 		sts mac_current_state,r24
 1069 038e 0895      		ret
 1070               	.L53:
 367:systime.c     **** 				{
 368:systime.c     **** 				       loss_sync_number++;
 369:systime.c     **** 					if(loss_sync_number==10)
 1072               	.LM118:
 1073 0390 8091 0000 		lds r24,loss_sync_number
 1074 0394 8F5F      		subi r24,lo8(-(1))
 1075 0396 8093 0000 		sts loss_sync_number,r24
 370:systime.c     **** 						{
 1077               	.LM119:
 1078 039a 8A30      		cpi r24,lo8(10)
 1079 039c 19F4      		brne .L55
 371:systime.c     **** 						  //printf("\ncannot syn to the network\n");	
 372:systime.c     **** 						    //向网络层报告同步失效信息	
 373:systime.c     **** 						    //mlmeSyncLossIndication(MAC_ENUM lossReason);
 374:systime.c     **** 				                  loss_sync_number=0;
 375:systime.c     **** 						}
 1081               	.LM120:
 1082 039e 1092 0000 		sts loss_sync_number,__zero_reg__
 1083 03a2 0895      		ret
 1084               	.L55:
 376:systime.c     **** 					else	
 377:systime.c     **** 					mlmeSyncRequest(ppib.phyCurrentChanel,TRUE);   
 378:systime.c     **** 				}
 1086               	.LM121:
 1087 03a4 61E0      		ldi r22,lo8(1)
 1088 03a6 8091 0000 		lds r24,ppib
 1089 03aa 0E94 0000 		call mlmeSyncRequest
 379:systime.c     **** 			        /*
 380:systime.c     **** 				loss_sync_number++;
 381:systime.c     **** 				if(loss_sync_number==10)
 382:systime.c     **** 				   //--------------------------------------
 383:systime.c     **** 				   //-------------加代码---------------
 384:systime.c     **** 					{
 385:systime.c     **** 				 //printf("\ncannot syn to the network\n");	
 386:systime.c     **** 				   loss_sync_number=0;
 387:systime.c     **** 					}
 388:systime.c     **** 				else
 389:systime.c     **** 					{
 390:systime.c     **** 				   //OS_post(synrequest_task);
 391:systime.c     **** 				   mac_current_state=MAC_STATE_ENERGY_SCAN_FINISHED;
 392:systime.c     **** 				   //mlmeScanRequest(ACTIVE_PASSIVE_SCAN, 0x00000008, 6);
 393:systime.c     **** 				   Is_received_beacon=FALSE;
 394:systime.c     **** 				   //mac_current_state=MAC_STATE_SYNING;
 395:systime.c     **** 					}*/
 396:systime.c     **** 				break;
 397:systime.c     **** 			case(CSMA_TIMING):
 1091               	.LM122:
 1092 03ae 0895      		ret
 1093               	.L57:
 398:systime.c     **** 				//test_variable++;
 399:systime.c     **** 				
 400:systime.c     **** 				OS_post(CSMA_CA_DOING);
 401:systime.c     **** 				break;
 1095               	.LM123:
 1096 03b0 80E0      		ldi r24,lo8(pm(CSMA_CA_DOING))
 1097 03b2 90E0      		ldi r25,hi8(pm(CSMA_CA_DOING))
 1098 03b4 0E94 0000 		call OS_post
 402:systime.c     **** 			default:
 1100               	.LM124:
 1101 03b8 0895      		ret
 1102               	.L58:
 403:systime.c     **** 				//Leds_greenToggle();
 404:systime.c     **** 				error("wrong systime reason!\n");
 405:systime.c     **** 		}
 1104               	.LM125:
 1105 03ba 80E0      		ldi r24,lo8(.LC4)
 1106 03bc 90E0      		ldi r25,hi8(.LC4)
 1107 03be 0E94 0000 		call error
 1108               	.L45:
 1109 03c2 0895      		ret
 1110               	/* epilogue: frame size=0 */
 1111 03c4 0895      		ret
 1112               	/* epilogue end (size=1) */
 1113               	/* function systimer_task_fire size 96 (95) */
 1116               	.global	get_timestamp16H
 1118               	get_timestamp16H:
 406:systime.c     **** 	
 407:systime.c     **** }
 408:systime.c     **** 
 409:systime.c     **** 
 410:systime.c     **** //---------------------------------------------------------------------------
 411:systime.c     **** //   need some codes for  timestamp,added by zhouqiang in 2005.12.04
 412:systime.c     **** //---------------------------------------------------------------------------
 413:systime.c     **** uint16_t get_timestamp16H(void)
 414:systime.c     **** {
 415:systime.c     **** 	return timestamp_H;
 1120               	.LM126:
 1121               	/* prologue: frame size=0 */
 1122               	/* prologue end (size=0) */
 416:systime.c     **** }
 1124               	.LM127:
 1125 03c6 8091 0000 		lds r24,timestamp_H
 1126 03ca 9091 0000 		lds r25,(timestamp_H)+1
 1127               	/* epilogue: frame size=0 */
 1128 03ce 0895      		ret
 1129               	/* epilogue end (size=1) */
 1130               	/* function get_timestamp16H size 5 (4) */
 1133               	.global	get_timestamp16L
 1135               	get_timestamp16L:
 417:systime.c     **** uint16_t get_timestamp16L(void)
 418:systime.c     **** {
 419:systime.c     **** 	return ICR1;
 1137               	.LM128:
 1138               	/* prologue: frame size=0 */
 1139               	/* prologue end (size=0) */
 420:systime.c     **** }
 1141               	.LM129:
 1142 03d0 86B5      		in r24,70-0x20
 1143 03d2 97B5      		in r25,(70)+1-0x20
 1144               	/* epilogue: frame size=0 */
 1145 03d4 0895      		ret
 1146               	/* epilogue end (size=1) */
 1147               	/* function get_timestamp16L size 3 (2) */
 1150               	.global	get_timestamp32
 1152               	get_timestamp32:
 421:systime.c     **** uint32_t get_timestamp32(void)
 422:systime.c     **** {
 423:systime.c     **** 	register union time_u time;
 1154               	.LM130:
 1155               	/* prologue: frame size=0 */
 1156 03d6 EF92      		push r14
 1157 03d8 FF92      		push r15
 1158 03da 0F93      		push r16
 1159 03dc 1F93      		push r17
 1160               	/* prologue end (size=4) */
 1161               	.LBB7:
 424:systime.c     **** 	{ os_atomic_t _nesc_atomic = os_atomic_start();
 425:systime.c     **** 	{
 1163               	.LM131:
 1164 03de 0E94 0000 		call os_atomic_start
 426:systime.c     **** 		time.low =  ICR1;
 427:systime.c     **** 		time.high = timestamp_H;
 1166               	.LM132:
 1167 03e2 26B5      		in r18,70-0x20
 1168 03e4 37B5      		in r19,(70)+1-0x20
 1169 03e6 7901      		movw r14,r18
 428:systime.c     **** 	}
 1171               	.LM133:
 1172 03e8 2091 0000 		lds r18,timestamp_H
 1173 03ec 3091 0000 		lds r19,(timestamp_H)+1
 1174 03f0 8901      		movw r16,r18
 429:systime.c     **** 	os_atomic_end(_nesc_atomic); }
 430:systime.c     **** 
 1176               	.LM134:
 1177 03f2 0E94 0000 		call os_atomic_end
 1178               	.LBE7:
 431:systime.c     **** 	return time.full;
 432:systime.c     **** }
 433:systime.c     **** 
 1180               	.LM135:
 1181 03f6 C801      		movw r24,r16
 1182 03f8 B701      		movw r22,r14
 1183               	/* epilogue: frame size=0 */
 1184 03fa 1F91      		pop r17
 1185 03fc 0F91      		pop r16
 1186 03fe FF90      		pop r15
 1187 0400 EF90      		pop r14
 1188 0402 0895      		ret
 1189               	/* epilogue end (size=5) */
 1190               	/* function get_timestamp32 size 23 (14) */
 1193               		.comm OS_queue,16,1
 1194               		.comm OS_sched_full,1,1
 1195               		.comm OS_sched_free,1,1
 1196               		.comm mState,4,1
 1197               		.comm setIntervalFlag,1,1
 1198               		.comm mScale,1,1
 1199               		.comm mInterval,1,1
 1200               		.comm queue_head,1,1
 1201               		.comm queue_tail,1,1
 1202               		.comm queue_size,1,1
 1203               		.comm queue,3,1
 1204               		.comm mTimerList,33,1
 1205               		.comm cc2420_bramspi,1,1
 1206               		.comm cc2420_rambuf,2,1
 1207               		.comm cc2420_ramlen,1,1
 1208               		.comm cc2420_ramaddr,2,1
 1209               		.comm cc2420fifo_bspi,1,1
 1210               		.comm cc2420fifo_txbuf,2,1
 1211               		.comm cc2420fifo_txlength,1,1
 1212               		.comm cc2420_rxbuf,4,1
 1213               		.comm cc2420_rxlength,1,1
 1214               		.comm cc2420_rxbuf_now,2,1
 1215               		.comm cc2420_rxlength_now,1,1
 1216               		.comm cc2420_rxbufuse,1,1
 1217               		.comm rfpackernum,1,1
 1218               		.comm cc2420_rxflag,1,1
 1219               		.comm cc2420_currentparameters,28,1
 1220               		.comm receive_timestamp,4,1
 1221               		.comm send_timestamp,4,1
 1222               		.comm cc2420_stateRadio,1,1
 1223               		.comm cc2420_LocalAddr,2,1
 1224               		.comm ieee_address,8,1
 1225               		.comm GTSDirectionMask,1,1
 1226               		.comm phy_channel_state,1,1
 1227               		.comm rxbuf_flag,1,1
 1228               		.comm ppib,3,1
 1229               		.comm SENSOR_DATA_VALUE,20,1
 1230               		.comm ADC_INTERRUPT_FLAG,1,1
 1231               		.comm currentTime,2,1
 1232               		.comm head_of_systimer_queue,2,1
 1233               		.comm timestamp_H,2,1
 1275               		.text
 1277               	Letext:
 1278               	/* File "systime.c": code  516 = 0x0204 ( 419), prologues  40, epilogues  57 */
DEFINED SYMBOLS
                            *ABS*:00000000 systime.c
                            *ABS*:0000003f __SREG__
                            *ABS*:0000003e __SP_H__
                            *ABS*:0000003d __SP_L__
                            *ABS*:00000000 __tmp_reg__
                            *ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:224    .text:00000000 systime16L
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:241    .text:00000006 systime16H
                            *COM*:00000002 currentTime
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:258    .text:00000010 systime32
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:320    .text:0000004e systime_init
                            *COM*:00000002 head_of_systimer_queue
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:373    .text:0000007a systime_stop
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:389    .text:0000007e Timer1_OCR_intDisable
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:416    .text:0000008e Timer1_setInterval
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:461    .text:000000b6 Timer1_sethalfsymbol
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:478    .text:000000bc Timer1_acquireInterval
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:519    .text:000000ee Timer1_adjustInterval
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:553    .text:0000010a Timer1_getnextInterval
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:593    .text:00000128 systimer_start_task
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:867    .text:000002aa systimer_stop_task
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:972    .text:0000030a systimer_task_fire
                            *COM*:00000001 phy_channel_state
                            *COM*:00000003 ppib
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:1118   .text:000003c6 get_timestamp16H
                            *COM*:00000002 timestamp_H
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:1135   .text:000003d0 get_timestamp16L
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:1152   .text:000003d6 get_timestamp32
                            *COM*:00000010 OS_queue
                            *COM*:00000001 OS_sched_full
                            *COM*:00000001 OS_sched_free
                            *COM*:00000004 mState
                            *COM*:00000001 setIntervalFlag
                            *COM*:00000001 mScale
                            *COM*:00000001 mInterval
                            *COM*:00000001 queue_head
                            *COM*:00000001 queue_tail
                            *COM*:00000001 queue_size
                            *COM*:00000003 queue
                            *COM*:00000021 mTimerList
                            *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*:00000004 receive_timestamp
                            *COM*:00000004 send_timestamp
                            *COM*:00000001 cc2420_stateRadio
                            *COM*:00000002 cc2420_LocalAddr
                            *COM*:00000008 ieee_address
                            *COM*:00000001 GTSDirectionMask
                            *COM*:00000001 rxbuf_flag
                            *COM*:00000014 SENSOR_DATA_VALUE
                            *COM*:00000001 ADC_INTERRUPT_FLAG
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccCQaaaa.s:1277   .text:00000404 Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
os_atomic_start
os_atomic_end
malloc
Leds_redToggle
free
Leds_yellowOn
Leds_greenOn
beacon_frame_send
mac_current_state
mac_current_state_saved
PLME_SET_TRX_STATE_request
Leds_greenOff
Leds_yellowOff
puts
IS_NETWORK_FORMED
loss_sync_number
mlmeSyncRequest
CSMA_CA_DOING
OS_post
error

⌨️ 快捷键说明

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