Opbouw sketch met "Functie"
3 berichten
• Pagina 1 van 1
- spaansebrabander
- Berichten: 76
- Geregistreerd: 05 Nov 2016, 09:42
Opbouw sketch met "Functie"
Ik plaats hier een schets om 6 ledjes een voor een te laten branden, een voor een doven en weer branden. De schets werkt na vele vele uren klungelen. Ik heb hier wel een paar vragen over:
a) zetLampjeAan(i) en zetLampjeUit(j) is m.i. de "aanroep" van de functie, klopt dat?
b) void zetLampjeAan etc en void zetLampjeUit etc beschrijft in feite de functie, is dat zo?
c) void zetLampjeAan en void zetLampjeUit staan buiten de laatste accolade van void loop. moet dat?
d) Om de schets te verduidelijken wilde ik beide functies opsluiten in { }, maar dan zegt hij dat ze niet gedeclareerd zijn. Hoe zit dat?
void setup()
{
// put your setup code here, to run once:
{ for(int k=2; k<=7; k++)
pinMode(k,OUTPUT);
}
}
void loop()
{
{ for (int i = 2; i<=7; i++)
zetLampjeAan (i);
}
{ for (int j = 7; j>=2; j--)
zetLampjeUit (j);
}
} // einde void loop
void zetLampjeAan(int lampje)
{ digitalWrite(lampje,HIGH);
delay(1000);
}
void zetLampjeUit(int lampje)
{ digitalWrite(lampje,LOW);
delay(1000);
}
a) zetLampjeAan(i) en zetLampjeUit(j) is m.i. de "aanroep" van de functie, klopt dat?
b) void zetLampjeAan etc en void zetLampjeUit etc beschrijft in feite de functie, is dat zo?
c) void zetLampjeAan en void zetLampjeUit staan buiten de laatste accolade van void loop. moet dat?
d) Om de schets te verduidelijken wilde ik beide functies opsluiten in { }, maar dan zegt hij dat ze niet gedeclareerd zijn. Hoe zit dat?
void setup()
{
// put your setup code here, to run once:
{ for(int k=2; k<=7; k++)
pinMode(k,OUTPUT);
}
}
void loop()
{
{ for (int i = 2; i<=7; i++)
zetLampjeAan (i);
}
{ for (int j = 7; j>=2; j--)
zetLampjeUit (j);
}
} // einde void loop
void zetLampjeAan(int lampje)
{ digitalWrite(lampje,HIGH);
delay(1000);
}
void zetLampjeUit(int lampje)
{ digitalWrite(lampje,LOW);
delay(1000);
}
Advertisement
Re: Opbouw sketch met "Functie"
druk eens op CTRL T dan heb je allemaal inspringen die maken het duidelijk, en ja alle punten zijn correct die je aangeeft, alleen de laatste die {} zijn voorbehouden om een begin/einde aan te geven, je kunt wel () gebruiken, ik gebruik // en zet dan de beschrijving erachter je en net als jij al doet zet ik er telkens een end comment bij maar ik zet er geen void bij want dat is niet nodig.
Je kunt verder nog verschillende tabs bijzetten, met subs en functies.
maak ook eens een library
opdracht: haal de delay eruit en zet het om met een timer (millis().
Dan heb je een goede basis om complexer te gaan programmeren, dan kun je heel veel dingen tegelijk gaan doen.
Je kunt verder nog verschillende tabs bijzetten, met subs en functies.
maak ook eens een library
opdracht: haal de delay eruit en zet het om met een timer (millis().
Dan heb je een goede basis om complexer te gaan programmeren, dan kun je heel veel dingen tegelijk gaan doen.
paul deelen
shooter@home.nl
shooter@home.nl
3 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: Google [Bot] en 43 gasten