vraag van een beginner
2 berichten
• Pagina 1 van 1
vraag van een beginner
Hallo allemaal,
wij willen dat als we op een drukknop drukken hij dan begint af te spelen en als we nog een keer drukken hij stop. hoe kunnen we dat doen?
nu hebben we onderstaande maar werkt schakelaar niet. hij blijft aan 1 stuk door afspelen.
ik hoop op advies.
met vriendelijke groet,
Sander
const int input=8;
void setup()
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, INPUT);
int s=100;
}
void loop(){
if (input=HIGH)
{
digitalWrite(2, HIGH);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
}
else
{
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
}
}
wij willen dat als we op een drukknop drukken hij dan begint af te spelen en als we nog een keer drukken hij stop. hoe kunnen we dat doen?
nu hebben we onderstaande maar werkt schakelaar niet. hij blijft aan 1 stuk door afspelen.
ik hoop op advies.
met vriendelijke groet,
Sander
const int input=8;
void setup()
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, INPUT);
int s=100;
}
void loop(){
if (input=HIGH)
{
digitalWrite(2, HIGH);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
delay(s);
}
else
{
digitalWrite(2, LOW);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
}
}
Advertisement
Re: vraag van een beginner
Inderdaad een beginnersprobleem.
Wat is input?
jij schrijft dat input =8 prima maar je bedoelt dus pininput
dus eigenlijk moet er staan
const byte pininput=8;
pinMode(pininput, INPUT);
dan in de loop
boolean ingang=digitalRead(pininput);
vervolgens
if (ingang){
een nadeel is wel dat als je drukt dan wordt de hele sequence gedaan.
maar dan moet je toch gaan kijken naar timer met millis().
de naam input mag niet omdat die door arduino gebruikt wordt.
dat starten en stoppen kun je het beste doen met een vlag zoals aanuit
if ingang en aanuit dan aanuit=false
if ingang en !aauit dan aanuit=true
zo ik heb genoeg aanwijzingen gegeven, het is de bedoeling dat je hetzelf uitpuzzelt.
Wat is input?
jij schrijft dat input =8 prima maar je bedoelt dus pininput
dus eigenlijk moet er staan
const byte pininput=8;
pinMode(pininput, INPUT);
dan in de loop
boolean ingang=digitalRead(pininput);
vervolgens
if (ingang){
een nadeel is wel dat als je drukt dan wordt de hele sequence gedaan.
maar dan moet je toch gaan kijken naar timer met millis().
de naam input mag niet omdat die door arduino gebruikt wordt.
dat starten en stoppen kun je het beste doen met een vlag zoals aanuit
if ingang en aanuit dan aanuit=false
if ingang en !aauit dan aanuit=true
zo ik heb genoeg aanwijzingen gegeven, het is de bedoeling dat je hetzelf uitpuzzelt.
paul deelen
shooter@home.nl
shooter@home.nl
2 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: oxiriewatizi en 27 gasten