📄 interupter.lst
字号:
508 .LM21:
509 01a2 0E94 0000 call os_atomic_start
74:interupter.c **** {
75:interupter.c **** //++currentTime;
76:interupter.c **** /*if(currentTime==0x3fffffff)
77:interupter.c **** currentTime=0;
78:interupter.c **** else*/
79:interupter.c **** ++currentTime;
511 .LM22:
512 01a6 2091 0000 lds r18,currentTime
513 01aa 3091 0000 lds r19,(currentTime)+1
514 01ae 2F5F subi r18,lo8(-(1))
515 01b0 3F4F sbci r19,hi8(-(1))
516 01b2 3093 0000 sts (currentTime)+1,r19
517 01b6 2093 0000 sts currentTime,r18
80:interupter.c **** }
81:interupter.c **** os_atomic_end(_nesc_atomic); }
519 .LM23:
520 01ba 0E94 0000 call os_atomic_end
521 .LBE6:
522 /* epilogue: frame size=0 */
523 01be FF91 pop r31
524 01c0 EF91 pop r30
525 01c2 BF91 pop r27
526 01c4 AF91 pop r26
527 01c6 9F91 pop r25
528 01c8 8F91 pop r24
529 01ca 7F91 pop r23
530 01cc 6F91 pop r22
531 01ce 5F91 pop r21
532 01d0 4F91 pop r20
533 01d2 3F91 pop r19
534 01d4 2F91 pop r18
535 01d6 0F90 pop __tmp_reg__
536 01d8 0FBE out __SREG__,__tmp_reg__
537 01da 0F90 pop __tmp_reg__
538 01dc 1F90 pop __zero_reg__
539 01de 1895 reti
540 /* epilogue end (size=17) */
541 /* function __vector_14 size 49 (14) */
544 .global __vector_26
546 __vector_26:
82:interupter.c ****
83:interupter.c **** }
84:interupter.c ****
85:interupter.c ****
86:interupter.c ****
87:interupter.c **** //----------------------------------------------------------定时器3 溢出 中断
88:interupter.c **** /*void __attribute((interrupt)) __vector_29(void)
89:interupter.c **** {
90:interupter.c ****
91:interupter.c **** { os_atomic_t _nesc_atomic = os_atomic_start();
92:interupter.c **** {
93:interupter.c ****
94:interupter.c ****
95:interupter.c **** }
96:interupter.c ****
97:interupter.c **** os_atomic_end(_nesc_atomic); }
98:interupter.c ****
99:interupter.c **** }*/
100:interupter.c **** //------------------------------------------------------定时器3 比较a 中断
101:interupter.c **** //uint32_t sys_time_1;
102:interupter.c **** void __attribute((interrupt)) __vector_26(void)
103:interupter.c **** {
548 .LM24:
549 /* prologue: frame size=0 */
550 01e0 7894 sei
551 01e2 1F92 push __zero_reg__
552 01e4 0F92 push __tmp_reg__
553 01e6 0FB6 in __tmp_reg__,__SREG__
554 01e8 0F92 push __tmp_reg__
555 01ea 1124 clr __zero_reg__
556 01ec 2F93 push r18
557 01ee 3F93 push r19
558 01f0 4F93 push r20
559 01f2 5F93 push r21
560 01f4 6F93 push r22
561 01f6 7F93 push r23
562 01f8 8F93 push r24
563 01fa 9F93 push r25
564 01fc AF93 push r26
565 01fe BF93 push r27
566 0200 CF93 push r28
567 0202 EF93 push r30
568 0204 FF93 push r31
569 /* prologue end (size=19) */
570 .LBB7:
104:interupter.c **** uint16_t temp_interval;
105:interupter.c **** { os_atomic_t _nesc_atomic = os_atomic_start();
572 .LM25:
573 0206 0E94 0000 call os_atomic_start
574 020a C82F mov r28,r24
106:interupter.c **** {
107:interupter.c **** //sys_time_1=systime32();
108:interupter.c **** temp_interval=Timer3_getnextInterval();
576 .LM26:
577 020c 0E94 0000 call Timer3_getnextInterval
109:interupter.c **** if(temp_interval!=0)
579 .LM27:
580 0210 0097 sbiw r24,0
581 0212 29F0 breq .L9
110:interupter.c **** OCR3A=temp_interval;
583 .LM28:
584 0214 9093 8700 sts (134)+1,r25
585 0218 8093 8600 sts 134,r24
586 021c 02C0 rjmp .L10
587 .L9:
111:interupter.c **** else
112:interupter.c **** Timer3_intDisable();
589 .LM29:
590 021e 0E94 0000 call Timer3_intDisable
591 .L10:
113:interupter.c **** }
114:interupter.c **** os_atomic_end(_nesc_atomic); }
593 .LM30:
594 0222 8C2F mov r24,r28
595 0224 0E94 0000 call os_atomic_end
596 .LBE7:
115:interupter.c ****
116:interupter.c **** Timer3_fire();
598 .LM31:
599 0228 0E94 0000 call Timer3_fire
600 /* epilogue: frame size=0 */
601 022c FF91 pop r31
602 022e EF91 pop r30
603 0230 CF91 pop r28
604 0232 BF91 pop r27
605 0234 AF91 pop r26
606 0236 9F91 pop r25
607 0238 8F91 pop r24
608 023a 7F91 pop r23
609 023c 6F91 pop r22
610 023e 5F91 pop r21
611 0240 4F91 pop r20
612 0242 3F91 pop r19
613 0244 2F91 pop r18
614 0246 0F90 pop __tmp_reg__
615 0248 0FBE out __SREG__,__tmp_reg__
616 024a 0F90 pop __tmp_reg__
617 024c 1F90 pop __zero_reg__
618 024e 1895 reti
619 /* epilogue end (size=18) */
620 /* function __vector_26 size 56 (19) */
627 .global __vector_15
629 __vector_15:
117:interupter.c **** //printf("\n^^^timer3 interrupt occur^^OCR3A is %04x^^^systime is %08lx\n",OCR3A,sys_time_1);
118:interupter.c **** }
119:interupter.c **** //---------------------------------------------------------定时器0中断
120:interupter.c **** void __attribute((interrupt)) __vector_15(void)
121:interupter.c **** {
631 .LM32:
632 /* prologue: frame size=0 */
633 0250 7894 sei
634 0252 1F92 push __zero_reg__
635 0254 0F92 push __tmp_reg__
636 0256 0FB6 in __tmp_reg__,__SREG__
637 0258 0F92 push __tmp_reg__
638 025a 1124 clr __zero_reg__
639 025c 1F93 push r17
640 025e 2F93 push r18
641 0260 3F93 push r19
642 0262 4F93 push r20
643 0264 5F93 push r21
644 0266 6F93 push r22
645 0268 7F93 push r23
646 026a 8F93 push r24
647 026c 9F93 push r25
648 026e AF93 push r26
649 0270 BF93 push r27
650 0272 EF93 push r30
651 0274 FF93 push r31
652 /* prologue end (size=19) */
653 .LBB8:
122:interupter.c **** { os_atomic_t _nesc_atomic = os_atomic_start();{
655 .LM33:
656 0276 0E94 0000 call os_atomic_start
657 027a 182F mov r17,r24
123:interupter.c ****
124:interupter.c **** OS_post(&KERTimer_Fire);
659 .LM34:
660 027c 80E0 ldi r24,lo8(pm(KERTimer_Fire))
661 027e 90E0 ldi r25,hi8(pm(KERTimer_Fire))
662 0280 0E94 0000 call OS_post
125:interupter.c **** }
126:interupter.c **** os_atomic_end(_nesc_atomic); }
664 .LM35:
665 0284 812F mov r24,r17
666 0286 0E94 0000 call os_atomic_end
667 .LBE8:
668 /* epilogue: frame size=0 */
669 028a FF91 pop r31
670 028c EF91 pop r30
671 028e BF91 pop r27
672 0290 AF91 pop r26
673 0292 9F91 pop r25
674 0294 8F91 pop r24
675 0296 7F91 pop r23
676 0298 6F91 pop r22
677 029a 5F91 pop r21
678 029c 4F91 pop r20
679 029e 3F91 pop r19
680 02a0 2F91 pop r18
681 02a2 1F91 pop r17
682 02a4 0F90 pop __tmp_reg__
683 02a6 0FBE out __SREG__,__tmp_reg__
684 02a8 0F90 pop __tmp_reg__
685 02aa 1F90 pop __zero_reg__
686 02ac 1895 reti
687 /* epilogue end (size=18) */
688 /* function __vector_15 size 47 (10) */
693 .comm OS_queue,16,1
694 .comm OS_sched_full,1,1
695 .comm OS_sched_free,1,1
696 .comm mState,4,1
697 .comm setIntervalFlag,1,1
698 .comm mScale,1,1
699 .comm mInterval,1,1
700 .comm queue_head,1,1
701 .comm queue_tail,1,1
702 .comm queue_size,1,1
703 .comm queue,3,1
704 .comm mTimerList,33,1
705 .comm cc2420_bramspi,1,1
706 .comm cc2420_rambuf,2,1
707 .comm cc2420_ramlen,1,1
708 .comm cc2420_ramaddr,2,1
709 .comm cc2420fifo_bspi,1,1
710 .comm cc2420fifo_txbuf,2,1
711 .comm cc2420fifo_txlength,1,1
712 .comm cc2420_rxbuf,4,1
713 .comm cc2420_rxlength,1,1
714 .comm cc2420_rxbuf_now,2,1
715 .comm cc2420_rxlength_now,1,1
716 .comm cc2420_rxbufuse,1,1
717 .comm rfpackernum,1,1
718 .comm cc2420_rxflag,1,1
719 .comm cc2420_currentparameters,28,1
720 .comm receive_timestamp,4,1
721 .comm send_timestamp,4,1
722 .comm cc2420_stateRadio,1,1
723 .comm cc2420_LocalAddr,2,1
724 .comm ieee_address,8,1
725 .comm GTSDirectionMask,1,1
726 .comm phy_channel_state,1,1
727 .comm rxbuf_flag,1,1
728 .comm ppib,3,1
729 .comm SENSOR_DATA_VALUE,20,1
730 .comm ADC_INTERRUPT_FLAG,1,1
731 .comm currentTime,2,1
732 .comm head_of_systimer_queue,2,1
733 .comm timestamp_H,2,1
775 .text
777 Letext:
778 /* File "interupter.c": code 343 = 0x0157 ( 116), prologues 116, epilogues 111 */
DEFINED SYMBOLS
*ABS*:00000000 interupter.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/cceYaaaa.s:225 .text:00000000 __vector_7
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/cceYaaaa.s:274 .text:00000048 __vector_12
*COM*:00000002 head_of_systimer_queue
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/cceYaaaa.s:416 .text:0000011c __vector_11
*COM*:00000002 timestamp_H
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/cceYaaaa.s:483 .text:0000017e __vector_14
*COM*:00000002 currentTime
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/cceYaaaa.s:546 .text:000001e0 __vector_26
C:\DOCUME~1\ADMINI~2\LOCALS~1\Temp/cceYaaaa.s:629 .text:00000250 __vector_15
*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 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/cceYaaaa.s:777 .text:000002ae Letext
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
cc2420_fifopintr
systime32
os_atomic_start
Timer1_getnextInterval
free
Timer1_OCR_intDisable
os_atomic_end
systimer_task_fire
systime16H
Timer3_getnextInterval
Timer3_intDisable
Timer3_fire
KERTimer_Fire
OS_post
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -