Arduino: Variablen und Konstanten: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Die Seite wurde neu angelegt: „'''Autor:''' Prof. Dr.-Ing. Schneider == Inhalt des ersten Termins == # Datentypen des Arduino (<code>byte, int, float</code>)…“) |
Keine Bearbeitungszusammenfassung |
||
(12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
'''Autor:''' [[Benutzer:Ulrich_Schneider| Prof. Dr.-Ing. Schneider]] | '''Autor:''' [[Benutzer:Ulrich_Schneider| Prof. Dr.-Ing. Schneider]] | ||
== Inhalt des | == Inhalt des zweiten Termins == | ||
# Datentypen des Arduino (<code>byte, int, float</code>) | # Vorstellung der Arduino [https://www.arduino.cc/reference/de/ Sprach-Referenz] | ||
# Datentypen des Arduino ([https://www.arduino.cc/reference/de/language/variables/data-types/byte/ <code>byte</code>], [https://www.arduino.cc/reference/de/language/variables/data-types/int/ <code>int</code>], [https://www.arduino.cc/reference/de/language/variables/data-types/float/ <code>float</code>]) | |||
# Globale und lokale Variablen | # Globale und lokale Variablen | ||
# Konstanten | |||
# Funktionen | # Funktionen | ||
# | # [https://www.arduino.cc/reference/de/language/structure/further-syntax/include/ <code>#include</code>] | ||
# | |||
== Quelltext == | |||
<div style="width:1200px; height:300px; overflow:auto; border: 2px solid #088"> | |||
# | <pre> | ||
# | /* 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; | |||
} | |||
</pre> | |||
</div> | |||
== Hausaufgaben bis zum 3. Termin == | |||
# Schreibe eine Funktion <code>float Dividiere(float In1_s32, float In2_s32)</code>, die beide übergebene Argumente (<code>In1_s32, In2_s32</code>) dividiert und das Ergebnis als <code>float</code> zurückgibt. | |||
# Teste die Funktion mit beliebigen Zahlen (z. B. <code>Dividiere(100, 3)</code>). | |||
# Binde den <code>ArduinoLibOrdner</code> ein. Die Anleitung findest Du [[Erste_Schritte_mit_der_Arduino_IDE|hier]]. | |||
== Musterlösung == | == Musterlösung == | ||
Zeile 23: | Zeile 65: | ||
* [[Hausaufgaben2_Tipp_2|Tipp 2]] | * [[Hausaufgaben2_Tipp_2|Tipp 2]] | ||
* [[Hausaufgaben2_Lösung|Lösung]] | * [[Hausaufgaben2_Lösung|Lösung]] | ||
---- | |||
→ zurück zum Hauptartikel: [[Projekt_Alf_–_Mobile_Robotik|Projekt Alf]] |
Aktuelle Version vom 17. März 2022, 14:47 Uhr
Autor: Prof. Dr.-Ing. Schneider
Inhalt des zweiten 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