09244520 发表于 2009-2-21 16:47:53

ADC0809问题

我是用0809和STC89C51RC做的四位数码管显示的 0-15V 电压表 用到了分压电阻,一个是10K,一个是20K,但是显示怎么总是乱变啊,每位都是,都看不清楚是什么,但是在满量程的时候是准确的(15V),其他小于15的电压的时候总是在闪动,我这是什么问题?软件还是硬件的,请高手详细解答。
void voltagemain(void)
{ uint a=0;
   while(1)
    {
      OE=0;
      ST=0;   
      ST=1;//启动       
      ST=0;        //下降沿信号       
   while(EOC==0);//查询等待转换结果
   OE=1;//打开输出允许信号       
   temp=P0;//读数据
       OE=0;
   result=temp*1500/255;
   vdisp=result/1000;
   vdisp=result/100%10;
   vdisp=result/10%10;
   vdisp=result%10;
   displayout();
       if(a==200)break;
       if(P3_2==0)break;       //开始按钮
       if(result<=1050)break;//是否为10.5V
    a++;
        }
}

ywl0409 发表于 2009-2-21 16:56:20

也许软硬件都有点问题.

chess01 发表于 2009-2-22 18:40:27

可能你的数据线高低位接反了,这样满量程的时候可以正常显示,而其他电压时因为噪音的存在使0809的低位输出跳动,到了cpu就变成高位跳动,转换成10进制就全乱了

09244520 发表于 2009-2-28 16:08:30

我 看了确实是接反了,但是出来的数据还是乱动

njhying 发表于 2014-11-28 10:44:52

敢问LZ是否解决

Ray______ 发表于 2014-11-28 10:50:20

为啥不用增强型带AD的~多方便捏
页: [1]
查看完整版本: ADC0809问题