Grundkenntnisse Programmierung 6 (Arduino Pong Spiel): Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(→static) |
|||
(14 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Kategorie:Arduino: Projekt]] | '''Autor:''' Justin Frommberger<br/> | ||
[[Kategorie:Arduino: Projekt Grundkenntnisse]] | |||
==OLED Display== | ==OLED Display== | ||
Zeile 44: | Zeile 20: | ||
==<code>millis()</code>== | ==<code>millis()</code>== | ||
Gibt die Anzahl von Millisekunden zurück, seit | Gibt die Anzahl von Millisekunden zurück, seit Beginn des Sketches des Arduino Boards. | ||
==<code>bool</code>== | ==<code>bool</code>== | ||
Ein bool enthält einen von zwei Werten, true oder false<br> | Ein bool enthält einen von zwei Werten, true oder false<br> | ||
Jede bool-Variable belegt ein Byte Speicher | Jede bool-Variable belegt ein Byte Speicher.<br> | ||
Variable von True auf False setzen mit: <code> running = !running; </code> | |||
['''Quelltext 1: ''' <code>bool.ino</code>] | |||
<syntaxhighlight lang="c" style="background-color: #EFF1C1; font-size:small"> | |||
int LEDpin = 5; // LED auf Pin 5 | |||
int switchPin = 13; // Momentschalter auf 13, andere Seite mit Masse verbunden | |||
bool running = false; | |||
void setup() { | |||
pinMode(LEDpin, OUTPUT); | |||
pinMode(switchPin, INPUT); | |||
digitalWrite(switchPin, HIGH); // Pullup-Widerstand einschalten | |||
} | |||
void loop() { | |||
if (digitalRead(switchPin) == LOW) { // Schalter wird gedrückt - Pullup hält den Pin normalerweise hoch | |||
delay(100); // Verzögerung zum Entprellen des Schalters | |||
running = !running; // Laufvariable umschalten | |||
digitalWrite(LEDpin, running); // Über LED anzeigen | |||
} | |||
} | |||
</syntaxhighlight> | |||
==<code>static</code>== | ==<code>static</code>== | ||
Variable nur für die aktuelle Funktion, in der sie definiert wurde, sichtbar. <br> | |||
Anders als lokale Variablen, die bei jedem Funktionsaufruf neu belegt werden, behalten statische Variablen deren Wert über das Funktionsende hinaus bei. | Anders als lokale Variablen, die bei jedem Funktionsaufruf neu belegt werden, behalten statische Variablen deren Wert über das Funktionsende hinaus bei. | ||
<br><br> | |||
---- | |||
'''→ zurück zur Übersicht: [https://wiki.hshl.de/wiki/index.php/Konzipierung_und_Evaluierung_von_Arduino-Projekten_verschiedener_Schwierigkeitsgrade_f%C3%BCr_die_Lehre#Projekte_unterschiedlicher_Schwierigkeitsgrade Projekte]''' |
Aktuelle Version vom 21. September 2023, 08:29 Uhr
Autor: Justin Frommberger
OLED Display
display.clearDisplay() | all pixels are off |
display.drawPixel(x,y, color) | plot a pixel in the x,y coordinates |
display.setTextSize(n) | set the font size, supports sizes from 1 to 8 |
display.setCursor(x,y) | set the coordinates to start writing text |
display.print(“message”) | print the characters at location x,y |
display.display() | call this method for the changes to make effect |
millis()
Gibt die Anzahl von Millisekunden zurück, seit Beginn des Sketches des Arduino Boards.
bool
Ein bool enthält einen von zwei Werten, true oder false
Jede bool-Variable belegt ein Byte Speicher.
Variable von True auf False setzen mit: running = !running;
[Quelltext 1: bool.ino
]
int LEDpin = 5; // LED auf Pin 5
int switchPin = 13; // Momentschalter auf 13, andere Seite mit Masse verbunden
bool running = false;
void setup() {
pinMode(LEDpin, OUTPUT);
pinMode(switchPin, INPUT);
digitalWrite(switchPin, HIGH); // Pullup-Widerstand einschalten
}
void loop() {
if (digitalRead(switchPin) == LOW) { // Schalter wird gedrückt - Pullup hält den Pin normalerweise hoch
delay(100); // Verzögerung zum Entprellen des Schalters
running = !running; // Laufvariable umschalten
digitalWrite(LEDpin, running); // Über LED anzeigen
}
}
static
Variable nur für die aktuelle Funktion, in der sie definiert wurde, sichtbar.
Anders als lokale Variablen, die bei jedem Funktionsaufruf neu belegt werden, behalten statische Variablen deren Wert über das Funktionsende hinaus bei.
→ zurück zur Übersicht: Projekte