GEEKCH 发表于 2014-2-7 14:58:06

模拟电压表 LED等老乱闪 准度不够求帮助


/*
voltmeter
BY CH
2014-2-7
*/
#define newLED 2
#define okLED 4
#define oldLED 6

int analogValue=0;
float voltage=0;
int ledDelay=100;

void setup()
{
pinMode(newLED,OUTPUT);
pinMode(okLED,OUTPUT);
pinMode(oldLED,OUTPUT);
}

void loop()
{
analogValue=analogRead(1);
voltage=0.0048*analogValue;
digitalWrite(newLED,LOW);
digitalWrite(okLED,LOW);
digitalWrite(oldLED,LOW);
if(voltage>=1.5)
{
    digitalWrite(newLED,HIGH);
    delay(ledDelay);
    digitalWrite(newLED,LOW);
}
else if(voltage<1.5 &&voltage >1.3)
{
    digitalWrite(okLED,HIGH);
    delay(ledDelay);
    digitalWrite(okLED,LOW);
}
else if(voltage<=1.3)
{
    digitalWrite(oldLED,HIGH);
    delay(ledDelay);
    digitalWrite(oldLED,LOW);
}
}
/*
END
*/
/*
void setup()
{
pinMode(2,OUTPUT);
pinMode(4,OUTPUT);
pinMode(6,OUTPUT);
}
void loop()
{
digitalWrite(2,HIGH);
digitalWrite(4,HIGH);
digitalWrite(6,HIGH);
}
*/

LED灯老乱闪 测试功能正常 就是能否使其在正常状态下不闪 如果模拟端口1上什么都不接入就亮绿灯 太奇怪了 求帮助

[email protected] 发表于 2014-2-7 20:11:57

模拟口本身因为环境干扰,有波动的。
接个下拉电阻?

GEEKCH 发表于 2014-2-8 10:14:15

[email protected] 发表于 2014-2-7 20:11 static/image/common/back.gif
模拟口本身因为环境干扰,有波动的。
接个下拉电阻?

好主意!谢谢

xuliya282 发表于 2014-2-8 12:55:54

又学了一招。

suoma 发表于 2015-4-17 15:13:41

你的是多少范围?
页: [1]
查看完整版本: 模拟电压表 LED等老乱闪 准度不够求帮助