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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rf04dev.c

?? CC2430多功能綜合測試程序,zigbee協議下的通信開發源碼
?? C
字號:
/******************************************************************************
Filename:     RF04Dev.c
Target:       cc2430
Revised:      16/12-2005
Revision:     1.0

Description:
******************************************************************************/

#include "ioCC2430.h"

#ifdef CC2430DB
   #include "CC2430DB.h"
#else
   #include "RF04EB.h"
#endif


/******************************************************************************
* @fn  getJoystickDirection
*
* @brief
*      This function utilizes the 8-bit ADC to give an indication of the
*      current position of the joystick. Current support is for 90 degrees
*      positioning only.
*
* Parameters:
*
* @param  void
*
* @return JOYSTICK_DIRECTION
*          DOWN: Joystick direction is down (270 degrees)
*          LEFT: Joystick direction is left (180 degrees)
*	   RIGHT: Joystick direction is right (0 degrees)
*	   UP: Joystick direction is up (90 degrees)
*	   CENTRED: Joystick direction is centred (passive position)
*
******************************************************************************/
JOYSTICK_DIRECTION getJoystickDirection( void ) {
    INT8 adcValue, i;
    JOYSTICK_DIRECTION direction[2];


    for(i = 0; i < 2; i++){
       adcValue = halAdcSampleSingle(ADC_REF_AVDD, ADC_8_BIT, ADC_INPUT_JOYSTICK);

       if (adcValue < 0x1C) {
          direction[i] = DOWN;  // Measured 0x01
       } else if (adcValue < 0x39) {
          direction[i] = LEFT;  // Measured 0x30

          //Not supporting 45 degrees positions (UP-RIGTH)
       } else if (adcValue < 0x45) {
          direction[i] = CENTRED;  // Measured 0x40
       } else if (adcValue < 0x52) {
          direction[i] = RIGHT; // Measured 0x4D
       } else if (adcValue < 0x62) {
          direction[i] = UP;    // Measured 0x5C
       } else {
          direction[i] = CENTRED; // Measured 0x69
       }
    }

    if(direction[0] == direction[1]){
       return direction[0];
    }
    else{
       return CENTRED;
    }
}


/******************************************************************************
* @fn  getPotValue
*
* @brief
*      This function utilizes the 8-bit ADC to obtain a digital value for the
*      potentiometer resistance.
*
* Parameters:
*
* @param  void
*
* @return UINT8
*         0xFF
*         0x00
*
******************************************************************************/
UINT8 getPotValue( void ){
    INT8 adcValue = halAdcSampleSingle(ADC_REF_AVDD, ADC_8_BIT, ADC_INPUT_POT);
    return (adcValue > 0) ? adcValue : 0;
}


/******************************************************************************
* @fn  buttonPushed
*
* @brief
*      This function detects if the button is being pushed. The function
*      implements software debounce. Return true only if previuosly called
*      with button not pushed. Return true only once each time the button
*      is pressed.
*
* Parameters:
*
* @param  void
*
* @return BOOL
*          TRUE: Button is being pushed
*          FALSE: Button is not being pushed
*
******************************************************************************/
#define   BUTTON_ACTIVE_TIMEOUT   10
BOOL buttonPushed( void ) {
   UINT8 i;
   BOOL value;
   static BOOL prevValue;

   if (value = BUTTON_PRESSED()){
      for(i = 0;i < BUTTON_ACTIVE_TIMEOUT; i++){
         if(!BUTTON_PRESSED()){
            value = FALSE;
            break;
         }
      }
   }

   if(value){
      if (!prevValue){
         value = prevValue = TRUE;
      }
      else{
         value = FALSE;
      }
   }
   else{
      prevValue = FALSE;
   }
   return value;
}


/******************************************************************************
* @fn  joystickPushed
*
* @brief
*      This function detects if the joystick is being pushed. The function
*      implements software debounce. Return true only if previuosly called
*      with joystick not pushed. Return true only once each time the joystick
*      is pressed.
*
* Parameters:
*
* @param  void
*
* @return BOOL
*          TRUE: Button is being pushed
*          FALSE: Button is not being pushed
*
******************************************************************************/
BOOL joystickPushed( void ) {
   UINT8 i;
   BOOL value;
   static BOOL prevValue;

   if (value = JOYSTICK_PRESSED()){
      for(i = 0;i < BUTTON_ACTIVE_TIMEOUT; i++){
         if(!JOYSTICK_PRESSED()){
            value = FALSE;
            break;
         }
      }
   }

   if(value){
      if (!prevValue){
         value = prevValue = TRUE;
      }
      else{
         value = FALSE;
      }
   }
   else{
      prevValue = FALSE;
   }

   return value;
}

