📄 app.c
字号:
* (volatile uint8_t *)0xB6 = * (volatile uint8_t *)0x81 = * (volatile uint8_t *)0xB1 = 0; * (volatile uint8_t *)0xB2 = 0; * (volatile uint16_t *)0x84 = 0; * (volatile uint8_t *)(0x16 + 0x20) = * (volatile uint8_t *)(0x17 + 0x20) = 0xff; while (* (volatile uint8_t *)0xB6 & (((1 << 4) | (1 << 2)) | (1 << 0))) ; } return SUCCESS;}# 51 "/opt/tinyos-2.x/tos/interfaces/Init.nc"inline static error_t PlatformP$MeasureClock$init(void ){#line 51 unsigned char result;#line 51#line 51 result = MeasureClockC$Init$init();#line 51#line 51 return result;#line 51}#line 51# 49 "/opt/tinyos-2.x/tos/platforms/mica/PlatformP.nc"static inline error_t PlatformP$Init$init(void ){ error_t ok; ok = PlatformP$MeasureClock$init(); ok = ecombine(ok, PlatformP$MoteInit$init()); if (ok != SUCCESS) { return ok; } PlatformP$power_init(); return SUCCESS;}# 51 "/opt/tinyos-2.x/tos/interfaces/Init.nc"inline static error_t RealMainP$PlatformInit$init(void ){#line 51 unsigned char result;#line 51#line 51 result = PlatformP$Init$init();#line 51#line 51 return result;#line 51}#line 51# 54 "/opt/tinyos-2.x/tos/interfaces/Scheduler.nc"inline static bool RealMainP$Scheduler$runNextTask(void ){#line 54 unsigned char result;#line 54#line 54 result = SchedulerBasicP$Scheduler$runNextTask();#line 54#line 54 return result;#line 54}#line 54# 134 "/opt/tinyos-2.x/tos/chips/atm1281/timer/HplAtm1281Timer2AsyncP.nc"static inline uint8_t HplAtm1281Timer2AsyncP$TimerCtrl$getInterruptFlag(void )#line 134{ return * (volatile uint8_t *)(0x17 + 0x20);}# 69 "/opt/tinyos-2.x/tos/chips/atm1281/timer/HplAtm128TimerCtrl8.nc"inline static uint8_t /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$TimerCtrl$getInterruptFlag(void ){#line 69 unsigned char result;#line 69#line 69 result = HplAtm1281Timer2AsyncP$TimerCtrl$getInterruptFlag();#line 69#line 69 return result;#line 69}#line 69# 231 "/opt/tinyos-2.x/tos/chips/atm1281/timer/Atm1281AlarmAsyncP.nc"static inline void /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Alarm$stop(void )#line 231{ { __nesc_atomic_t __nesc_atomic = __nesc_atomic_start();#line 232 /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$set = FALSE;#line 232 __nesc_atomic_end(__nesc_atomic); }}# 62 "/opt/tinyos-2.x/tos/lib/timer/Alarm.nc"inline static void /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Alarm$stop(void ){#line 62 /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Alarm$stop();#line 62}#line 62# 60 "/opt/tinyos-2.x/tos/lib/timer/AlarmToTimerC.nc"static inline void /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Timer$stop(void ){#line 61 /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Alarm$stop();}# 67 "/opt/tinyos-2.x/tos/lib/timer/Timer.nc"inline static void /*HilTimerMilliC.VirtualizeTimerC*/VirtualizeTimerC$0$TimerFrom$stop(void ){#line 67 /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Timer$stop();#line 67}#line 67# 51 "/opt/tinyos-2.x/tos/platforms/imote/chips/wdt/HPLWdtP.nc"static inline void HPLWdtP$Timer$fired(void ){ if (HPLWdtP$increment != 0) { { __nesc_atomic_t __nesc_atomic = __nesc_atomic_start(); { HPLWdtP$remaining = HPLWdtP$remaining - HPLWdtP$WDT_LATENCY; }#line 58 __nesc_atomic_end(__nesc_atomic); } } if (HPLWdtP$remaining > 0) { __asm volatile ("wdr"); }}# 56 "/opt/tinyos-2.x/tos/interfaces/TaskBasic.nc"inline static error_t TestWDTC$crashMote$postTask(void ){#line 56 unsigned char result;#line 56#line 56 result = SchedulerBasicP$TaskBasic$postTask(TestWDTC$crashMote);#line 56#line 56 return result;#line 56}#line 56# 78 "/opt/tinyos-2.x/tos/platforms/imote/chips/wdt/HPLWdtP.nc"static inline void HPLWdtP$WDT$reset(void ){ { __nesc_atomic_t __nesc_atomic = __nesc_atomic_start(); { HPLWdtP$remaining = HPLWdtP$increment; }#line 83 __nesc_atomic_end(__nesc_atomic); }}# 8 "/opt/tinyos-2.x/tos/platforms/imote/chips/wdt/WDT.nc"inline static void TestWDTC$WDT$reset(void ){#line 8 HPLWdtP$WDT$reset();#line 8}#line 8# 66 "/opt/tinyos-2.x/tos/platforms/imote/chips/wdt/HPLWdtP.nc"static inline error_t HPLWdtP$WDT$start(int32_t interval){ if (HPLWdtP$increment == 0) { HPLWdtP$increment = interval; HPLWdtP$remaining = HPLWdtP$increment; return SUCCESS; } return FAIL;}# 5 "/opt/tinyos-2.x/tos/platforms/imote/chips/wdt/WDT.nc"inline static error_t TestWDTC$WDT$start(int32_t interval){#line 5 unsigned char result;#line 5#line 5 result = HPLWdtP$WDT$start(interval);#line 5#line 5 return result;#line 5}#line 5# 48 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static inline void /*HplAtm128GeneralIOC.PortA.Bit1*/HplAtm128GeneralIOPinP$1$IO$toggle(void )#line 48{#line 48 { __nesc_atomic_t __nesc_atomic = __nesc_atomic_start();#line 48 * (volatile uint8_t * )34U ^= 1 << 1;#line 48 __nesc_atomic_end(__nesc_atomic); }}# 31 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void LedsP$Led1$toggle(void ){#line 31 /*HplAtm128GeneralIOC.PortA.Bit1*/HplAtm128GeneralIOPinP$1$IO$toggle();#line 31}#line 31# 88 "/opt/tinyos-2.x/tos/system/LedsP.nc"static inline void LedsP$Leds$led1Toggle(void )#line 88{ LedsP$Led1$toggle(); ;#line 90 ;}# 72 "/opt/tinyos-2.x/tos/interfaces/Leds.nc"inline static void TestWDTC$Leds$led1Toggle(void ){#line 72 LedsP$Leds$led1Toggle();#line 72}#line 72# 64 "TestWDTC.nc"static inline void TestWDTC$Timer$fired(void ){ TestWDTC$Leds$led1Toggle(); if (TestWDTC$firstTime) { TestWDTC$firstTime = 0; TestWDTC$WDT$start(500); } else { TestWDTC$WDT$reset(); } if (TestWDTC$mode == 2) { TestWDTC$crashMote$postTask(); }}# 193 "/opt/tinyos-2.x/tos/lib/timer/VirtualizeTimerC.nc"static inline void /*HilTimerMilliC.VirtualizeTimerC*/VirtualizeTimerC$0$Timer$default$fired(uint8_t num){}# 72 "/opt/tinyos-2.x/tos/lib/timer/Timer.nc"inline static void /*HilTimerMilliC.VirtualizeTimerC*/VirtualizeTimerC$0$Timer$fired(uint8_t arg_0x12a3d70){#line 72 switch (arg_0x12a3d70) {#line 72 case 0U:#line 72 HPLWdtP$Timer$fired();#line 72 break;#line 72 case 1U:#line 72 TestWDTC$Timer$fired();#line 72 break;#line 72 default:#line 72 /*HilTimerMilliC.VirtualizeTimerC*/VirtualizeTimerC$0$Timer$default$fired(arg_0x12a3d70);#line 72 break;#line 72 }#line 72}#line 72# 86 "/opt/tinyos-2.x/tos/system/SchedulerBasicP.nc"static inline bool SchedulerBasicP$isWaiting(uint8_t id){ return SchedulerBasicP$m_next[id] != SchedulerBasicP$NO_TASK || SchedulerBasicP$m_tail == id;}static inline bool SchedulerBasicP$pushTask(uint8_t id){ if (!SchedulerBasicP$isWaiting(id)) { if (SchedulerBasicP$m_head == SchedulerBasicP$NO_TASK) { SchedulerBasicP$m_head = id; SchedulerBasicP$m_tail = id; } else { SchedulerBasicP$m_next[SchedulerBasicP$m_tail] = id; SchedulerBasicP$m_tail = id; } return TRUE; } else { return FALSE; }}# 92 "/opt/tinyos-2.x/tos/lib/timer/Alarm.nc"inline static void /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Alarm$startAt(/*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Alarm$size_type t0, /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Alarm$size_type dt){#line 92 /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Alarm$startAt(t0, dt);#line 92}#line 92# 47 "/opt/tinyos-2.x/tos/lib/timer/AlarmToTimerC.nc"static inline void /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$start(uint32_t t0, uint32_t dt, bool oneshot){ /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$m_dt = dt; /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$m_oneshot = oneshot; /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Alarm$startAt(t0, dt);}#line 82static inline void /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Timer$startOneShotAt(uint32_t t0, uint32_t dt){#line 83 /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$start(t0, dt, TRUE);}# 118 "/opt/tinyos-2.x/tos/lib/timer/Timer.nc"inline static void /*HilTimerMilliC.VirtualizeTimerC*/VirtualizeTimerC$0$TimerFrom$startOneShotAt(uint32_t t0, uint32_t dt){#line 118 /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Timer$startOneShotAt(t0, dt);#line 118}#line 118# 174 "/opt/tinyos-2.x/tos/chips/atm1281/timer/HplAtm1281Timer2AsyncP.nc"static inline void HplAtm1281Timer2AsyncP$Compare$set(uint8_t t)#line 174{ /* atomic removed: atomic calls only */ { while (* (volatile uint8_t *)0xB6 & (1 << 3)) ; * (volatile uint8_t *)0xB3 = t; }}# 45 "/opt/tinyos-2.x/tos/chips/atm128/timer/HplAtm128Compare.nc"inline static void /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Compare$set(/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Compare$size_type t){#line 45 HplAtm1281Timer2AsyncP$Compare$set(t);#line 45}#line 45# 79 "/opt/tinyos-2.x/tos/chips/atm1281/timer/HplAtm1281Timer2AsyncP.nc"static inline uint8_t HplAtm1281Timer2AsyncP$Timer$get(void )#line 79{#line 79 return * (volatile uint8_t *)0xB2;}# 52 "/opt/tinyos-2.x/tos/chips/atm128/timer/HplAtm128Timer.nc"inline static /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Timer$timer_size /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Timer$get(void ){#line 52 unsigned char result;#line 52#line 52 result = HplAtm1281Timer2AsyncP$Timer$get();#line 52#line 52 return result;#line 52}#line 52# 258 "/opt/tinyos-2.x/tos/chips/atm1281/timer/HplAtm1281Timer2AsyncP.nc"static inline int HplAtm1281Timer2AsyncP$TimerAsync$compareABusy(void )#line 258{ return (* (volatile uint8_t *)0xB6 & (1 << 3)) != 0;}# 75 "/opt/tinyos-2.x/tos/chips/atm1281/timer/HplAtm128TimerAsync.nc"inline static int /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$TimerAsync$compareABusy(void ){#line 75 int result;#line 75#line 75 result = HplAtm1281Timer2AsyncP$TimerAsync$compareABusy();#line 75#line 75 return result;#line 75}#line 75# 101 "/opt/tinyos-2.x/tos/chips/atm1281/timer/Atm1281AlarmAsyncP.nc"static inline void /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$setOcr2A(uint8_t n)#line 101{ while (/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$TimerAsync$compareABusy()) ; if (n == /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Timer$get()) { n++; } if (/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$base + n + 1 < /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$base) { n = -/*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$base - 1; }#line 111 /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Compare$set(n);}# 56 "/opt/tinyos-2.x/tos/interfaces/TaskBasic.nc"inline static error_t /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$fired$postTask(void ){#line 56 unsigned char result;#line 56#line 56 result = SchedulerBasicP$TaskBasic$postTask(/*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$fired);#line 56#line 56 return result;#line 56}#line 56# 70 "/opt/tinyos-2.x/tos/lib/timer/AlarmToTimerC.nc"static inline void /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Alarm$fired(void ){#line 71 /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$fired$postTask();}# 67 "/opt/tinyos-2.x/tos/lib/timer/Alarm.nc"inline static void /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Alarm$fired(void ){#line 67 /*HilTimerMilliC.AlarmToTimerC*/AlarmToTimerC$0$Alarm$fired();#line 67}#line 67# 253 "/opt/tinyos-2.x/tos/chips/atm1281/timer/Atm1281AlarmAsyncP.nc"static inline uint32_t /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$Alarm$getAlarm(void )#line 253{ { __nesc_atomic_t __nesc_atomic = __nesc_atomic_start();#line 254 { unsigned long __nesc_temp = #line 254 /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$t0 + /*AlarmCounterMilliP.Atm128AlarmAsyncC.Atm1281AlarmAsyncP*/Atm1281AlarmAsyncP$0$dt; {#line 254 __nesc_atomic_end(__nesc_atomic); #line 254 return __nesc_temp; } }#line 256 __nesc_atomi
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -