专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

利用AVR单片机制作电压表

作者:佚名   来源:本站原创   点击数:  更新时间:2013年10月19日   【字体:

    通过研究和实验,用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;//转换使能
  ADCSR|=BIT(ADSC);//开始转换
  while(!(ADCSR&(BIT(ADIF))));//等待转换结束.
  addata=ADC*4.8876;    //转换为四位5V电压数
  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);  
  }

}

      2009年3月25日

关闭窗口

相关文章