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

📄 app.c

📁 tinyos的硬件闪灯例子代码
💻 C
📖 第 1 页 / 共 2 页
字号:
#define dbg(mode, format, ...) ((void)0)#define dbg_clear(mode, format, ...) ((void)0)#define dbg_active(mode) 0# 60 "/usr/local/avr/include/inttypes.h"typedef signed char int8_t;typedef unsigned char uint8_t;# 83 "/usr/local/avr/include/inttypes.h" 3typedef int int16_t;typedef unsigned int uint16_t;typedef long int32_t;typedef unsigned long uint32_t;#line 117typedef long long int64_t;typedef unsigned long long uint64_t;#line 134typedef int16_t intptr_t;typedef uint16_t uintptr_t;# 213 "/usr/local/lib/gcc-lib/avr/3.3-tinyos/include/stddef.h" 3typedef unsigned int size_t;#line 325typedef int wchar_t;# 60 "/usr/local/avr/include/stdlib.h"typedef struct __nesc_unnamed4242 {  int quot;  int rem;} div_t;typedef struct __nesc_unnamed4243 {  long quot;  long rem;} ldiv_t;typedef int (*__compar_fn_t)(const void *, const void *);# 151 "/usr/local/lib/gcc-lib/avr/3.3-tinyos/include/stddef.h" 3typedef int ptrdiff_t;# 85 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/system/tos.h"typedef unsigned char bool;enum __nesc_unnamed4244 {  FALSE = 0,   TRUE = 1};enum __nesc_unnamed4245 {  FAIL = 0,   SUCCESS = 1};static inline uint8_t rcombine(uint8_t r1, uint8_t r2);typedef uint8_t  result_t;static inline result_t rcombine(result_t r1, result_t r2);#line 128enum __nesc_unnamed4246 {  NULL = 0x0};# 39 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/hal.h"typedef unsigned char BOOL;typedef unsigned char BYTE;typedef unsigned short WORD;typedef unsigned long DWORD;typedef unsigned char UINT8;typedef unsigned short UINT16;typedef unsigned long UINT32;typedef signed char INT8;typedef signed short INT16;typedef signed long INT32;#line 501typedef struct __nesc_unnamed4247 {  BYTE SRCADDRH;  BYTE SRCADDRL;  BYTE DESTADDRH;  BYTE DESTADDRL;  BYTE VLEN : 3;  BYTE LENH : 5;  BYTE LENL : 8;  BYTE WORDSIZE : 1;  BYTE TMODE : 2;  BYTE TRIG : 5;  BYTE SRCINC : 2;  BYTE DESTINC : 2;  BYTE IRQMASK : 1;  BYTE M8 : 1;  BYTE PRIORITY : 2;} DMA_DESC;# 89 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/ioCC2430.h"typedef int sfr;#line 126sfr PCON = 0x87;#line 139sfr P1 = 0x90;#line 194sfr SLEEP = 0xBE;sfr CLKCON = 0xC6;#line 217sfr PSW = 0xD0;#line 229sfr T1CC0L = 0xDA;sfr T1CC0H = 0xDB;sfr T1CNTL = 0xE2;sfr T1CNTH = 0xE3;sfr T1CTL = 0xE4;#line 259sfr P1SEL = 0xF4;sfr P1DIR = 0xFE;typedef int sbit;#line 325sbit EA = 0xAF;#line 338sbit T4IE = 0xBC;sbit T3IE = 0xBB;sbit T2IE = 0xBA;sbit T1IE = 0xB9;sbit T1IF = 0xC1;static inline # 100 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/CC2430hardware.h"void TOSH_wait(void);static inline void TOSH_sleep(void);typedef uint8_t __nesc_atomic_t;__inline __nesc_atomic_t  __nesc_atomic_start(void );__inline void  __nesc_atomic_end(__nesc_atomic_t oldSreg);static __inline void __nesc_enable_interrupt(void);# 34 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/hardware.h"static __inline void TOSH_SET_RED_LED_PIN(void);#line 34static __inline void TOSH_CLR_RED_LED_PIN(void);#line 34static __inline void TOSH_MAKE_RED_LED_OUTPUT(void);#line 34static __inline void TOSH_MAKE_RED_LED_GIO(void);static __inline void TOSH_SET_GREEN_LED_PIN(void);#line 35static __inline void TOSH_MAKE_GREEN_LED_OUTPUT(void);#line 35static __inline void TOSH_MAKE_GREEN_LED_GIO(void);static __inline void TOSH_SET_YELLOW_LED_PIN(void);#line 36static __inline void TOSH_MAKE_YELLOW_LED_OUTPUT(void);#line 36static __inline void TOSH_MAKE_YELLOW_LED_GIO(void);static inline #line 57void TOSH_SET_PIN_DIRECTIONS(void );#line 74enum __nesc_unnamed4248 {  TOSH_ADC_PORTMAPSIZE = 9};# 54 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/types/dbg_modes.h"typedef long long TOS_dbg_mode;enum __nesc_unnamed4249 {  DBG_ALL = ~0ULL,   DBG_BOOT = 1ULL << 0,   DBG_CLOCK = 1ULL << 1,   DBG_TASK = 1ULL << 2,   DBG_SCHED = 1ULL << 3,   DBG_SENSOR = 1ULL << 4,   DBG_LED = 1ULL << 5,   DBG_CRYPTO = 1ULL << 6,   DBG_ROUTE = 1ULL << 7,   DBG_AM = 1ULL << 8,   DBG_CRC = 1ULL << 9,   DBG_PACKET = 1ULL << 10,   DBG_ENCODE = 1ULL << 11,   DBG_RADIO = 1ULL << 12,   DBG_LOG = 1ULL << 13,   DBG_ADC = 1ULL << 14,   DBG_I2C = 1ULL << 15,   DBG_UART = 1ULL << 16,   DBG_PROG = 1ULL << 17,   DBG_SOUNDER = 1ULL << 18,   DBG_TIME = 1ULL << 19,   DBG_SIM = 1ULL << 21,   DBG_QUEUE = 1ULL << 22,   DBG_SIMRADIO = 1ULL << 23,   DBG_HARD = 1ULL << 24,   DBG_MEM = 1ULL << 25,   DBG_USR1 = 1ULL << 27,   DBG_USR2 = 1ULL << 28,   DBG_USR3 = 1ULL << 29,   DBG_TEMP = 1ULL << 30,   DBG_ERROR = 1ULL << 31,   DBG_NONE = 0,   DBG_DEFAULT = DBG_ALL};# 59 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/system/sched.c"typedef struct __nesc_unnamed4250 {  void (*tp)(void);} TOSH_sched_entry_T;enum __nesc_unnamed4251 {  TOSH_MAX_TASKS = 8,   TOSH_TASK_BITMASK = TOSH_MAX_TASKS - 1};TOSH_sched_entry_T TOSH_queue[TOSH_MAX_TASKS];volatile uint8_t TOSH_sched_full;volatile uint8_t TOSH_sched_free;static inline void TOSH_wait(void );static inline void TOSH_sleep(void );static inline void TOSH_sched_init(void );#line 98bool  TOS_post(void (*tp)(void));static inline #line 139bool TOSH_run_next_task(void);static inline #line 162void TOSH_run_task(void);# 39 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/interfaces/Timer.h"enum __nesc_unnamed4252 {  TIMER_REPEAT = 0,   TIMER_ONE_SHOT = 1,   NUM_TIMERS = 1};# 34 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/Clock.h"enum __nesc_unnamed4253 {  TOS_I1024PS = 0, TOS_S1024PS = 3,   TOS_I512PS = 1, TOS_S512PS = 3,   TOS_I256PS = 3, TOS_S256PS = 3,   TOS_I128PS = 7, TOS_S128PS = 3,   TOS_I64PS = 15, TOS_S64PS = 3,   TOS_I32PS = 31, TOS_S32PS = 3,   TOS_I16PS = 63, TOS_S16PS = 3,   TOS_I8PS = 127, TOS_S8PS = 3,   TOS_I4PS = 255, TOS_S4PS = 3,   TOS_I2PS = 15, TOS_S2PS = 7,   TOS_I1PS = 31, TOS_S1PS = 7,   TOS_I0PS = 0, TOS_S0PS = 0};enum __nesc_unnamed4254 {  DEFAULT_SCALE = 3, DEFAULT_INTERVAL = 65535};static  result_t HPLInit$init(void);static  result_t BlinkM$StdControl$init(void);static  result_t BlinkM$StdControl$start(void);static  result_t BlinkM$Timer$fired(void);static   result_t TimerM$Clock$fire(void);static  result_t TimerM$StdControl$init(void);static  result_t TimerM$StdControl$start(void);static  result_t TimerM$Timer$default$fired(uint8_t arg_0xa25ea88);static  result_t TimerM$Timer$start(uint8_t arg_0xa25ea88, char arg_0xa254a38, uint16_t arg_0xa254b90);static   void HPLClock$Clock$setInterval(uint16_t arg_0xa2768d0);static   result_t HPLClock$Clock$setRate(uint16_t arg_0xa27da28, uint8_t arg_0xa27db70);static   uint8_t HPLPowerManagementM$PowerManagement$adjustPower(void);static   result_t LedsC$Leds$init(void);static   result_t LedsC$Leds$redOff(void);static   result_t LedsC$Leds$redToggle(void);static   result_t LedsC$Leds$redOn(void);static  # 47 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/RealMain.nc"result_t RealMain$hardwareInit(void);static  # 63 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/interfaces/StdControl.nc"result_t RealMain$StdControl$init(void);static  result_t RealMain$StdControl$start(void);# 57 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/RealMain.nc"int   main(void);static inline  # 10 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/HPLInit.nc"result_t HPLInit$init(void);static   # 56 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/interfaces/Leds.nc"result_t BlinkM$Leds$init(void);static   #line 81result_t BlinkM$Leds$redToggle(void);static  # 59 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/Timer.nc"result_t BlinkM$Timer$start(char arg_0xa254a38, uint16_t arg_0xa254b90);static inline  # 52 "BlinkM.nc"result_t BlinkM$StdControl$init(void);static inline  result_t BlinkM$StdControl$start(void);static inline  #line 84result_t BlinkM$Timer$fired(void);static   # 41 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/interfaces/PowerManagement.nc"uint8_t TimerM$PowerManagement$adjustPower(void);static   # 105 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/Clock.nc"void TimerM$Clock$setInterval(uint16_t arg_0xa2768d0);static   #line 96result_t TimerM$Clock$setRate(uint16_t arg_0xa27da28, uint8_t arg_0xa27db70);static  # 73 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/Timer.nc"result_t TimerM$Timer$fired(# 6 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/TimerM.nc"uint8_t arg_0xa25ea88);uint32_t TimerM$mState;uint8_t TimerM$setIntervalFlag;uint8_t TimerM$mScale;uint16_t TimerM$mInterval;int8_t TimerM$queue_head;int8_t TimerM$queue_tail;uint8_t TimerM$queue_size;uint8_t TimerM$queue[NUM_TIMERS];struct TimerM$timer_s {  uint8_t type;  int32_t ticks;  int32_t ticksLeft;} TimerM$mTimerList[NUM_TIMERS];static inline  result_t TimerM$StdControl$init(void);static inline  result_t TimerM$StdControl$start(void);static inline  result_t TimerM$Timer$start(uint8_t id, char type, uint16_t interval);#line 82static void TimerM$adjustInterval(void);static inline   #line 122result_t TimerM$Timer$default$fired(uint8_t id);static inline void TimerM$enqueue(uint8_t value);static inline uint8_t TimerM$dequeue(void);static inline  void TimerM$signalOneTimer(void);static inline  void TimerM$HandleFire(void);static inline   #line 172result_t TimerM$Clock$fire(void);static   # 180 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/Clock.nc"result_t HPLClock$Clock$fire(void);# 12 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/HPLClock.nc"uint8_t HPLClock$set_flag;uint8_t HPLClock$mscale;#line 13uint8_t HPLClock$nextScale;uint16_t HPLClock$minterval;static inline   #line 45void HPLClock$Clock$setInterval(uint16_t value);static inline   #line 118result_t HPLClock$Clock$setRate(uint16_t interval, uint8_t scale);#line 138void __attribute((interrupt))   T1_VECTOR(void);# 14 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/HPLPowerManagementM.nc"bool HPLPowerManagementM$disabled = 1;enum HPLPowerManagementM$__nesc_unnamed4255 {  HPLPowerManagementM$IDLE = 0,   HPLPowerManagementM$ADC_NR = 0,   HPLPowerManagementM$POWER_DOWN = (1 << 0) + (1 << 1),   HPLPowerManagementM$POWER_SAVE = 1 << 1,   HPLPowerManagementM$STANDBY = (1 << 0) + (1 << 1),   HPLPowerManagementM$EXT_STANDBY = 1 << 1};static inline uint8_t HPLPowerManagementM$getPowerLevel(void);static inline  #line 48void HPLPowerManagementM$doAdjustment(void);static   #line 67uint8_t HPLPowerManagementM$PowerManagement$adjustPower(void);# 50 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/system/LedsC.nc"uint8_t LedsC$ledsOn;enum LedsC$__nesc_unnamed4256 {  LedsC$RED_BIT = 1,   LedsC$GREEN_BIT = 2,   LedsC$YELLOW_BIT = 4};static inline   result_t LedsC$Leds$init(void);static inline   result_t LedsC$Leds$redOn(void);static inline   result_t LedsC$Leds$redOff(void);static inline   result_t LedsC$Leds$redToggle(void);# 36 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/hardware.h"static __inline void TOSH_SET_YELLOW_LED_PIN(void)#line 36{#line 36  P1 |= 1 << 4;}#line 35static __inline void TOSH_SET_GREEN_LED_PIN(void)#line 35{#line 35  P1 |= 1 << 0;}#line 34static __inline void TOSH_SET_RED_LED_PIN(void)#line 34{#line 34  P1 |= 1 << 1;}#line 36static __inline void TOSH_MAKE_YELLOW_LED_OUTPUT(void)#line 36{#line 36  P1DIR |= 1 << 4;}#line 35static __inline void TOSH_MAKE_GREEN_LED_OUTPUT(void)#line 35{#line 35  P1DIR |= 1 << 0;}#line 34static __inline void TOSH_MAKE_RED_LED_OUTPUT(void)#line 34{#line 34  P1DIR |= 1 << 1;}#line 36static __inline void TOSH_MAKE_YELLOW_LED_GIO(void)#line 36{#line 36  P1SEL &= ~(0x01 << 4);}#line 35static __inline void TOSH_MAKE_GREEN_LED_GIO(void)#line 35{#line 35  P1SEL &= ~(0x01 << 0);}#line 34static __inline void TOSH_MAKE_RED_LED_GIO(void)#line 34{#line 34  P1SEL &= ~(0x01 << 1);}static inline #line 57void TOSH_SET_PIN_DIRECTIONS(void ){  TOSH_MAKE_RED_LED_GIO();  TOSH_MAKE_GREEN_LED_GIO();  TOSH_MAKE_YELLOW_LED_GIO();  TOSH_MAKE_RED_LED_OUTPUT();  TOSH_MAKE_GREEN_LED_OUTPUT();  TOSH_MAKE_YELLOW_LED_OUTPUT();  TOSH_SET_RED_LED_PIN();  TOSH_SET_GREEN_LED_PIN();  TOSH_SET_YELLOW_LED_PIN();}static inline  # 10 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/HPLInit.nc"result_t HPLInit$init(void)#line 10{  do {#line 11      if (0x00) {#line 11          CLKCON |= 0x40;#line 11          while (!(SLEEP & 0x20)) ;#line 11          if ((CLKCON & 0x38) >> 3 == 0) {#line 11              CLKCON |= 0x08;            }#line 11          SLEEP |= 0x04;        }      else #line 11        {#line 11          SLEEP &= ~0x04;#line 11          while (!(SLEEP & 0x40)) ;#line 11           __asm ("NOP");CLKCON &= ~0x47;#line 11          SLEEP |= 0x04;        }    }  while (#line 11  0);  TOSH_SET_PIN_DIRECTIONS();  return SUCCESS;}# 47 "C:/tinyos/cygwin/opt/tinyos-1.x/tos/platform/CC2430/RealMain.nc"inline static  result_t RealMain$hardwareInit(void){#line 47  unsigned char result;#line 47#line 47  result = HPLInit$init();#line 47#line 47  return result;#line 47}#line 47static inline 

⌨️ 快捷键说明

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