#ifdef CC2430DB
/******************************************************************************
* @fn  getLdrValue
*
* @brief
*      Returns a value indicating the illumination of the light dependent
*      resistor (LDR). Values range from 0xFF (255) for saturated sensor
*      (resistor value around 5 kOhm), to 0 for dark sensor (resistor value
*      around 20MOhm).
*
* Parameters:
*
* @param  void
*
* @return UINT8
*         0xFF (255)  maximum illumination (saturated sensor)
*         0x00        dark sensor
*
******************************************************************************/
UINT8 getLdrValue( void ){
   INT8 adcValue = halAdcSampleSingle(ADC_REF_AVDD, ADC_8_BIT, ADC_INPUT_LDR);

   adcValue = (adcValue > 0) ? adcValue : 0;
   // max 8 bit value from ADC is 0x7F (127)
   adcValue *= 2;

   return 255 - adcValue;
}

/******************************************************************************
* @fn  getXacceleration
*
* @brief
*      This function returns the value of the current acceleration of the of
*      accelerometer in the x-axis.
*
* Parameters:
*
* @param  void
*
* @return UINT8
*         0xFF (255)	+18g (theoretical value)
*	  0x7F (127)      0g no acceleration
*         0x00          -18g (theoretical value)
*
* Wait 20 ms after VCC is turned on before calling this function.
******************************************************************************/
UINT8 getXacceleration( void ){
   INT8 adcValue = halAdcSampleSingle(ADC_REF_AVDD, ADC_8_BIT, ADC_INPUT_ACC_X);
   return (adcValue > 0) ? adcValue : 0;
}

