Grundkenntnisse Programmierung 6 (Arduino Pong Spiel): Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 21: Zeile 21:


==<code>bool</code>==
==<code>bool</code>==
['''Quelltext 1: ''' <code>bool.ino</code>]
<syntaxhighlight lang="c" style="background-color: #EFF1C1; font-size:small">
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
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>==  
Variablen nur für eine Funktion sichtbar sind. <br>
Variablen nur für eine Funktion sichtbar sind. <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.

Version vom 17. August 2023, 07:13 Uhr

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 das Arduino-Board das aktuelle Programm gestartet hat

bool

[Quelltext 1: bool.ino]

Ein bool enthält einen von zwei Werten, true oder false<br>
Jede bool-Variable belegt ein Byte Speicher

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

Variablen nur für eine Funktion sichtbar sind.
Anders als lokale Variablen, die bei jedem Funktionsaufruf neu belegt werden, behalten statische Variablen deren Wert über das Funktionsende hinaus bei.