Arduino Street Traffic Light - set av brödunderläggen Edition (10 / 13 steg)
Steg 10: Använd funktioner!
void loop()
{
digitalWrite(GREEN, HIGH);
digitalWrite(YELLOW, LOW);
digitalWrite(RED, LOW);
När vi börja ha mer komplexa program, kommer vi att ha massor av steg. Att sätta ett utrymme mellan stegen gör programmet mer läsbar; med Fsmörjelsen göra programmet ännu mer läsbar.
Funktioner gör att du till gruppen instruktioner. Funktioner har 3 huvuddelar. Input, instruktioner och utgång!
Idag kommer vi att fokusera på bara gruppering av instruktioner!
Funktioner är bara gillar variabler. En gång din skapar dem, kan du ersätta uppsättningarna av instruktioner du sätter in funktionen i resten av ditt program.
Vrida denna uppsättning instruktioner:void loop()
{
void loop()
{
green_light();
}
}
Till detta:void green_light()
{
digitalWrite(GREEN, HIGH);
digitalWrite(YELLOW, LOW);
digitalWrite(RED, LOW);
}void green_light()
{
green_light();
}
En funktion används istället för instruktioner.
Var som helst du vill göra ett grönt ljus, kan du nu skriva // variables
int GREEN = 2;
int YELLOW = 3;
int RED = 4;
int DELAY_GREEN = 5000;
int DELAY_YELLOW = 2000;
int DELAY_RED = 5000;
// basic functions
voidsetup()
{
// setup LED modesv // we're specifying that we're that
// we're going to send information to this LED
pinMode(GREEN, OUTPUT);
pinMode(YELLOW, OUTPUT);
pinMode(RED, OUTPUT);
}
voidloop()
{
green_light();
delay(DELAY_GREEN);
// code to make a yellow light
delay(DELAY_YELLOW);
// .
* Kom ihåg: Du måste göra en variabel innan du kan använda det!
* Variabler finns i olika områden kallas omfattningar. Ett scope är området mellan en start lockig klammen {och dess matchande avslutande lockig klammen}. I vårt fall ska vi deklarera variabler alla överst i koden. Dessa variabler kallas globala variabler. En global variabel kan användas var som helst i dokumentet.
Exempel:
// basic functions voidloop() // code to make a yellow light // // variables
kod för att göra rött ljus
int GREEN = 2;
int YELLOW = 3;
int RED = 4;
int DELAY_GREEN = 5000;
int DELAY_YELLOW = 2000;
int DELAY_RED = 5000;
voidsetup()
{
// setup LED modesv // we're specifying that we're that
// we're going to send information to this LED
pinMode(GREEN, OUTPUT);
pinMode(YELLOW, OUTPUT);
pinMode(RED, OUTPUT);
}
{
delay(DELAY_GREEN);
delay(DELAY_YELLOW);
Delay(DELAY_RED);
}
void green_light()
{
}
void yellow_light()
{
din kod här
}
void red_light()
{
din kod här
}
//