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

📄 kertimer.lst

📁 无线传感器星型网络的节点的基站程序,采用802.15.4协议
💻 LST
📖 第 1 页 / 共 3 页
字号:
 792 02f0 A105      		cpc r26,__zero_reg__
 793 02f2 B105      		cpc r27,__zero_reg__
 794 02f4 09F4      		brne .+2
 795 02f6 56C0      		rjmp .L29
 208:kertimer.c    **** 		  {
 209:kertimer.c    ****                     mTimerList[i].ticksLeft -= (mInterval+1) ; 
 797               	.LM67:
 798 02f8 8091 0000 		lds r24,mInterval
 799 02fc 9927      		clr r25
 800 02fe 0196      		adiw r24,1
 801 0300 AA27      		clr r26
 802 0302 97FD      		sbrc r25,7
 803 0304 A095      		com r26
 804 0306 BA2F      		mov r27,r26
 805 0308 F601      		movw r30,r12
 806 030a 2581      		ldd r18,Z+5
 807 030c 3681      		ldd r19,Z+6
 808 030e 4781      		ldd r20,Z+7
 809 0310 5085      		ldd r21,Z+8
 810 0312 281B      		sub r18,r24
 811 0314 390B      		sbc r19,r25
 812 0316 4A0B      		sbc r20,r26
 813 0318 5B0B      		sbc r21,r27
 814 031a 2583      		std Z+5,r18
 815 031c 3683      		std Z+6,r19
 816 031e 4783      		std Z+7,r20
 817 0320 5087      		std Z+8,r21
 210:kertimer.c    ****                     if (mTimerList[i].ticksLeft<=2) 
 819               	.LM68:
 820 0322 2330      		cpi r18,lo8(3)
 821 0324 3105      		cpc r19,__zero_reg__
 822 0326 4105      		cpc r20,__zero_reg__
 823 0328 5105      		cpc r21,__zero_reg__
 824 032a E4F5      		brge .L29
 211:kertimer.c    **** 					{
 212:kertimer.c    ****                        			if (mTimerList[i].type==KERTIMER_REPEAT) 
 826               	.LM69:
 827 032c 8081      		ld r24,Z
 828 032e 8823      		tst r24
 829 0330 69F4      		brne .L32
 213:kertimer.c    **** 									{
 214:kertimer.c    ****                             						mTimerList[i].ticksLeft += mTimerList[i].ticks;
 831               	.LM70:
 832 0332 8181      		ldd r24,Z+1
 833 0334 9281      		ldd r25,Z+2
 834 0336 A381      		ldd r26,Z+3
 835 0338 B481      		ldd r27,Z+4
 836 033a 280F      		add r18,r24
 837 033c 391F      		adc r19,r25
 838 033e 4A1F      		adc r20,r26
 839 0340 5B1F      		adc r21,r27
 840 0342 2583      		std Z+5,r18
 841 0344 3683      		std Z+6,r19
 842 0346 4783      		std Z+7,r20
 843 0348 5087      		std Z+8,r21
 844 034a 12C0      		rjmp .L33
 845               	.L32:
 215:kertimer.c    ****                        						 } 
 216:kertimer.c    **** 						else 
 217:kertimer.c    **** 									{// one shot timer 
 218:kertimer.c    ****                            					 		mState &=~(0x1L<<i); 
 847               	.LM71:
 848 034c D801      		movw r26,r16
 849 034e C701      		movw r24,r14
 850 0350 8095      		com r24
 851 0352 9095      		com r25
 852 0354 A095      		com r26
 853 0356 B095      		com r27
 854 0358 4822      		and r4,r24
 855 035a 5922      		and r5,r25
 856 035c 6A22      		and r6,r26
 857 035e 7B22      		and r7,r27
 858 0360 4092 0000 		sts mState,r4
 859 0364 5092 0000 		sts (mState)+1,r5
 860 0368 6092 0000 		sts (mState)+2,r6
 861 036c 7092 0000 		sts (mState)+3,r7
 862               	.L33:
 863               	.LBB11:
 864               	.LBB12:
 866               	.LM72:
 867 0370 8091 0000 		lds r24,queue_tail
 868 0374 8230      		cpi r24,lo8(2)
 869 0376 19F4      		brne .L34
 871               	.LM73:
 872 0378 8FEF      		ldi r24,lo8(-1)
 873 037a 8093 0000 		sts queue_tail,r24
 874               	.L34:
 876               	.LM74:
 877 037e 9091 0000 		lds r25,queue_tail
 878 0382 9F5F      		subi r25,lo8(-(1))
 879 0384 9093 0000 		sts queue_tail,r25
 881               	.LM75:
 882 0388 8091 0000 		lds r24,queue_size
 883 038c 8F5F      		subi r24,lo8(-(1))
 884 038e 8093 0000 		sts queue_size,r24
 886               	.LM76:
 887 0392 E92F      		mov r30,r25
 888 0394 FF27      		clr r31
 889 0396 E050      		subi r30,lo8(-(queue))
 890 0398 F040      		sbci r31,hi8(-(queue))
 891 039a 9082      		st Z,r9
 892               	.LBE12:
 893               	.LBE11:
 219:kertimer.c    ****                         						}
 220:kertimer.c    ****                        			 enqueue(i);
 221:kertimer.c    **** 			  			 OS_post (&KERTimer_fired);
 895               	.LM77:
 896 039c 80E0      		ldi r24,lo8(pm(KERTimer_fired))
 897 039e 90E0      		ldi r25,hi8(pm(KERTimer_fired))
 898 03a0 0E94 0000 		call OS_post
 899               	.L29:
 901               	.LM78:
 902 03a4 9394      		inc r9
 903 03a6 0894      		sec
 904 03a8 A11C      		adc r10,__zero_reg__
 905 03aa B11C      		adc r11,__zero_reg__
 906 03ac 8BE0      		ldi r24,lo8(11)
 907 03ae 90E0      		ldi r25,hi8(11)
 908 03b0 C80E      		add r12,r24
 909 03b2 D91E      		adc r13,r25
 910 03b4 92E0      		ldi r25,lo8(2)
 911 03b6 9915      		cp r25,r9
 912 03b8 08F0      		brlo .+2
 913 03ba 7ECF      		rjmp .L36
 914               	.L26:
 915               	.LBB13:
 916               	.LBB14:
 918               	.LM79:
 919 03bc 46EE      		ldi r20,lo8(-26)
 920 03be E42E      		mov r14,r20
 922               	.LM80:
 923 03c0 4090 0000 		lds r4,mState
 924 03c4 5090 0000 		lds r5,(mState)+1
 925 03c8 6090 0000 		lds r6,(mState)+2
 926 03cc 7090 0000 		lds r7,(mState)+3
 927 03d0 4114      		cp r4,__zero_reg__
 928 03d2 5104      		cpc r5,__zero_reg__
 929 03d4 6104      		cpc r6,__zero_reg__
 930 03d6 7104      		cpc r7,__zero_reg__
 931 03d8 99F1      		breq .L37
 932 03da 31E0      		ldi r19,lo8(1)
 933 03dc A32E      		mov r10,r19
 934 03de B12C      		mov r11,__zero_reg__
 935 03e0 C12C      		mov r12,__zero_reg__
 936 03e2 D12C      		mov r13,__zero_reg__
 937 03e4 60E0      		ldi r22,lo8(mTimerList)
 938 03e6 70E0      		ldi r23,hi8(mTimerList)
 939 03e8 00E0      		ldi r16,lo8(0)
 940 03ea 10E0      		ldi r17,hi8(0)
 941 03ec 22E0      		ldi r18,lo8(2)
 942 03ee F22E      		mov r15,r18
 943               	.L42:
 945               	.LM81:
 946 03f0 D601      		movw r26,r12
 947 03f2 C501      		movw r24,r10
 948 03f4 002E      		mov r0,r16
 949 03f6 04C0      		rjmp 2f
 950 03f8 880F      	1:	lsl r24
 951 03fa 991F      		rol r25
 952 03fc AA1F      		rol r26
 953 03fe BB1F      		rol r27
 954 0400 0A94      	2:	dec r0
 955 0402 D2F7      		brpl 1b
 956 0404 8421      		and r24,r4
 957 0406 9521      		and r25,r5
 958 0408 A621      		and r26,r6
 959 040a B721      		and r27,r7
 960 040c 0097      		sbiw r24,0
 961 040e A105      		cpc r26,__zero_reg__
 962 0410 B105      		cpc r27,__zero_reg__
 963 0412 79F0      		breq .L40
 964 0414 2E2D      		mov r18,r14
 965 0416 3327      		clr r19
 966 0418 4427      		clr r20
 967 041a 5527      		clr r21
 968 041c FB01      		movw r30,r22
 969 041e 8581      		ldd r24,Z+5
 970 0420 9681      		ldd r25,Z+6
 971 0422 A781      		ldd r26,Z+7
 972 0424 B085      		ldd r27,Z+8
 973 0426 8217      		cp r24,r18
 974 0428 9307      		cpc r25,r19
 975 042a A407      		cpc r26,r20
 976 042c B507      		cpc r27,r21
 977 042e 0CF4      		brge .L40
 979               	.LM82:
 980 0430 E580      		ldd r14,Z+5
 981               	.L40:
 983               	.LM83:
 984 0432 FA94      		dec r15
 985 0434 0F5F      		subi r16,lo8(-(1))
 986 0436 1F4F      		sbci r17,hi8(-(1))
 987 0438 655F      		subi r22,lo8(-(11))
 988 043a 7F4F      		sbci r23,hi8(-(11))
 989 043c F7FE      		sbrs r15,7
 990 043e D8CF      		rjmp .L42
 991               	.L37:
 992               	.LBB15:
 994               	.LM84:
 995 0440 0E94 0000 		call os_atomic_start
 996 0444 182F      		mov r17,r24
 998               	.LM85:
 999 0446 E092 0000 		sts mInterval,r14
 1001               	.LM86:
 1002 044a 8E2D      		mov r24,r14
 1003 044c 0E94 0000 		call timer0_setInterval
 1005               	.LM87:
 1006 0450 1092 0000 		sts setIntervalFlag,__zero_reg__
 1008               	.LM88:
 1009 0454 812F      		mov r24,r17
 1010 0456 0E94 0000 		call os_atomic_end
 1011               	.LBE15:
 1012               	.LBE14:
 1013               	.LBE13:
 1014               	/* epilogue: frame size=0 */
 1015 045a DF91      		pop r29
 1016 045c CF91      		pop r28
 1017 045e 1F91      		pop r17
 1018 0460 0F91      		pop r16
 1019 0462 FF90      		pop r15
 1020 0464 EF90      		pop r14
 1021 0466 DF90      		pop r13
 1022 0468 CF90      		pop r12
 1023 046a BF90      		pop r11
 1024 046c AF90      		pop r10
 1025 046e 9F90      		pop r9
 1026 0470 7F90      		pop r7
 1027 0472 6F90      		pop r6
 1028 0474 5F90      		pop r5
 1029 0476 4F90      		pop r4
 1030 0478 0895      		ret
 1031               	/* epilogue end (size=16) */
 1032               	/* function KERTimer_Fire size 263 (232) */
 1046               		.comm OS_queue,16,1
 1047               		.comm OS_sched_full,1,1
 1048               		.comm OS_sched_free,1,1
 1049               		.comm currentTime,2,1
 1050               		.comm head_of_systimer_queue,2,1
 1051               		.comm timestamp_H,2,1
 1052               		.comm cc2420_bramspi,1,1
 1053               		.comm cc2420_rambuf,2,1
 1054               		.comm cc2420_ramlen,1,1
 1055               		.comm cc2420_ramaddr,2,1
 1056               		.comm cc2420fifo_bspi,1,1
 1057               		.comm cc2420fifo_txbuf,2,1
 1058               		.comm cc2420fifo_txlength,1,1
 1059               		.comm cc2420_rxbuf,4,1
 1060               		.comm cc2420_rxlength,1,1
 1061               		.comm cc2420_rxbuf_now,2,1
 1062               		.comm cc2420_rxlength_now,1,1
 1063               		.comm cc2420_rxbufuse,1,1
 1064               		.comm rfpackernum,1,1
 1065               		.comm cc2420_rxflag,1,1
 1066               		.comm cc2420_currentparameters,28,1
 1067               		.comm receive_timestamp,4,1
 1068               		.comm send_timestamp,4,1
 1069               		.comm cc2420_stateRadio,1,1
 1070               		.comm cc2420_LocalAddr,2,1
 1071               		.comm ieee_address,8,1
 1072               		.comm GTSDirectionMask,1,1
 1073               		.comm phy_channel_state,1,1
 1074               		.comm rxbuf_flag,1,1
 1075               		.comm ppib,3,1
 1076               		.comm SENSOR_DATA_VALUE,20,1
 1077               		.comm ADC_INTERRUPT_FLAG,1,1
 1078               		.comm mState,4,1
 1079               		.comm setIntervalFlag,1,1
 1080               		.comm mScale,1,1
 1081               		.comm mInterval,1,1
 1082               		.comm queue_head,1,1
 1083               		.comm queue_tail,1,1
 1084               		.comm queue_size,1,1
 1085               		.comm queue,3,1
 1086               		.comm mTimerList,33,1
 1128               		.text
 1130               	Letext:
 1131               	/* File "kertimer.c": code  575 = 0x023f ( 509), prologues  29, epilogues  37 */
DEFINED SYMBOLS
                            *ABS*:00000000 kertimer.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/ccYRaaaa.s:223    .text:00000000 timer0_setInterval
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccYRaaaa.s:273    .text:0000002a timer0_getInterval
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccYRaaaa.s:289    .text:00000032 timer0_hardware_get_counter
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccYRaaaa.s:308    .text:00000038 kertimer_init
                            *COM*:00000004 mState
                            *COM*:00000001 setIntervalFlag
                            *COM*:00000001 queue_tail
                            *COM*:00000001 queue_head
                            *COM*:00000001 queue_size
                            *COM*:00000001 mScale
                            *COM*:00000001 mInterval
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccYRaaaa.s:397    .text:00000094 kertimer_start
                            *COM*:00000021 mTimerList
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccYRaaaa.s:554    .text:0000017a kertimer_stop
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccYRaaaa.s:638    .text:0000020a KERTimer_fired
                            *COM*:00000003 queue
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccYRaaaa.s:721    .text:0000026c KERTimer_Fire
                            *COM*:00000010 OS_queue
                            *COM*:00000001 OS_sched_full
                            *COM*:00000001 OS_sched_free
                            *COM*:00000002 currentTime
                            *COM*:00000002 head_of_systimer_queue
                            *COM*:00000002 timestamp_H
                            *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 phy_channel_state
                            *COM*:00000001 rxbuf_flag
                            *COM*:00000003 ppib
                            *COM*:00000014 SENSOR_DATA_VALUE
                            *COM*:00000001 ADC_INTERRUPT_FLAG
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/ccYRaaaa.s:1130   .text:0000047a Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
os_atomic_start
os_atomic_end
OS_post

⌨️ 快捷键说明

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