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

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

?? adc.c

?? CC2430的液晶顯示程序
?? C
字號:
/******************************************************************************
Filename:     adc.c
Target:       cc2430
Revised:      16/12-2005
Revision:     1.0

Description:
    This application shows how to use the AD-converter (single sample mode).

    When the potmeter at the Evaluation Board is turned, the output voltage is
    sampled, converted and written to LCD. The blinking speed of the green and
    yellow LEDs is adjusted according to the voltage.
    The direction of the joystick is shown on the LCD.

******************************************************************************/
#include <string.h>
#include "RF04EB.h"
#include "app_ex.h"
#include "menu.h"
#include "lcd128_64.h"
#include "hal.h"

// Prototypes
void initAdc(void);
void adc_main(void);
void updateVoltageLCD(INT8 potVoltage, INT8 adc_value);
void updateJoystickDirectionLCD(JOYSTICK_DIRECTION direction);
void updateCounter(INT8 delay);
INT8 scaleValue(INT8 adc_value);


/******************************************************************************
* @fn  initAdc
*
* @brief
*      Initializes components for use with the ADC application example (e.g.
*      LEDs, PotMeter, Joystick).
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
void initAdc(void)
{
//   initLcd();

   SET_MAIN_CLOCK_SOURCE(CRYSTAL);

   //init LEDs
//   INIT_GLED();
//   INIT_YLED();

   INIT_POT();
//   INIT_JOYSTICK();
}


/******************************************************************************
* @fn  adc_main
*
* @brief
*      Main function of the ADC application example.
*
* Parameters:
*
* @param  void
*
* @return void
*
******************************************************************************/
#ifdef COMPLETE_APPLICATION
void adc_main(void){
#else
void main(void){
#endif
//   JOYSTICK_DIRECTION joystickDirection = CENTRED;
   INT8 adc_value;
   UINT8 potVoltage = 0;
//   BOOL updateLCD = TRUE;

   initAdc();

   while( !stopApplication() ){
      ADC_ENABLE_CHANNEL(7);
      ADC_SINGLE_CONVERSION(ADC_REF_AVDD | ADC_8_BIT | ADC_AIN7);
      ADC_SAMPLE_SINGLE();

      while(!ADC_SAMPLE_READY());

      ADC_DISABLE_CHANNEL(7);

      adc_value = ADCH;

         //potVoltage changed since last sample
         potVoltage = scaleValue(adc_value);
         updateVoltageLCD(potVoltage,potVoltage);

         if(LanguageSel == 1)
         {
              Print6(3,20, "press cancel.",1);
              Print6(4,20, "to out...      ",1);
         }
         else
         {
             Print(1,1,"按CANCEL鍵返回.",1);
         }
         while (K_CANCEL != ScanKey());


/*      if (joystickDirection != getJoystickDirection()){
         //joystickDirection change since last sample
         joystickDirection = getJoystickDirection();
         updateLCD = TRUE;
      }

      if (updateLCD){
         updateVoltageLCD(potVoltage, adc_value);
         updateJoystickDirectionLCD(joystickDirection);
         updateLCD = FALSE;
      }
*/
      updateCounter(adc_value);
   }

//   LED1 = LED3 = LED_OFF;
   return;
}


/******************************************************************************
* @fn  updateCounter
*
* @brief
*      Function for updating counting speed for binary counter
*
* Parameters:
*
* @param  INT8  delay
*         New counting delay
*
* @return void
*
******************************************************************************/
void updateCounter(INT8 delay)
{
   static UINT8 counter = 0;
   UINT16 i = 0;

   i = ((delay > 0) ? 0x7F - delay : 0x7F);
   halWait( i );

   counter++;

   SET_LED_MASK( (BYTE)counter );
}


/******************************************************************************
* @fn  scaleValue
*
* @brief
*      Function for scaling ADC value according to current VDD
*
* Parameters:
*
* @param  INT8  adc_value
*         Sampled ADC value
*
* @return INT8
*         Scaled value (output voltage)
*
******************************************************************************/
#define VDD 33
// return 10 times sampled voltage
INT8 scaleValue(INT8 adc_value)
{
   //0x0000 = 0V and 0x0F = 3.3V
   float v;

   adc_value = (adc_value > 0 ? adc_value : 0);
   v = ((float)adc_value / (float)0x7F);
   v *= VDD;
   return (INT8)v;
}


/******************************************************************************
* @fn  updateVoltageLCD
*
* @brief
*      Function for printing PotVoltage and sampled ADC value to LCD.
*
* Parameters:
*
* @param  INT8  potVoltage
*         Potmeter voltage
*
*         INT8 adc_value
*         Sampled ADC value
*
* @return void
*
******************************************************************************/
void updateVoltageLCD(INT8 potVoltage, INT8 adc_value)
{
   char s[16];
   // potVoltage is 10 times correct voltage
   // print dc value on LCD
   sprintf(s, (char*)"%d.%d Volt (%d)",  ((INT16)(potVoltage / 10)), ((INT16)(potVoltage % 10)), adc_value);
//   lcdUpdate((char*)"Voltage is:", s);
   if(LanguageSel == 1)
   {
       Print6(3,20, "Voltage is",1);
       Print6(4,20, (INT8U *)s,1);
   }
   else
   {
       Print(1,8,"電壓為:",1);
       Print6(4,20, s,1);
   }
}


/******************************************************************************
* @fn  updateJoystickDirectionLCD
*
* @brief
*      Function for printing new Joystick direction to LCD.
*
* Parameters:
*
* @param  JOYSTICK_DIRECTION  direction
*         Current joystick direction
*
* @return void
*
******************************************************************************/
/*
void updateJoystickDirectionLCD(JOYSTICK_DIRECTION direction)
{
   char d;
   switch (direction){
   case DOWN:
      d = ARROW_DOWN;
      break;
   case UP:
      d = ARROW_UP;
      break;
   case LEFT:
      d = ARROW_LEFT;
      break;
   case RIGHT:
      d = ARROW_RIGHT;
      break;
   case CENTRED:
      d = '*';
      break;
   }
   lcdUpdateChar(LINE1, 15, d);
}
*/

/******************************************************************************
* @fn  adc_init
*
* @brief
*      Initializes ADC application example.
*
* Parameters:
*
* @param  APPLICATION  *a
*         Main application
*
* @return void
*
******************************************************************************/
/*
#ifdef COMPLETE_APPLICATION
void adc_init(APPLICATION *a)
{
   a->menuText = (char*)"ADC";
   a->description = (char*)"Use joys./ pot";
   a->main_func = adc_main;
}
#endif
*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产综合久久久久| 精品视频在线免费看| 九九在线精品视频| 婷婷综合在线观看| 成人一区二区三区中文字幕| 蜜臀av性久久久久蜜臀aⅴ四虎| 午夜一区二区三区在线观看| 亚洲一二三专区| 日韩黄色在线观看| 麻豆一区二区三区| 国产激情视频一区二区三区欧美| 国产成人午夜电影网| 国产激情一区二区三区四区 | 久久精品一区二区三区不卡牛牛| 日韩欧美你懂的| 久久免费美女视频| 自拍视频在线观看一区二区| 亚洲欧美一区二区三区孕妇| 亚洲伊人伊色伊影伊综合网| 日日骚欧美日韩| 国产一区二区不卡老阿姨| 高清不卡在线观看| 波多野结衣亚洲一区| 欧美性猛交一区二区三区精品 | 精品奇米国产一区二区三区| 2024国产精品视频| 日韩美女啊v在线免费观看| 午夜精品福利视频网站| 国产成人精品亚洲午夜麻豆| 色哟哟一区二区| 欧美成人免费网站| 亚洲日本电影在线| 久久er99精品| 在线亚洲一区观看| 日韩久久久久久| 亚洲综合在线五月| 韩国三级电影一区二区| 欧美在线看片a免费观看| 精品捆绑美女sm三区| 一区二区三区在线播| 午夜视频在线观看一区二区三区 | 99国产精品视频免费观看| 欧美日产国产精品| 中文字幕一区二区三区在线播放| 亚洲一区二区av在线| 国产69精品久久久久毛片 | 成人性生交大合| 欧美一区二区福利视频| 亚洲精品五月天| 国产乱人伦精品一区二区在线观看| 色八戒一区二区三区| 国产欧美日本一区二区三区| 免费成人av在线| 日本道色综合久久| 国产精品麻豆视频| 国产老肥熟一区二区三区| 91精品国产高清一区二区三区 | 成人一区二区三区视频在线观看| 91精品国产综合久久精品| 亚洲一区二区三区四区中文字幕| 成人av免费在线观看| 久久精品亚洲一区二区三区浴池| 美女mm1313爽爽久久久蜜臀| 欧美日韩一级二级| 亚洲成人tv网| 欧美日韩成人综合| 亚洲小少妇裸体bbw| 欧洲另类一二三四区| 亚洲天堂久久久久久久| 色综合久久六月婷婷中文字幕| 欧美国产一区在线| 风间由美一区二区三区在线观看 | 日韩欧美不卡一区| 日韩高清不卡一区| 欧美日韩成人综合在线一区二区| 一区二区三区国产精华| 欧美视频中文一区二区三区在线观看| 一区在线中文字幕| 91激情在线视频| 亚洲成人一区二区| 91精品国产91久久久久久最新毛片| 日韩国产一区二| 26uuu亚洲综合色| 国产黑丝在线一区二区三区| 国产精品亲子乱子伦xxxx裸| 一本色道综合亚洲| 亚洲国产成人av好男人在线观看| 欧美日韩国产免费一区二区| 蜜臀av在线播放一区二区三区| 日韩午夜激情视频| 国产精品资源在线看| 日韩一区在线看| 欧美日韩1区2区| 国产激情偷乱视频一区二区三区| 国产精品国产三级国产aⅴ中文| 91蜜桃在线免费视频| 午夜亚洲国产au精品一区二区| 日韩欧美一区二区三区在线| 国产91精品免费| 午夜成人在线视频| 久久精品亚洲麻豆av一区二区| 99国产精品久久久| 日本中文字幕一区二区有限公司| 久久美女艺术照精彩视频福利播放| 成人精品小蝌蚪| 午夜亚洲福利老司机| 欧美国产精品一区| 欧美视频在线不卡| 大胆欧美人体老妇| 日韩**一区毛片| 国产精品美女一区二区| 91精品国产综合久久国产大片| 成人自拍视频在线观看| 日韩高清在线不卡| 亚洲蜜臀av乱码久久精品| 日韩欧美国产1| 色综合久久久网| 国产另类ts人妖一区二区| 亚洲一区二区在线播放相泽| 国产色一区二区| 正在播放亚洲一区| 91美女福利视频| 国产乱妇无码大片在线观看| 午夜精品成人在线视频| 成人免费在线视频观看| 久久综合国产精品| 欧美麻豆精品久久久久久| 99精品视频免费在线观看| 国产一区二区女| 日韩成人免费看| 亚洲一二三四区不卡| 亚洲六月丁香色婷婷综合久久 | 91尤物视频在线观看| 久久99蜜桃精品| 亚洲电影在线播放| 一区二区三区在线观看动漫 | 日韩欧美另类在线| 欧美美女一区二区在线观看| 色噜噜狠狠一区二区三区果冻| 激情六月婷婷久久| 日韩和欧美一区二区| 亚洲国产另类精品专区| 一区二区三区在线观看国产| 亚洲精品五月天| 一区二区三区高清在线| 亚洲欧美国产毛片在线| 亚洲欧洲国产日韩| 亚洲欧美日韩国产手机在线| 日韩一区在线看| 亚洲精品视频在线看| 综合色中文字幕| 亚洲精品国产精华液| 亚洲精品中文在线| 亚洲观看高清完整版在线观看| 亚洲精品videosex极品| 亚洲大型综合色站| 亚洲综合免费观看高清在线观看| 亚洲另类在线一区| 一区二区国产视频| 日韩精品电影在线| 蜜桃视频一区二区三区在线观看| 美女在线视频一区| 国产成人免费网站| 成人avav影音| 在线看国产一区| 欧美一区二区黄| 国产亚洲精品福利| 中文字幕亚洲一区二区va在线| 国产精品激情偷乱一区二区∴| 亚洲欧美一区二区三区极速播放 | 波多野洁衣一区| 欧美优质美女网站| 精品久久久三级丝袜| 亚洲国产成人自拍| 一区二区三区四区蜜桃| 久久精品99国产国产精| 成人美女视频在线观看18| 91热门视频在线观看| 日韩欧美一区二区在线视频| 国产欧美日韩综合精品一区二区| 亚洲精品日韩综合观看成人91| 日本不卡一二三| 成人教育av在线| 日韩一区二区在线播放| 欧美激情一区二区在线| 亚洲国产日韩a在线播放性色| 久久99久久99精品免视看婷婷 | 日本aⅴ免费视频一区二区三区| 国产不卡在线视频| 欧美性大战xxxxx久久久| 久久久亚洲综合| 婷婷综合另类小说色区| 成人黄色综合网站| 欧美一区二区日韩| 自拍偷拍亚洲激情| 国产精品中文欧美| 日韩三级伦理片妻子的秘密按摩| |精品福利一区二区三区| 久久成人久久鬼色| 欧美日韩精品系列|