At køre programkode baseret på betingelser er en grundlæggende del af udviklingen. Det er også en fantastisk måde at komme ind i Arduino-programmering på.

Der findes mange kernekommandoer i moderne programmeringssprog. If-else-udsagn er en af ​​de mest almindelige, du vil finde, med både simple og komplekse applikationer.

Men hvordan bruger du en if-else-sætning med en Arduino?

Hvilke programmeringssprog bruger Arduinos?

De fleste Arduino-programmering involverer Arduino IDE. Men hvilket programmeringssprog bruger Arduinos? Compileren arbejder med en brugerdefineret version af C++ kaldet Arduino-programmeringssproget. Selvom det har yderligere klassebiblioteker og grundlæggende funktioner, bruger dette sprog den samme syntaks til standardkommandoer som if-else-sætninger.

Du kan bruge andre compilere til at uploade scripts på andre sprog, som Python, til din Arduino. Sådan er det med mange mikrocontrollere, og der er mange mikrocontroller programmeringssprog tilgængelig i dag.

Hvordan virker en if-else-erklæring på Arduino?

instagram viewer

Hvis udsagn virker ved kun at udløse kode, når visse betingelser er sande. Du kan tilføje en anden blok til en if-sætning; den kører, hvis den oprindelige betingelse ikke er opfyldt.

Sådan skriver du en if-else-erklæring på Arduino

Arduino if-else sætninger bruger C++ syntaks, hvilket gør dem utrolig nemme at skrive. Denne syntaks ligner, hvis ikke identisk, den for mange andre sprog.

Følgende if-else-udsagn tester for at se, om virkeligheden er intakt ved at kontrollere, at man er lig med én.

ugyldigsløjfe(){
hvis (1 == 1) {
Serial.println("Intet at bekymre sig om!");
} andet {
Serial.println("Åh åh.");
}
}

Som forventet er man altid lig med én, og det betyder, at hvis betingelsen altid er opfyldt, udskriver en beroligende besked. Hvis virkeligheden var brudt, og matematikken ikke stemte, ville else-udsagnet dog udløse og udskrive en advarsel.

Sådan bruger du flere betingelser med Arduino if-else-erklæringer

If-else-sætninger kan have flere betingelser at teste, før de udløses. Du kan beskrive forholdet mellem sådanne forhold ved hjælp af AND- og OR-operatorerne. Denne if-else-sætning kontrollerer virkelighedens integritet, mens den også tjekker, om en boolsk variabel er sat til sand.

bool Variabel = rigtigt;

ugyldigsløjfe(){
hvis (1 == 1 && Variabel == rigtigt) {
Serial.println("Intet at bekymre sig om!");
} andet {
Serial.println("Åh åh.");
}
}

Dette eksempel bruger AND (&&) operator, hvilket betyder, at if-sætningen kun udløses, hvis begge betingelser er sande.

bool Variabel = rigtigt;

ugyldigsløjfe(){
hvis (1 == 1 || Variabel == rigtigt) {
Serial.println("Intet at bekymre sig om!");
} andet {
Serial.println("Åh åh.");
}
}

Hvis du bytter dette til en OR (||) operatør, vil if-sætningen udløses, hvis den ene eller begge betingelser er sande.

Sådan tilføjer du opfølgningsbetingelser med Arduino else-if-erklæringer

Som den sidste fase i din if-else-erklærings rejse, er det tid til at tilføje nogle opfølgende betingelser. Du kan gøre dette ved at omdanne else-sætningen til en else-if-sætning:

bool Variabel = rigtigt;

ugyldigsløjfe(){
hvis (1 == 1) {
Serial.println("Intet at bekymre sig om!");
} andethvis (Variabel == rigtigt) {
Serial.println("Åh åh.");
}
}

Ligesom de tidligere udsagn udløses den vigtigste if-sætning, hvis man er lig med én. Hvis dette ikke er tilfældet, vil else-sætningen kun udløses, hvis bool-variablen er sat til sand.

Hvad kan du bruge if-else erklæringer til?

If-else-udsagn er udbredt i programmering. De tilbyder en nem måde at tilføje betinget logik til din Arduino-kode, hvilket gør dem nyttige til en lang række opgaver. Denne type kommando findes dog ikke kun i Arduino-programmeringssproget; næsten alle moderne programmeringssprog har if og if-else-udsagn.

Arduino switch...case: Et alternativ til if-else-udsagn

Selvom if-else-udsagn er gode, er de ikke altid det bedste valg til enhver operation. Hvis du blot skal kontrollere værdien af ​​en variabel og udløse kode i overensstemmelse hermed, er en switch...case-sætning en mere effektiv måde at nå dette mål på.

int Variabel = 1;

ugyldigsløjfe(){
kontakt (Variabel) {
sag1:
Serial.println("Det er en!");
pause;

sag2:
Serial.println("Det er to!");
pause;

sag3:
Serial.println("Det er tre!");
pause;

Standard:
Serial.println("Det er et nummer!");
pause;
}
}

Denne switch-sætning kontrollerer en heltalsvariabels værdi og giver forskellige resultater, hvis tallet er 1, 2 eller 3. Der er også en standardcase, der udløses, hvis ingen af ​​de andre udløser, ligesom den anden del af en if-sætning.

Lær Arduino Coding Fundamentals

At lære at bruge if-else-udsagn i din Arduino-kode er et stort skridt mod at blive en Arduino-mester, men der er meget mere at lære. Mens og for loops, logiske operatorer og en lang række andre fundamentale elementer vil hjælpe dig med at skubbe din Arduino-kode endnu længere.