亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? stop_watch.c

?? 基于zigbee芯片cc2430的應(yīng)用程序開發(fā):點(diǎn)對點(diǎn)通信
?? C
字號(hào):
/******************************************************************************
Filename:     stop_watch.c
Target:       cc2430
Author:       kja
Revised:      16/12-2005
Revision:     1.0

Description:
    This application shows a stopwatch. Use S1 on the EB card to start, stop
    and reset timer. Timer 3 is used for time-keeping.

******************************************************************************/

#include "app_ex.h"

typedef enum {START_STATE, RUN_STATE, STOP_STATE} STATE;

typedef struct TIME_S{
   UINT8 h;
   UINT8 m;
   UINT8 s;
} TIME;

void initStopWatch(void);
void printTime(void);
void incrementTime(void);
void stop_watch_main(void);
void stop_watch_T3_IRQ(void);

UINT16 overflow;
TIME t;


/******************************************************************************
* @fn  initStopWatch
*
* @brief
*      Initializes components for the stopwatch application example.
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
void initStopWatch(void)
{
   initLcd();

   INIT_GLED();

   SET_MAIN_CLOCK_SOURCE(CRYSTAL);
   CLKCON &= ~0x38;


   // Enabling overflow interrupt from timer 3
   TIMER34_INIT(3);
   halSetTimer34Period(3, 1000);
   INT_ENABLE(INUM_T3, INT_ON);
   TIMER34_ENABLE_OVERFLOW_INT(3,INT_ON);
   INT_GLOBAL_ENABLE(INT_ON);
}



/******************************************************************************
* @fn  stop_watch_main
*
* @brief
*      Main function.
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
#ifdef COMPLETE_APPLICATION
void stop_watch_main(void){
#else
void main(void){
#endif
   STATE state = START_STATE;
   initStopWatch();

   while(!stopApplication()){
      switch (state){
      case START_STATE:
         t.h = t.m = t.s = 0;
         overflow = 0;
         printTime();
         lcdUpdateLine(LINE1, (char*)"S1 for START");

         if(buttonPushed()){
            TIMER3_RUN(TRUE);
            state = RUN_STATE;
            lcdUpdateLine(LINE1, (char*)"S1 for STOP");
         }
         break;

      case RUN_STATE:
         INT_GLOBAL_ENABLE(INT_OFF);

         if(overflow > 0 && overflow < 0x09){
            GLED = LED_ON;
         }
         else if(overflow > (UINT16)1000){
            //overflow = 0;
            overflow -= 1000;
            incrementTime();
            printTime();
         }
         else{
            GLED = LED_OFF;
         }
         if(buttonPushed()){
            TIMER3_RUN(FALSE);
            state = STOP_STATE;
            GLED = LED_OFF;
         }

         INT_GLOBAL_ENABLE(INT_ON);
         break;
      case STOP_STATE:
            printTime();
            lcdUpdateLine(LINE1, (char*)"Total time is:");
            if(buttonPushed()){
               state = START_STATE;
            }
            break;
      default:
         break;
      }
   }

   INT_GLOBAL_ENABLE(INT_OFF);
   return;
}


/******************************************************************************
* @fn  incrementTime
*
* @brief
*      Increments time with 1 second. Wraps around for 60s and 60min.
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
void incrementTime(void)
{
   if(t.s < 59){
      t.s++;
   }
   else{
      t.s = 0;
      if(t.m < 59){
         t.m++;
      }
      else{
         t.m = 0;
         t.h++;
      }
   }
}


/******************************************************************************
* @fn  printTime
*
* @brief
*      Prints current time to LCD.
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
void printTime(void)
{
   char s[9];
   s[0] = '0' + (t.h/10);
   s[1] = '0' + (t.h%10);
   s[2] = ':';
   s[3] = '0' + (t.m/10);
   s[4] = '0' + (t.m%10);
   s[5] = ':';
   s[6] = '0' + (t.s/10);
   s[7] = '0' + (t.s%10);
   s[8] = '\0'; //endline
   lcdUpdateLine(LINE2, s);
}


/******************************************************************************
* @fn  stop_watch_T3_IRQ
*
* @brief
*     Interrupt handler for timer T3 interrupts.
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
#ifdef COMPLETE_APPLICATION
   void stop_watch_T3_IRQ(void){
#else
#pragma vector=T3_VECTOR
__interrupt void stop_watch_T3_IRQ(void){
#endif
   if(TIMIF & 0x01){ //T3 overflow
      overflow++;
   }
   TIMIF &= ~0x01;
}


/******************************************************************************
* @fn  stop_watch_init
*
* @brief
*      Initializes the stopwatch application example.
*
* Parameters:
*
* @param  APPLICATION *a
*         Main application
*
* @return void
*
******************************************************************************/
#ifdef COMPLETE_APPLICATION
void stop_watch_init(APPLICATION *a)
{
   a->menuText = (char*)"Stop Watch";
   a->description = (char*)"Timer 3";
   a->main_func = stop_watch_main;
   a->interrupts[INUM_T3] = stop_watch_T3_IRQ;
}
#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩激情av在线| 国产亚洲精品资源在线26u| 一区二区日韩电影| 欧美丝袜自拍制服另类| 日韩电影在线免费看| 日韩欧美国产小视频| 精品在线视频一区| 国产午夜亚洲精品理论片色戒| 国产毛片精品一区| 自拍偷拍亚洲欧美日韩| 欧美三级电影在线看| 久久99精品国产麻豆婷婷| 国产亚洲一二三区| 色噜噜偷拍精品综合在线| 亚洲成人免费在线| 久久婷婷成人综合色| 97久久超碰精品国产| 五月综合激情婷婷六月色窝| 日韩一区二区中文字幕| 高清成人在线观看| 午夜免费久久看| 国产无一区二区| 欧美三级视频在线观看| 国产一区二区电影| 亚洲一区二区在线视频| 精品少妇一区二区三区在线播放| 成人永久免费视频| 亚洲国产三级在线| 中文字幕电影一区| 欧美三级日本三级少妇99| 国产精品自拍毛片| 亚洲午夜精品网| 国产欧美日韩激情| 欧美精品一二三| av在线免费不卡| 免费观看一级欧美片| 亚洲人成小说网站色在线| 精品日韩欧美在线| 欧美午夜电影一区| 成人午夜电影久久影院| 日本成人中文字幕| 亚洲欧美成人一区二区三区| 欧美精品一区二区三区很污很色的 | 在线观看一区不卡| 精品一区二区精品| 亚洲超碰精品一区二区| 亚洲欧洲另类国产综合| 精品国产亚洲在线| 制服丝袜在线91| 在线观看www91| 91丝袜高跟美女视频| 国产麻豆一精品一av一免费 | 日韩精品久久久久久| 综合欧美亚洲日本| 国产女主播在线一区二区| 欧美一区二区视频在线观看2020| 99riav一区二区三区| 国产精品亚洲а∨天堂免在线| 轻轻草成人在线| 日本色综合中文字幕| 亚洲成人av免费| 亚洲综合一区在线| 悠悠色在线精品| 亚洲免费色视频| 亚洲欧美在线另类| 中文字幕第一页久久| 国产欧美久久久精品影院| 久久久www成人免费无遮挡大片| 欧美一激情一区二区三区| 欧美人伦禁忌dvd放荡欲情| 欧美综合天天夜夜久久| 在线一区二区三区四区| 在线观看网站黄不卡| 欧美在线你懂得| 欧美性色aⅴ视频一区日韩精品| 91美女片黄在线| 色播五月激情综合网| 一本久久a久久精品亚洲| 99久久久精品| 色视频成人在线观看免| 欧美亚洲一区二区在线| 欧美日韩视频在线观看一区二区三区| 欧洲人成人精品| 欧美日韩不卡在线| 欧美一级视频精品观看| 欧美精品一区在线观看| 欧美国产精品v| 亚洲另类在线视频| 亚洲精品一二三| 日韩激情中文字幕| 激情综合色播激情啊| 成人免费视频caoporn| 一本久久综合亚洲鲁鲁五月天| 欧美日韩一区小说| 日韩视频123| 国产无人区一区二区三区| 国产精品蜜臀av| 亚洲国产一区二区三区 | 一区二区在线观看不卡| 亚洲第一综合色| 国产自产高清不卡| 99国内精品久久| 7878成人国产在线观看| 国产亚洲美州欧州综合国| 亚洲免费观看高清完整版在线| 三级一区在线视频先锋| 国产成人免费视频网站高清观看视频| 99国产一区二区三精品乱码| 911国产精品| 国产精品国产三级国产普通话99 | 国产精品免费av| 亚洲福利一区二区| 国产美女在线精品| 91国偷自产一区二区三区观看| 欧美一区二区在线免费观看| 国产精品视频线看| 午夜欧美一区二区三区在线播放| 国产精品综合二区| 欧美另类一区二区三区| 国产精品少妇自拍| 日韩电影一区二区三区四区| 成人深夜福利app| 91麻豆精品国产自产在线| 欧美国产精品劲爆| 美腿丝袜在线亚洲一区 | 免费观看在线综合| 91视频在线观看| 久久伊人蜜桃av一区二区| 一区二区三区在线不卡| 国产精品综合在线视频| 9191精品国产综合久久久久久| 国产嫩草影院久久久久| 久久精品免费观看| 色菇凉天天综合网| 国产精品少妇自拍| 国产一区二区三区综合| 91麻豆精品国产91久久久更新时间 | 国产精品麻豆网站| 精品系列免费在线观看| 欧美影视一区在线| 亚洲美女视频在线| av一区二区三区在线| 久久久美女艺术照精彩视频福利播放| 午夜国产精品一区| 日本韩国视频一区二区| 国产精品美女久久久久av爽李琼| 国产在线视视频有精品| 日韩精品一区二区三区四区视频| 亚洲va欧美va人人爽| 欧美性受极品xxxx喷水| 亚洲少妇30p| 99久久综合色| 中文无字幕一区二区三区| 狠狠狠色丁香婷婷综合久久五月| 欧美一区二区三区免费观看视频| 亚洲第一搞黄网站| 欧美日韩一级大片网址| 亚洲精品日韩综合观看成人91| 92精品国产成人观看免费| 国产精品色婷婷久久58| 不卡视频一二三四| 国产免费成人在线视频| 大陆成人av片| 国产精品美女久久久久高潮| 成人动漫精品一区二区| 国产精品国产馆在线真实露脸 | 国产欧美综合在线| 福利视频网站一区二区三区| 久久久久国产免费免费| 成人免费毛片片v| 亚洲欧美一区二区久久| 在线视频中文字幕一区二区| 亚洲一级二级三级在线免费观看| 在线视频一区二区免费| 午夜精品视频在线观看| 在线综合亚洲欧美在线视频| 玖玖九九国产精品| 久久综合色天天久久综合图片| 国产精品影视在线观看| 国产精品免费免费| 色诱亚洲精品久久久久久| 亚洲综合999| 日韩美女一区二区三区四区| 狠狠色狠狠色综合| 亚洲欧洲精品天堂一级| 在线免费观看成人短视频| 天天做天天摸天天爽国产一区 | 1024成人网色www| 欧美系列亚洲系列| 日韩影院精彩在线| 久久精品视频在线看| 色综合av在线| 日本不卡的三区四区五区| 国产日韩欧美在线一区| 色哟哟一区二区| 免费黄网站欧美| 一区二区中文字幕在线| 欧美精品黑人性xxxx| 国产福利一区在线观看| 亚洲黄色尤物视频|