Arduino: Variablen und Konstanten: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Zeile 19: | Zeile 19: | ||
// Wird einmalig beim Start ausgeführt | // Wird einmalig beim Start ausgeführt | ||
Serial.begin(9600); // Serielle Übertragung mit 9600 Baude starten | Serial.begin(9600); // Serielle Übertragung mit 9600 Baude starten | ||
Variable_u8 = 0; | Variable_u8 = 0; // Initialisierung der globalen Variable | ||
Serial.println("SETUP"); | Serial.println("SETUP"); | ||
} | } | ||
Zeile 25: | Zeile 25: | ||
void loop() { | void loop() { | ||
// Wird zyklisch ausgeführt | // Wird zyklisch ausgeführt | ||
float Variable_s32 = 0; // lokale Hilfsvariable | float Variable_s32 = 0; // lokale Hilfsvariable anlegen und initialisieren | ||
//Variable_u8 = Addiere(Variable_u8,5); // + | |||
//Variable_u8 = Addiere(Variable_u8,5); | Variable_u8 = Subtrahiere(Variable_u8,5); // - | ||
Variable_u8 = Subtrahiere(Variable_u8,5); | Variable_s32 =(float)Variable_u8/2; // Division | ||
// | |||
Variable_s32 =(float)Variable_u8/2; | Serial.println(Variable_u8); // Ausgabe im seriellen Monitor | ||
Serial.println(Variable_u8); | |||
Serial.println(Variable_s32); | Serial.println(Variable_s32); | ||
delay(1000); // Pause in ms (0,001 s) | |||
delay(1000); // Pause in ms (0,001 s) | |||
} | } | ||
/*******************/ | |||
/* Unterfunktionen */ | |||
/*******************/ | |||
byte Addiere(byte In1_u8,byte In2_u8){ | byte Addiere(byte In1_u8,byte In2_u8){ | ||
byte Ergebnis_u8=0; // Hilfsvarianble anlegen | byte Ergebnis_u8=0; // Hilfsvarianble anlegen | ||
Zeile 41: | Zeile 45: | ||
return Ergebnis_u8; // Rückgabe des Ergebnisses | return Ergebnis_u8; // Rückgabe des Ergebnisses | ||
} | } | ||
byte Subtrahiere(byte In1_u8,byte In2_u8){ | byte Subtrahiere(byte In1_u8,byte In2_u8){ | ||
byte Ergebnis_u8=0; | byte Ergebnis_u8=0; |
Version vom 15. März 2022, 11:50 Uhr
Autor: Prof. Dr.-Ing. Schneider
Inhalt des ersten Termins
- Vorstellung der Arduino Sprach-Referenz
- Datentypen des Arduino (
byte
,int
,float
) - Globale und lokale Variablen
- Konstanten
- Funktionen
#include
Quelltext
/* Deklaration */ byte Variable_u8; // 0..255 Variable const byte KONSTANTE = 0; // 0..255 Konstante void setup() { // Wird einmalig beim Start ausgeführt Serial.begin(9600); // Serielle Übertragung mit 9600 Baude starten Variable_u8 = 0; // Initialisierung der globalen Variable Serial.println("SETUP"); } void loop() { // Wird zyklisch ausgeführt float Variable_s32 = 0; // lokale Hilfsvariable anlegen und initialisieren //Variable_u8 = Addiere(Variable_u8,5); // + Variable_u8 = Subtrahiere(Variable_u8,5); // - Variable_s32 =(float)Variable_u8/2; // Division Serial.println(Variable_u8); // Ausgabe im seriellen Monitor Serial.println(Variable_s32); delay(1000); // Pause in ms (0,001 s) } /*******************/ /* Unterfunktionen */ /*******************/ byte Addiere(byte In1_u8,byte In2_u8){ byte Ergebnis_u8=0; // Hilfsvarianble anlegen Ergebnis_u8 = In1_u8+In2_u8; // + return Ergebnis_u8; // Rückgabe des Ergebnisses } byte Subtrahiere(byte In1_u8,byte In2_u8){ byte Ergebnis_u8=0; Ergebnis_u8 = In1_u8-In2_u8; // - return Ergebnis_u8; }
Hausaufgaben bis zum 3. Termin
- Schreibe eine Funktion
float Dividiere(float In1_s32, float In2_s32)
, die beide übergebene Argumente (In1_s32, In2_s32
) dividiert und das Ergebnis alsfloat
zurückgibt. - Teste die Funktion mit beliebigen Zahlen (z. B.
Dividiere(100, 3)
). - Binde den
ArduinoLibOrdner
ein. Die Anleitung findest Du hier.
Musterlösung
→ zurück zum Hauptartikel: Projekt Alf