找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2558|回復: 0
打印 上一主題 下一主題
收起左側(cè)

利用AVR制作電壓表

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:75926 發(fā)表于 2015-4-3 23:20 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
                                                                                                     通過研究和實驗,用mega16可以制作5V電壓。電壓值從LED顯示出來。

下面是部分源程序:
uint mega16_ad()
{
     uint addata;
  DDRD|=BIT(4)|BIT(5)|BIT(6);  
  DDRA&=~BIT(PA3);
  PORTA&=~BIT(PA3);
  ADMUX=0x03;
  ADCSR=0X80;//轉(zhuǎn)換使能
  ADCSR|=BIT(ADSC);//開始轉(zhuǎn)換
  while(!(ADCSR&(BIT(ADIF))));//等待轉(zhuǎn)換結束.
  addata=ADC*4.8876;    //轉(zhuǎn)換為四位5V電壓數(shù)
  return addata;
}   

     
void main()
{   
     uint ada;  
  while(1)
  {
      ada=mega16_ad();
       if(ada>2500)
   PORTD&=~BIT(2);//電壓值大于2.5V時LED1亮
   else
   PORTD|=BIT(2);  //否則LED1滅
   
   show(4,ada%10);
   delay(1);
   ada=ada/10;  
   show(3,ada%10);
   delay(1);
   ada=ada/10;
   show(2,ada%10);
   delay(1);
   ada=ada/10;
   showdian(1,ada%10);   
  }

}

                                                                                                                    
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表