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

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

?? rf04dev.c

?? ti-Chipcon CC251x 2.4G Soc應用開發源碼實例。包括rf,powermodes,clockmodes,flashRW,interrupts,timer,pwm,uart...所有
?? C
字號:
/******************************************************************************
*                                                                             *
*        **********                                                           *
*       ************                                                          *
*      ***        ***                                                         *
*     ***    ++    ***                                                        *
*     ***   +  +   ***                      CHIPCON                           *
*     ***   +                                                                 *
*     ***   +  +   ***                                                        *
*     ***    ++    ***                                                        *
*      ***        ***                                                         *
*       ************                                                          *
*        **********                                                           *
*                                                                             *
*******************************************************************************

Filename:     RF04Dev.c
Target:       cc2510
Author:       KJA
Revised:      20/6-2006
Revision:     1.0

Description:
Implementation of commonly used functions for the RF04EB and CC2430DB.

* For use with CC2430DB add "CC2430DB" to project options.
  Project -> Options... -> C compiler -> Preprocessor -> Defined symbols

* For use with RF04EB do _not_ add "CC2430DB to project options.

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

#include "ioCC2510.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 < 0x10) {
          direction[i] = DOWN;  // Measured [0xFC, 0x03]
       } else if (adcValue < 0x39) {
          direction[i] = LEFT;  // Measured [0x2E, 0x37]
       } else if (adcValue < 0x57) {
          direction[i] = RIGHT; // Measured [0x4C, 0x54]
       } else if (adcValue < 0x67) {
          direction[i] = UP;    // Measured [0x59, 0x64]
       } else {
          direction[i] = CENTRED; // Measured [0x69, 73]
       }
    }

    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一区二区三区免费野_久草精品视频
欧美性极品少妇| 中文字幕欧美区| 国产精品网站一区| 五月天激情综合| 成人丝袜18视频在线观看| 欧美日韩一区二区在线观看视频| 久久久99精品免费观看不卡| 亚洲va欧美va人人爽| jlzzjlzz亚洲女人18| 久久午夜老司机| 青椒成人免费视频| 欧美日韩亚州综合| 亚洲人123区| 波多野结衣中文一区| 久久伊99综合婷婷久久伊| 午夜一区二区三区视频| 在线精品亚洲一区二区不卡| 日韩久久一区二区| 国产成人av网站| 久久婷婷色综合| 蓝色福利精品导航| 欧美精品日韩一区| 天堂一区二区在线免费观看| 欧美日韩午夜在线| 亚洲女同ⅹxx女同tv| hitomi一区二区三区精品| 一区二区三区欧美日| 成人小视频在线观看| 国产精品女上位| 国产黑丝在线一区二区三区| 国产欧美日韩一区二区三区在线观看| 老司机精品视频在线| 日韩欧美激情四射| 免费在线观看不卡| 欧美精品一区二区三区在线| 青青草国产精品97视觉盛宴| 日韩欧美一区电影| 国产一区二区成人久久免费影院 | 欧美国产日韩在线观看| 激情小说欧美图片| 日韩精品一区二区三区中文精品| 蜜臀va亚洲va欧美va天堂| 欧美一级日韩一级| 极品瑜伽女神91| 国产拍欧美日韩视频二区| 成人av网站在线| 亚洲色大成网站www久久九九| 色婷婷亚洲精品| 午夜精品福利一区二区三区蜜桃| 欧美日韩一级黄| 免费在线观看精品| 国产欧美一区二区精品久导航| 成人免费黄色大片| 自拍偷拍国产精品| 5月丁香婷婷综合| 国产精品一线二线三线| 国产精品二三区| 欧美精品vⅰdeose4hd| 久久99热这里只有精品| 国产精品欧美久久久久一区二区| 色综合色综合色综合色综合色综合 | 国产精品欧美久久久久一区二区| 99re在线精品| 日韩综合一区二区| 国产日韩视频一区二区三区| 成人性生交大片免费看视频在线| 一二三区精品视频| 精品国产在天天线2019| 色呦呦一区二区三区| 美女视频黄频大全不卡视频在线播放| 久久九九久久九九| 欧美日韩午夜在线| 成人免费毛片高清视频| 日本视频一区二区三区| 国产精品国产三级国产三级人妇| 欧美美女bb生活片| 99免费精品视频| 精彩视频一区二区| 亚洲午夜精品17c| 中文字幕免费不卡| 日韩美女视频在线| 在线观看成人小视频| 丁香天五香天堂综合| 日本不卡一区二区三区高清视频| 国产精品久久久久天堂| 欧美精品一区二区三区蜜桃| 欧美在线播放高清精品| 高清不卡一二三区| 蜜桃视频在线一区| 午夜欧美2019年伦理| 中文字幕永久在线不卡| 久久免费国产精品| 日韩一区二区在线观看| 日本韩国欧美在线| 国产河南妇女毛片精品久久久| 免费一级片91| 日韩和欧美一区二区| 有码一区二区三区| 中文天堂在线一区| 久久久久国色av免费看影院| 8v天堂国产在线一区二区| 欧美亚洲综合一区| 91国产丝袜在线播放| 91在线精品一区二区三区| 制服丝袜成人动漫| 色综合天天综合色综合av| 懂色av一区二区三区免费观看| 美国一区二区三区在线播放| 日本不卡视频一二三区| 日本午夜一本久久久综合| 天堂va蜜桃一区二区三区漫画版| 亚洲国产中文字幕| 午夜私人影院久久久久| 亚洲自拍偷拍麻豆| 亚洲一二三级电影| 午夜久久久久久久久久一区二区| 一区二区成人在线观看| 亚洲一区二区免费视频| 亚洲制服丝袜av| 亚洲国产中文字幕在线视频综合| 亚洲一区视频在线观看视频| 午夜日韩在线观看| 日韩成人一级大片| 日韩精品一卡二卡三卡四卡无卡| 日本不卡123| 国产一区二区电影| 成人av资源在线| 欧洲精品一区二区三区在线观看| 欧美性色欧美a在线播放| 精品视频123区在线观看| 91.成人天堂一区| 日韩精品一区二| 国产嫩草影院久久久久| 国产精品丝袜黑色高跟| 一区二区三区四区av| 日韩成人午夜电影| 国产精品小仙女| 色综合久久综合网97色综合| 欧美久久久久久久久久| 日韩免费性生活视频播放| 亚洲一区在线看| 久久精品久久99精品久久| 国产成人高清视频| 欧美视频在线一区二区三区 | 欧美国产精品中文字幕| 一区二区三区欧美| 久久国产成人午夜av影院| 成人激情动漫在线观看| 欧美久久一二三四区| 欧美国产精品一区二区| 午夜精品福利一区二区蜜股av| 国产在线视频精品一区| 欧美在线你懂得| 久久久久国色av免费看影院| 亚洲精品一二三四区| 久久se这里有精品| 欧美在线观看一二区| 精品国产sm最大网站| 亚洲激情六月丁香| 国产成人午夜片在线观看高清观看| 91蜜桃网址入口| 久久一日本道色综合| 亚洲第一成人在线| 99精品热视频| 久久综合色婷婷| 午夜成人在线视频| 97久久精品人人爽人人爽蜜臀| 欧美成人aa大片| 亚洲国产精品精华液网站| 丁香啪啪综合成人亚洲小说| 日韩视频一区二区在线观看| 亚洲欧美日韩人成在线播放| 韩国成人精品a∨在线观看| 欧美日韩成人在线| 亚洲免费资源在线播放| 福利视频网站一区二区三区| 在线播放视频一区| 一区二区三区国产精华| voyeur盗摄精品| 久久综合色天天久久综合图片| 日精品一区二区| 欧美片网站yy| 亚洲一区二区三区四区五区中文| 不卡一区二区三区四区| 国产日韩欧美不卡在线| 麻豆视频观看网址久久| 91精品国产日韩91久久久久久| 亚洲美女偷拍久久| 色综合天天视频在线观看| 国产精品久久看| av在线不卡免费看| 中文乱码免费一区二区| 国产suv精品一区二区三区| 久久久亚洲精品石原莉奈| 男女性色大片免费观看一区二区| 欧美日韩国产精选| 日本午夜精品视频在线观看| 在线不卡中文字幕| 日韩av电影免费观看高清完整版| 欧美日韩免费一区二区三区视频|