Go Down

Topic: "LOW" doesnt actually keep the pin off (Read 945 times) previous topic - next topic


I just recieved my Arduino board so I'm still trying simple stuff, so don't laugh :-/

I was trying to make a led light light up, whenever you press any of the 4 buttons, but when the program starts first there is a weak light, and when I press a button it lights up a little bit brighter. I just dont get it... I tell the board to keep the pin low when there are no buttons pressed. What is the problem?

Here is the code (the buttons are attached to pins 9-12 and the led is on 13):

int ledPin = 13;
int firstPin = 9;
int secondPin = 10;
int thirdPin = 11;
int fourthPin = 12;
int one = 0;
int two = 0;
int three = 0;
int four = 0;

void setup()
 pinMode(ledPin, OUTPUT);
 pinMode(firstPin, INPUT);
 pinMode(secondPin, INPUT);
 pinMode(thirdPin, INPUT);
 pinMode(fourthPin, INPUT);  
void loop()
 one = digitalRead(whtPin);
 two = digitalRead(bluPin);
 three = digitalRead(redPin);
 four = digitalRead(yelPin);
 if(one == HIGH || two == HIGH || three = HIGH || four = HIGH)
   digitalWrite(ledPin, HIGH);
 else { digitalWrite(ledPin, LOW);}


Jun 29, 2007, 11:14 pm Last Edit: Jun 29, 2007, 11:18 pm by Daniel Reason: 1

does this actually compile?

Code: [Select]
one = digitalRead(whtPin);
 two = digitalRead(bluPin);
 three = digitalRead(redPin);
 four = digitalRead(yelPin);

The whtPin, redPin etc variables are not declared anywhere.
Also, do you have pull-up or pull-down resistors on the switches? Without them the input pin values float, and in  turn this  makes the "if loop" go back and forth, giving you a dim light.



Also you need two equals signs == not one = for a comparison, the three = HIGH should be three == HIGH, etc.


eh... i just changed the variable names so its more understandable here, but it seems that i forgot a few ;)
and yyes, i does compile... its prolly like Daniel said about the resistors.

Thank you ;)

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131