/******************************************************************************
* @fn  getYacceleration
*
* @brief
*      This function returns the value of the current acceleration of the of
*      accelerometer in the y-axis.
*
* Parameters:
*
* @param  void
*
* @return UINT8
*         0xFF (255)	+18g (theoretical value)
*	  0x7F (127)      0g no acceleration
*         0x00          -18g (theoretical value)
*
* Wait 20 ms after VCC is turned on before calling this function.
******************************************************************************/
UINT8 getYacceleration( void ){
   INT8 adcValue = halAdcSampleSingle(ADC_REF_AVDD, ADC_8_BIT, ADC_INPUT_ACC_Y);
   return (adcValue > 0) ? adcValue : 0;
}
#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
波多野结衣在线一区| 日韩专区一卡二卡| 欧美一级爆毛片| av亚洲精华国产精华精华| 日韩高清不卡在线| 亚洲精品欧美二区三区中文字幕| 精品免费视频一区二区| 在线一区二区三区做爰视频网站| 国产精品综合二区| 亚洲超碰精品一区二区| 国产精品久久久久久久久免费樱桃| 91精品国产高清一区二区三区蜜臀| 国产91精品一区二区麻豆网站| 日韩电影在线免费看| 一区二区激情小说| 欧美经典一区二区| 精品国产乱码久久久久久图片| 欧美三级日韩在线| 色综合久久中文字幕综合网| 丰满少妇久久久久久久| 国产一区二区三区av电影 | 久久久久高清精品| 在线电影一区二区三区| 波多野结衣欧美| 国产裸体歌舞团一区二区| 日本女人一区二区三区| 亚洲va韩国va欧美va精品| 一区二区三区四区在线| 自拍偷自拍亚洲精品播放| 欧美国产一区在线| 久久欧美一区二区| 久久免费视频色| 精品少妇一区二区| 日韩女优电影在线观看| 欧美一级电影网站| 日韩欧美亚洲一区二区| 日韩一区二区三区四区五区六区| 欧美日韩国产乱码电影| 欧美日韩国产电影| 欧美日韩国产首页| 欧美精品丝袜久久久中文字幕| 欧美视频在线一区| 在线播放视频一区| 欧美一三区三区四区免费在线看 | 国产无一区二区| 久久久久久久久久久99999| 欧美成人精品高清在线播放| 日韩精品在线看片z| 欧美一区二区三区视频免费| 欧美一区二区人人喊爽| 日韩欧美国产精品| 精品国产第一区二区三区观看体验| 欧美一区二区三区免费大片| 欧美变态tickle挠乳网站| 欧美成人性战久久| 国产校园另类小说区| 国产亚洲欧美日韩日本| 国产欧美精品国产国产专区 | 26uuu欧美| 国产偷国产偷亚洲高清人白洁| 欧美国产精品专区| 亚洲日本电影在线| 亚洲国产美女搞黄色| 秋霞国产午夜精品免费视频| 久久福利资源站| 成人亚洲精品久久久久软件| 91九色最新地址| 欧美一区二区性放荡片| 国产网站一区二区| 一区二区三区加勒比av| 日韩va欧美va亚洲va久久| 狠狠色狠狠色合久久伊人| 成人午夜在线播放| 欧美性生活久久| 欧美精品一区二区三区高清aⅴ| 国产精品免费aⅴ片在线观看| 亚洲精选在线视频| 精品中文av资源站在线观看| 成人丝袜视频网| 欧美日韩一卡二卡三卡| 国产性天天综合网| 午夜精品久久久久久不卡8050| 精品一区二区三区影院在线午夜| 成人一区二区三区中文字幕| 欧美日韩一区二区欧美激情| 国产日本亚洲高清| 午夜久久久久久| 国产v日产∨综合v精品视频| 欧美伊人久久久久久午夜久久久久| 欧美成人bangbros| 亚洲免费在线看| 久草中文综合在线| 欧美综合在线视频| 国产午夜精品理论片a级大结局| 亚洲自拍偷拍综合| 国产成人免费在线观看| 欧美高清一级片在线| 国产精品国产精品国产专区不蜜| 日本在线观看不卡视频| 在线观看免费视频综合| xfplay精品久久| 亚洲www啪成人一区二区麻豆| 成人在线视频一区二区| 日韩区在线观看| 亚洲视频香蕉人妖| 国产精品99久| 欧美一区永久视频免费观看| 亚洲日韩欧美一区二区在线| 狠狠色2019综合网| 欧美精品自拍偷拍| 亚洲欧美日韩国产另类专区| 韩国av一区二区三区四区| 欧美日韩一区二区三区在线 | 午夜精品福利久久久| 不卡高清视频专区| www激情久久| 日本在线观看不卡视频| 91久久精品一区二区| 欧美国产一区视频在线观看| 日产欧产美韩系列久久99| 在线看日韩精品电影| 亚洲欧洲日本在线| 岛国av在线一区| 26uuu国产在线精品一区二区| 免费成人在线观看视频| 91成人免费在线| 一区二区视频免费在线观看| www.日韩大片| 欧美国产禁国产网站cc| 蜜桃免费网站一区二区三区| 在线播放国产精品二区一二区四区| 亚洲女女做受ⅹxx高潮| 91视频一区二区三区| 国产精品久久久久久久蜜臀| 成人97人人超碰人人99| 亚洲综合在线免费观看| 色成人在线视频| 亚洲欧美日韩久久| 日本高清成人免费播放| 亚洲欧美日韩人成在线播放| 色婷婷综合久久久中文字幕| 亚洲三级电影网站| 91蝌蚪porny| 一区二区三区国产| 欧美视频在线不卡| 日韩中文字幕av电影| 欧美一区二区三区视频在线观看| 日本va欧美va精品| 精品国产1区二区| 国产99一区视频免费| 国产精品理伦片| 91久久国产最好的精华液| 亚洲妇女屁股眼交7| 欧美人妖巨大在线| 九九热在线视频观看这里只有精品| 精品99一区二区三区| 粉嫩在线一区二区三区视频| 国产精品久久久久天堂| 91老司机福利 在线| 亚洲综合在线免费观看| 欧美高清视频一二三区 | 成人18精品视频| 亚洲乱码中文字幕| 欧美日韩精品一区二区| 麻豆国产欧美日韩综合精品二区| 2024国产精品| 97久久精品人人爽人人爽蜜臀| 亚洲一区在线观看网站| 日韩视频一区二区三区在线播放| 国产一区二三区| 国产精品福利一区二区三区| 欧美性感一区二区三区| 免费成人小视频| ㊣最新国产の精品bt伙计久久| 欧美自拍偷拍午夜视频| 久久国内精品自在自线400部| 久久久99精品免费观看不卡| 日韩精品一级中文字幕精品视频免费观看 | 日韩精品1区2区3区| 欧美成人综合网站| 91亚洲精品久久久蜜桃| 日韩va欧美va亚洲va久久| 中国色在线观看另类| 欧美少妇bbb| 国产v综合v亚洲欧| 日韩中文字幕亚洲一区二区va在线| 国产亚洲成年网址在线观看| 欧美日韩中字一区| 国产91丝袜在线播放九色| 丝袜美腿一区二区三区| 亚洲国产成人私人影院tom| 欧美区在线观看| 99国产精品视频免费观看| 久久精品国产99久久6| 亚洲色图20p| 久久精品一区四区| 欧美精品1区2区| 色婷婷av一区| 国产成人在线观看| 蜜臀av性久久久久av蜜臀妖精|