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

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

?? rf04dev.c

?? chipcon的cc2430芯片基本操作的全部源代碼
?? C
字號:
/******************************************************************************
*                                                                             *
*        **********                                                           *
*       ************                                                          *
*      ***        ***                                                         *
*     ***    ++    ***                                                        *
*     ***   +  +   ***                      CHIPCON                           *
*     ***   +                                                                 *
*     ***   +  +   ***                                                        *
*     ***    ++    ***                                                        *
*      ***        ***                                                         *
*       ************                                                          *
*        **********                                                           *
*                                                                             *
*******************************************************************************

Filename:     RF04Dev.c
Target:       cc2430
Author:       KJA
Revised:      16/12-2005
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 "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

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区免费毛片爱| 国产精品亚洲专一区二区三区| 看电视剧不卡顿的网站| 国产91在线|亚洲| 欧美精品三级日韩久久| 国产精品国产自产拍高清av| 美国十次综合导航| 在线视频国内自拍亚洲视频| 中文字幕精品一区| 另类的小说在线视频另类成人小视频在线| 99r精品视频| 国产亚洲一区二区三区| 五月天欧美精品| 色八戒一区二区三区| 亚洲国产成人午夜在线一区| 免费在线观看成人| 欧美午夜精品一区| 亚洲人成网站精品片在线观看| 国产成人亚洲综合a∨婷婷| 欧美理论片在线| 亚洲国产另类av| 色婷婷av一区二区三区gif | 久久不见久久见免费视频1| 一本大道综合伊人精品热热| 久久精品视频免费| 麻豆成人久久精品二区三区红| 7777精品伊人久久久大香线蕉的| 一区二区三区日韩精品视频| 99综合电影在线视频| 中文子幕无线码一区tr| 成人黄色在线网站| 国产精品久久久久久久久晋中| 岛国精品一区二区| 中文字幕av在线一区二区三区| 国产一区不卡视频| 国产日韩欧美一区二区三区乱码| 国产麻豆一精品一av一免费| 久久久久久久免费视频了| 国产乱国产乱300精品| 久久久蜜桃精品| 福利视频网站一区二区三区| 中文字幕一区二区三区四区不卡| www.色综合.com| 亚洲精品国产高清久久伦理二区| 在线免费视频一区二区| 午夜欧美在线一二页| 欧美一区二区美女| 激情成人综合网| 亚洲欧洲av在线| 欧美在线视频全部完| 麻豆精品一区二区av白丝在线| 欧美电影精品一区二区| 国产精一区二区三区| 中文字幕亚洲视频| 欧美日韩国产大片| 黑人精品欧美一区二区蜜桃| 国产精品美女一区二区在线观看| 色哟哟欧美精品| 日韩va亚洲va欧美va久久| 精品国产乱码久久久久久老虎 | 丝袜脚交一区二区| 亚洲精品一区二区三区福利| 成人激情黄色小说| 亚洲国产日韩综合久久精品| 精品久久人人做人人爰| 不卡免费追剧大全电视剧网站| 亚洲国产精品人人做人人爽| 亚洲成人激情社区| 日韩一区二区三| 99国内精品久久| 麻豆精品蜜桃视频网站| 亚洲色大成网站www久久九九| 欧美一区二区视频在线观看 | 日本在线不卡视频一二三区| 日本一区二区电影| 欧美一区二区三区免费| av中文字幕亚洲| 精品在线视频一区| 亚洲午夜av在线| 国产精品免费久久| 日韩亚洲欧美高清| 在线一区二区三区做爰视频网站| 九色综合狠狠综合久久| 亚洲午夜影视影院在线观看| 欧美国产丝袜视频| 精品免费视频一区二区| 欧美日韩午夜在线| 99久久久久久| 国产成人在线观看免费网站| 日本欧美大码aⅴ在线播放| 亚洲精品免费一二三区| 久久久精品人体av艺术| 在线成人免费视频| 在线观看中文字幕不卡| 丁香婷婷综合色啪| 黄页网站大全一区二区| 蜜臀va亚洲va欧美va天堂| 亚洲五码中文字幕| 一区二区三区精品视频在线| 亚洲欧洲成人精品av97| 欧美国产国产综合| 国产情人综合久久777777| 精品国产免费久久| 日韩精品一区二区三区视频播放 | 日韩免费观看高清完整版| 欧美在线综合视频| 91国偷自产一区二区三区成为亚洲经典| 国产一区在线视频| 国产毛片精品一区| 国产激情一区二区三区桃花岛亚洲| 美女网站一区二区| 蜜臀av一区二区在线免费观看| 日韩国产欧美三级| 琪琪一区二区三区| 麻豆成人91精品二区三区| 麻豆精品国产91久久久久久| 男人的j进女人的j一区| 日韩精品1区2区3区| 强制捆绑调教一区二区| 久久不见久久见免费视频7| 精彩视频一区二区三区| 国产麻豆精品一区二区| 丁香婷婷综合激情五月色| 不卡一区二区中文字幕| 一本久久综合亚洲鲁鲁五月天| 91蜜桃婷婷狠狠久久综合9色| 在线视频一区二区三区| 欧美日韩亚洲综合一区二区三区| 91精品国产综合久久国产大片| 欧美一区国产二区| 久久久久成人黄色影片| 国产精品国产三级国产aⅴ原创| 亚洲蜜臀av乱码久久精品蜜桃| 亚洲综合一二区| 蜜臀久久久久久久| 国产91丝袜在线播放0| 91麻豆免费视频| 欧美一区二区三区四区视频| 久久午夜羞羞影院免费观看| 欧美激情在线一区二区三区| 亚洲激情中文1区| 日本大胆欧美人术艺术动态| 精品亚洲porn| 日本韩国欧美三级| 欧美大肚乱孕交hd孕妇| 中文字幕一区二区三区色视频 | 日韩和的一区二区| 国产福利精品一区二区| 91成人看片片| 欧美精品一区二区三区久久久| 亚洲欧美综合色| 麻豆国产精品视频| 91首页免费视频| 亚洲精品在线电影| 亚洲午夜国产一区99re久久| 韩国av一区二区三区四区| 色综合av在线| 久久人人爽爽爽人久久久| 夜夜嗨av一区二区三区中文字幕 | 亚洲va国产天堂va久久en| 国产精品综合二区| 欧美色爱综合网| 中文字幕精品三区| 久久精品国产精品亚洲精品| 色偷偷一区二区三区| www久久精品| 视频在线观看国产精品| 成人h版在线观看| 欧美videossexotv100| 亚洲天堂免费看| 国产v综合v亚洲欧| 欧美大片在线观看一区| 亚洲国产色一区| 色综合一区二区| 国产精品丝袜在线| 精品亚洲成a人在线观看| 欧美精品在欧美一区二区少妇| 中文字幕亚洲欧美在线不卡| 国产剧情一区二区| 欧美刺激脚交jootjob| 日韩国产欧美在线观看| 欧美色视频一区| 亚洲欧美日韩国产中文在线| 豆国产96在线|亚洲| 久久精品无码一区二区三区| 精品一二线国产| 欧美v日韩v国产v| 久久精品国产一区二区三| 在线播放欧美女士性生活| 亚洲国产一区二区视频| 欧亚洲嫩模精品一区三区| 亚洲精品国产无天堂网2021| 成人国产精品免费网站| 国产精品美女久久福利网站| 国产不卡在线视频| 国产精品人妖ts系列视频| 国产·精品毛片| 成人免费一区二区三区视频| 99免费精品视频| 伊人夜夜躁av伊人久久|