📄 app.c
字号:
#line 51# 47 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit4*/HplAtm128GeneralIOPinP$4$IO$clr(void )#line 47{#line 47 * (volatile uint8_t * )34U &= ~(1 << 4);}# 30 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void MotePlatformP$SerialIdPin$clr(void ){#line 30 /*HplAtm128GeneralIOC.PortA.Bit4*/HplAtm128GeneralIOPinP$4$IO$clr();#line 30}#line 30# 50 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit4*/HplAtm128GeneralIOPinP$4$IO$makeInput(void )#line 50{#line 50 * (volatile uint8_t * )33U &= ~(1 << 4);}# 33 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void MotePlatformP$SerialIdPin$makeInput(void ){#line 33 /*HplAtm128GeneralIOC.PortA.Bit4*/HplAtm128GeneralIOPinP$4$IO$makeInput();#line 33}#line 33# 26 "/opt/tinyos-2.x/tos/platforms/micaz/MotePlatformP.nc"static inline error_t MotePlatformP$PlatformInit$init(void )#line 26{ * (volatile uint8_t *)(0x08 + 0x20) = 0; * (volatile uint8_t *)(0x07 + 0x20) = 0xff; MotePlatformP$SerialIdPin$makeInput(); MotePlatformP$SerialIdPin$clr(); return MotePlatformP$SubInit$init();}# 46 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit0*/HplAtm128GeneralIOPinP$0$IO$set(void )#line 46{#line 46 * (volatile uint8_t * )34U |= 1 << 0;}# 29 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void LedsP$Led2$set(void ){#line 29 /*HplAtm128GeneralIOC.PortA.Bit0*/HplAtm128GeneralIOPinP$0$IO$set();#line 29}#line 29# 46 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit1*/HplAtm128GeneralIOPinP$1$IO$set(void )#line 46{#line 46 * (volatile uint8_t * )34U |= 1 << 1;}# 29 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void LedsP$Led1$set(void ){#line 29 /*HplAtm128GeneralIOC.PortA.Bit1*/HplAtm128GeneralIOPinP$1$IO$set();#line 29}#line 29# 46 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit2*/HplAtm128GeneralIOPinP$2$IO$set(void )#line 46{#line 46 * (volatile uint8_t * )34U |= 1 << 2;}# 29 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void LedsP$Led0$set(void ){#line 29 /*HplAtm128GeneralIOC.PortA.Bit2*/HplAtm128GeneralIOPinP$2$IO$set();#line 29}#line 29# 52 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit0*/HplAtm128GeneralIOPinP$0$IO$makeOutput(void )#line 52{#line 52 * (volatile uint8_t * )33U |= 1 << 0;}# 35 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void LedsP$Led2$makeOutput(void ){#line 35 /*HplAtm128GeneralIOC.PortA.Bit0*/HplAtm128GeneralIOPinP$0$IO$makeOutput();#line 35}#line 35# 52 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit1*/HplAtm128GeneralIOPinP$1$IO$makeOutput(void )#line 52{#line 52 * (volatile uint8_t * )33U |= 1 << 1;}# 35 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void LedsP$Led1$makeOutput(void ){#line 35 /*HplAtm128GeneralIOC.PortA.Bit1*/HplAtm128GeneralIOPinP$1$IO$makeOutput();#line 35}#line 35# 52 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit2*/HplAtm128GeneralIOPinP$2$IO$makeOutput(void )#line 52{#line 52 * (volatile uint8_t * )33U |= 1 << 2;}# 35 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void LedsP$Led0$makeOutput(void ){#line 35 /*HplAtm128GeneralIOC.PortA.Bit2*/HplAtm128GeneralIOPinP$2$IO$makeOutput();#line 35}#line 35# 45 "/opt/tinyos-2.x/tos/system/LedsP.nc"static inline error_t LedsP$Init$init(void )#line 45{ /* atomic removed: atomic calls only */#line 46 { ; LedsP$Led0$makeOutput(); LedsP$Led1$makeOutput(); LedsP$Led2$makeOutput(); LedsP$Led0$set(); LedsP$Led1$set(); LedsP$Led2$set(); } return SUCCESS;}# 51 "/opt/tinyos-2.x/tos/interfaces/Init.nc"inline static error_t PlatformP$MoteInit$init(void ){#line 51 unsigned char result;#line 51#line 51 result = LedsP$Init$init();#line 51 result = ecombine(result, MotePlatformP$PlatformInit$init());#line 51#line 51 return result;#line 51}#line 51# 64 "/opt/tinyos-2.x/tos/platforms/iris/MeasureClockC.nc"static inline error_t MeasureClockC$Init$init(void )#line 64{ /* atomic removed: atomic calls only */ { uint8_t now;#line 70 uint8_t wraps; uint16_t start; * (volatile uint8_t *)0x81 = 1 << 0; * (volatile uint8_t *)0xB6 = 1 << 5; * (volatile uint8_t *)0xB1 = (1 << 1) | (1 << 0); start = * (volatile uint16_t *)0x84; for (wraps = MeasureClockC$MAGIC / 2; wraps; ) { uint16_t next = * (volatile uint16_t *)0x84; if (next < start) { wraps--; }#line 88 start = next; } now = * (volatile uint8_t *)0xB2; while (* (volatile uint8_t *)0xB2 == now) ; start = * (volatile uint16_t *)0x84; now = * (volatile uint8_t *)0xB2; while (* (volatile uint8_t *)0xB2 == now) ; MeasureClockC$cycles = * (volatile uint16_t *)0x84; MeasureClockC$cycles = (MeasureClockC$cycles - start + 16) >> 5; * (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# 94 "/opt/tinyos-2.x/tos/system/RealMainP.nc"static inline error_t RealMainP$SoftwareInit$default$init(void )#line 94{#line 94 return SUCCESS;}# 51 "/opt/tinyos-2.x/tos/interfaces/Init.nc"inline static error_t RealMainP$SoftwareInit$init(void ){#line 51 unsigned char result;#line 51#line 51 result = RealMainP$SoftwareInit$default$init();#line 51#line 51 return result;#line 51}#line 51# 105 "/opt/tinyos-2.x/tos/chips/atm1281/atm128hardware.h"static __inline void __nesc_enable_interrupt()#line 105{ __asm volatile ("sei");}# 47 "/opt/tinyos-2.x/tos/chips/atm128/pins/HplAtm128GeneralIOPinP.nc"static __inline void /*HplAtm128GeneralIOC.PortA.Bit2*/HplAtm128GeneralIOPinP$2$IO$clr(void )#line 47{#line 47 * (volatile uint8_t * )34U &= ~(1 << 2);}# 30 "/opt/tinyos-2.x/tos/interfaces/GeneralIO.nc"inline static void LedsP$Led0$clr(void ){#line 30 /*HplAtm128GeneralIOC.PortA.Bit2*/HplAtm128GeneralIOPinP$2$IO$clr();#line 30}#line 30# 63 "/opt/tinyos-2.x/tos/system/LedsP.nc"static inline void LedsP$Leds$led0On(void )#line 63{ LedsP$Led0$clr(); ;#line 65 ;}# 45 "/opt/tinyos-2.x/tos/interfaces/Leds.nc"inline static void PowerupC$Leds$led0On(void ){#line 45 LedsP$Leds$led0On();#line 45}#line 45# 41 "PowerupC.nc"static inline void PowerupC$Boot$booted(void )#line 41{ PowerupC$Leds$led0On();}# 49 "/opt/tinyos-2.x/tos/interfaces/Boot.nc"inline static void RealMainP$Boot$booted(void ){#line 49 PowerupC$Boot$booted();#line 49}#line 49# 164 "/opt/tinyos-2.x/tos/system/SchedulerBasicP.nc"static inline void SchedulerBasicP$TaskBasic$default$runTask(uint8_t id){}# 64 "/opt/tinyos-2.x/tos/interfaces/TaskBasic.nc"inline static void SchedulerBasicP$TaskBasic$runTask(uint8_t arg_0x1031d70){#line 64 SchedulerBasicP$TaskBasic$default$runTask(arg_0x1031d70);#line 64}#line 64# 144 "/opt/tinyos-2.x/tos/chips/atm1281/McuSleepC.nc"static inline mcu_power_t McuSleepC$McuPowerOverride$default$lowestState(void )#line 144{ return ATM128_POWER_DOWN;}# 54 "/opt/tinyos-2.x/tos/interfaces/McuPowerOverride.nc"inline static mcu_power_t McuSleepC$McuPowerOverride$lowestState(void ){#line 54 unsigned char result;#line 54#line 54 result = McuSleepC$McuPowerOverride$default$lowestState();#line 54#line 54 return result;#line 54}#line 54# 88 "/opt/tinyos-2.x/tos/chips/atm1281/McuSleepC.nc"static inline mcu_power_t McuSleepC$getPowerState(void )#line 88{ if ((#line 98 * (volatile uint8_t *)0x6E & ((1 << 1) | (1 << 2)) || * (volatile uint8_t *)0x6F & ((((1 << 5) | (1 << 1)) | (1 << 2)) | (1 << 3))) || * (volatile uint8_t *)0x71 & ((((1 << 5) | (1 << 1)) | (1 << 2)) | (1 << 3))) { return ATM128_POWER_IDLE; } else { if (* (volatile uint8_t *)(uint16_t )& * (volatile uint8_t *)(0x2C + 0x20) & (1 << 7)) { return ATM128_POWER_IDLE; } else { if (* (volatile uint8_t *)0XC1 & ((1 << 6) | (1 << 7))) { return ATM128_POWER_IDLE; } else {#line 112 if (* (volatile uint8_t *)0XC9 & ((1 << 6) | (1 << 7))) { return ATM128_POWER_IDLE; } else { if (* (volatile uint8_t *)(uint16_t )& * (volatile uint8_t *)0xBC & (1 << 2)) { return ATM128_POWER_IDLE; } else { if (* (volatile uint8_t *)(uint16_t )& * (volatile uint8_t *)0x7A & (1 << 7)) { return ATM128_POWER_ADC_NR; } else { return ATM128_POWER_DOWN; } } } } } }}# 157 "/opt/tinyos-2.x/tos/chips/atm1281/atm128hardware.h"static inline mcu_power_t mcombine(mcu_power_t m1, mcu_power_t m2)#line 157{ return m1 < m2 ? m1 : m2;}# 128 "/opt/tinyos-2.x/tos/chips/atm1281/McuSleepC.nc"static inline void McuSleepC$McuSleep$sleep(void )#line 128{ uint8_t powerState; powerState = mcombine(McuSleepC$getPowerState(), McuSleepC$McuPowerOverride$lowestState()); * (volatile uint8_t *)(0x33 + 0x20) = (( * (volatile uint8_t *)(0x33 + 0x20) & 0xf0) | (1 << 0)) | __extension__ ({#line 133 uint16_t __addr16 = (uint16_t )(uint16_t )&McuSleepC$atm128PowerBits[powerState];#line 133 uint8_t __result;#line 133 __asm ("lpm %0, Z""\n\t" : "=r"(__result) : "z"(__addr16));__result; } );#line 134 __asm volatile ("sei"); __asm volatile ("sleep"); __asm volatile ("cli"); * (volatile uint8_t *)(0x33 + 0x20) &= ~(1 << 0);}# 59 "/opt/tinyos-2.x/tos/interfaces/McuSleep.nc"inline static void SchedulerBasicP$McuSleep$sleep(void ){#line 59 McuSleepC$McuSleep$sleep();#line 59}#line 59# 67 "/opt/tinyos-2.x/tos/system/SchedulerBasicP.nc"static __inline uint8_t SchedulerBasicP$popTask(void ){ if (SchedulerBasicP$m_head != SchedulerBasicP$NO_TASK) { uint8_t id = SchedulerBasicP$m_head;#line 72 SchedulerBasicP$m_head = SchedulerBasicP$m_next[SchedulerBasicP$m_head]; if (SchedulerBasicP$m_head == SchedulerBasicP$NO_TASK) { SchedulerBasicP$m_tail = SchedulerBasicP$NO_TASK; } SchedulerBasicP$m_next[id] = SchedulerBasicP$NO_TASK; return id; } else { return SchedulerBasicP$NO_TASK; }}#line 138static inline void SchedulerBasicP$Scheduler$taskLoop(void ){ for (; ; ) { uint8_t nextTask; { __nesc_atomic_t __nesc_atomic = __nesc_atomic_start(); { while ((nextTask = SchedulerBasicP$popTask()) == SchedulerBasicP$NO_TASK) { SchedulerBasicP$McuSleep$sleep(); } }#line 150 __nesc_atomic_end(__nesc_atomic); } SchedulerBasicP$TaskBasic$runTask(nextTask); }}# 61 "/opt/tinyos-2.x/tos/interfaces/Scheduler.nc"inline static void RealMainP$Scheduler$taskLoop(void ){#line 61 SchedulerBasicP$Scheduler$taskLoop();#line 61}#line 61# 52 "/opt/tinyos-2.x/tos/system/RealMainP.nc" int main(void )#line 52{ { __nesc_atomic_t __nesc_atomic = __nesc_atomic_start(); { { }#line 60 ; RealMainP$Scheduler$init(); RealMainP$PlatformInit$init(); while (RealMainP$Scheduler$runNextTask()) ; RealMainP$SoftwareInit$init(); while (RealMainP$Scheduler$runNextTask()) ; }#line 77 __nesc_atomic_end(__nesc_atomic); } __nesc_enable_interrupt(); RealMainP$Boot$booted(); RealMainP$Scheduler$taskLoop(); return -1;}# 123 "/opt/tinyos-2.x/tos/system/SchedulerBasicP.nc"static bool SchedulerBasicP$Scheduler$runNextTask(void ){ uint8_t nextTask; /* atomic removed: atomic calls only */#line 127 { nextTask = SchedulerBasicP$popTask(); if (nextTask == SchedulerBasicP$NO_TASK) { { unsigned char __nesc_temp = #line 131 FALSE;#line 131 return __nesc_temp; } } }#line 134 SchedulerBasicP$TaskBasic$runTask(nextTask); return TRUE;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -