久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8772|回復: 6
收起左側

AD轉換值怎樣分離個位十位百小數位

[復制鏈接]
ID:12816 發表于 2011-3-22 00:15 | 顯示全部樓層 |閱讀模式
請問如下程序AD轉換值怎樣分離個位十位百小數位謝謝!

float voltage = 0.0; 
//uint V;
float VCC = 4.99;

//======== AD轉換程序 ======================================
uint ADC(uchar Od) 
 {
 uint AD_Result_Temp = 0 ;
 ADC_CONTR = ADC_CONTR|0x80; //1000,0000打開A/D轉換電源
   P1ASF = SET_IO[Od];//
   delayms(20); //20   
   ADC_CONTR = ADC_CONTR & 0xE0; //1110,0000 清ADC_FLAG,ADC_START位和低3位
   ADC_CONTR = ADC_CONTR|((ADC_ID[Od])& 0x07); //設置當前通道號00000111
   delayms(1); //延時使輸入電壓達到穩定
   ADC_RES = 0; //STC12C5A16AD系列單片機_清A/D轉換結果寄存器高八位
   ADC_RESL = 0; //STC12C5A16AD系列單片機_清A/D轉換結果寄存器低二位
   ADC_CONTR = ADC_CONTR|0x08; //0000,1000ADCS = 1,啟動轉換
   do { ; }    
   while((ADC_CONTR & 0x10)==0);     //0001,0000等待A/D轉換結束
   ADC_CONTR = ADC_CONTR&0xE7; //1110,0111清ADC_FLAG位,停止A/D轉換
   AD_Result_Temp = ((AD_Result_Temp|ADC_RES)<<2)|(ADC_RESL&0x03);//高八位+低二位
  return AD_Result_Temp;//ADC_RES;
 } 
//====檢測============================================
void PIS1()  //0.6V~0.8V   0.7V +_ 0.1V
 {
  //VCC = 2.499 * 1024 / ADC(0); //先讀取基準電壓算出供電電壓
  voltage = ADC(1) * VCC / 1024;
   } 

如果要將voltage 這個值用lcd顯示出來應該怎樣分離個位十位百。小數位呢?謝謝!
回復

使用道具 舉報

ID:1 發表于 2011-3-22 01:36 | 顯示全部樓層

你這個是adc0804?

回復

使用道具 舉報

ID:12816 發表于 2011-3-22 03:37 | 顯示全部樓層
以下是引用admin在2011-3-22 1:36:59的發言:

你這個是adc0804?

stc12c5a16ad

voltage本身是個浮點數請問怎樣分離?謝謝!

回復

使用道具 舉報

ID:1 發表于 2011-3-22 19:38 | 顯示全部樓層
  http://www.zg4o1577.cn/mcu/1206.html
回復

使用道具 舉報

ID:28704 發表于 2011-3-25 13:17 | 顯示全部樓層
這個問題很好,我也想知道怎么解決,希望有高手一起來討論。
回復

使用道具 舉報

ID:40045 發表于 2012-5-10 22:04 | 顯示全部樓層
看不懂    看不……
回復

使用道具 舉報

ID:40740 發表于 2012-5-24 22:32 | 顯示全部樓層

/* Temperature data convert *
void TEMCONV()
{
  if(TEM_DATA[1]>127)
  {
    TEM_DATA[0] = (~TEM_DATA[0])+1;
    if((~TEM_DATA[0]) >= 0XFF)
    TEM_DATA[1] = (~TEM_DATA[1])+1;
    else TEM_DATA[1] = ~TEM_DATA[1];
    TEM_SIGN = 1;
  }
  TEMP = TEM_DATA[0]&0X0F;
  TEM_DIS[0] = (TEMP * 10/16);
  TEMP = ((TEM_DATA[0]&0XF0 >> 4) | (TEM_DATA[1]&0X0F) << 4);
  TEM_DIS[3] = TEMP/100;
  TEMP = TEMP%100;
  TEM_DIS[2] = TEMP/10;
  TEM_DIS[1] = TEMP%10;
  if(!TEM_DIS[3])
  {
    TEM_DIS[3] = 10;
    if(!TEM_DIS[2])
    {
    TEM_DIS[2] = 10;
    }
  }
}

/*  Display function *
void DISPLAY()
{

  P2 = SEG_DATA[TEM_DIS[0]];
  P0 = 0X0D;                   //小數點位
      MSDELAY(10);
  P2 = 0XFF;
  P0 = 0X0F;
  P2 = SEG_DATA[TEM_DIS[2]];
  P0 = 0X0B;                 //十位
  MSDELAY(10);
      P2 = 0XFF;
  P0 = 0X0F;
  P2 = SEG_DATA[TEM_DIS[1]];
  P0 = 0X0E;                 //個位
      MSDELAY(10);     
  P2 = 0XFF;
  P0 = 0X0F;
  P2 = 0X7F;
  P0 = 0X0E;                 //小數點
      MSDELAY(10);     
  P2 = 0XFF;
  P0 = 0X0F;
  P2 = SEG_DATA[TEM_DIS[3]];
  P0 = 0X07;                 //百位
      MSDELAY(10);
      P2 = 0XFF;
  P0 = 0X0F;
}

 

 

這是我的溫度數值轉換,你看看

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 午夜在线视频 | 五月天综合网 | 91免费视频观看 | 亚洲中午字幕 | 91精品国产色综合久久 | 欧美一区二区在线播放 | 久久国产一区二区三区 | 亚洲电影中文字幕 | 国产在线一区二区三区 | 国产一级毛片精品完整视频版 | 在线免费观看a级片 | 黄频免费 | 色婷婷精品 | 亚洲超碰在线观看 | 欧美日韩黄色一级片 | 欧美一区二区 | 成年人在线观看 | 中文字幕av高清 | 久热精品在线观看视频 | 日本小视频网站 | av网站免费在线观看 | 精品日韩在线 | 国产精品一区二区久久 | 国产精品欧美一区二区三区 | 日韩在线播放av | 欧美精品综合在线 | 亚洲啊v| 久久激情五月丁香伊人 | 成人午夜精品 | av资源在线看 | 国产在线视频一区 | 成人av电影免费在线观看 | 国产视频三区 | 麻豆亚洲 | 亚洲精品视频免费看 | 99av成人精品国语自产拍 | 国产欧美精品区一区二区三区 | 99这里只有精品 | 久久精品国产一区二区电影 | 午夜小视频在线观看 | 成人精品视频 |