Bartv schreef:Ik weet niet heel veel van de Arduino, maar aan je code te zien kijk je of de variabel led true is of niet, en zoja, dan zet je het ledje aan. Maar die blijft nu altijd false, omdat je hem pas op true zet wanneer ie true is, je zet de variabele led nooit op true voordat ie gaat kijken of het true of false is?Ik ben met een arduino een toggle switch aan het maken die een led moet aan/uit schakelen. Nu heb ik dus een code gemaakt waarvan ik denk dat het moet werken. Maar het werkt niet? Het is een momentknop (volgensmij noem je het zo)Eerdere citaten tonen
Jesper schreef:Sorry voor de dubbelpost.int ledPin = 13; int inputPin = 2; int val = 0; bool led = false; void setup() { // put your setup code here, to run once: pinMode(ledPin, OUTPUT); pinMode(inputPin, INPUT); } void loop() { // put your main code here, to run repeatedly: val = digitalRead(2); if(val == LOW){ if(led){ bool led = true; digitalWrite(ledPin, HIGH); }else{ bool led = false; digitalWrite(ledPin, LOW); } } }
Wanneer ik de knop indruk blijft hij uit en ook wanneer ik hem los laat.
Dus je bedoeld dit?
int ledPin = 13;
int inputPin = 2;
int val = 0;
bool led = false;
void setup() {
// put your setup code here, to run once:
pinMode(ledPin, OUTPUT);
pinMode(inputPin, INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
val = digitalRead(2);
if(val == LOW){
if(led){
led = false;
digitalWrite(ledPin, LOW);
}else{
led = true;
digitalWrite(ledPin, HIGH);
}
}
} Zoja, dit werkt ook niet, nu blijft de LED branden ook als ik de knop indruk.
Keffe schreef:Ik had het nog niet gezienIk weet niet heel veel van de Arduino, maar aan je code te zien kijk je of de variabel led true is of niet, en zoja, dan zet je het ledje aan. Maar die blijft nu altijd false, omdat je hem pas op true zet wanneer ie true is, je zet de variabele led nooit op true voordat ie gaat kijken of het true of false is?Eerdere citaten tonen
Bartv schreef:Ik ben met een arduino een toggle switch aan het maken die een led moet aan/uit schakelen. Nu heb ik dus een code gemaakt waarvan ik denk dat het moet werken. Maar het werkt niet? Het is een momentknop (volgensmij noem je het zo)Eerdere citaten tonen
Jesper schreef:Sorry voor de dubbelpost.int ledPin = 13; int inputPin = 2; int val = 0; bool led = false; void setup() { // put your setup code here, to run once: pinMode(ledPin, OUTPUT); pinMode(inputPin, INPUT); } void loop() { // put your main code here, to run repeatedly: val = digitalRead(2); if(val == LOW){ if(led){ bool led = true; digitalWrite(ledPin, HIGH); }else{ bool led = false; digitalWrite(ledPin, LOW); } } }
Wanneer ik de knop indruk blijft hij uit en ook wanneer ik hem los laat.
maar je hebt inderdaad gelijk. Hij moet de if statement omdraaien om het te laten werken
ik denk dat je het beste gewoon kunt zeggen if(!led) of iets in die richtingif(!led) werkt ook niet?


of er moet een LIMIT bij zitten maar dat heb jij niet in je query staan.