Grundkenntnisse Programmierung 3 (Arduino LED Würfel): Unterschied zwischen den Versionen

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


==<code>random();</code>==
==<code>random();</code>==
* Ist ein Zufallszahlengenerator, um eine random Zahl auszugeben.
Ist ein Zufallszahlengenerator, um eine random Zahl auszugeben.


===<code>randomSeed(analogRead(0))</code>===
===<code>randomSeed(analogRead(0))</code>===
* Weil ein Computer schlecht darin ist random Zahlen zu generieren, benötigt man diesen Befehl.
Weil ein Computer schlecht darin ist random Zahlen zu generieren, benötigt man diesen Befehl.
* Darum wird ein nicht verbundener analog Pin ausgelesen, dieser Wert ist relativ random, da er wie eine Antenne beeinflussbar ist von der Umgebung.
* Dafür wird ein nicht verbundener analog Pin ausgelesen, dieser Wert ist relativ random, da er wie eine Antenne beeinflussbar ist von der Umgebung.


['''Quelltext 4: ''' <code>randomSeed.ino</code>]
['''Quelltext 4: ''' <code>randomSeed.ino</code>]

Version vom 17. August 2023, 07:02 Uhr

Autor: Justin Frommberger

digitalWrite()

Schreibt einen HIGH- oder LOW-Wert auf einen Digitalpin.

Tabelle 1: digitalWrite(PIN, HIGH/LOW);
PIN Die Arduino-Pinnummer.
value HIGH = 5V(an) oder LOW = 0V(aus).

[Quelltext 1: digitalWrite.ino]

void loop ( ) 
{
  digitalWrite(pin, value); 
}

digitalRead()

Liest einen Wert von einem vorgegebenen Digitalpin ein, entweder HIGH oder LOW.

[Quelltext 2: digitalRead.ino]

void loop ( ) 
{
int ledPin = 13; // LED verbunden mit Digitalpin 13
int inPin = 7;   // Button verbunden mit Digitalpin 7
int val = 0;     // Variable, um den gelesenen Wert zu speichern

void setup() {
  pinMode(ledPin, OUTPUT); // Setzt den Digitalpin 13 als Outputpin
  pinMode(inPin, INPUT);   // Setzt den Digitalpin 7 als Intputpin
}
void loop() {
  val = digitalRead(inPin);  // Liest den Inputpin
  digitalWrite(ledPin, val); // Setzt die LED auf den Wert des Buttons
 }
}

analogRead()

Liest den Wert vom angegebenen analogen Pin ein.

  • Die Arduino-Boards enthalten einen 10-Bit-Analog-zu-Digital-Konverter.
  • Zwischen 0 und 5 V auf Integer-Werte zwischen 0 und 1023 (Zahl).

[Quelltext 3: analogRead.ino]

void loop() {
  Variable = analogRead(analogPin); // Speichert die Werte vom Pin in der Variable
}

random();

Ist ein Zufallszahlengenerator, um eine random Zahl auszugeben.

randomSeed(analogRead(0))

Weil ein Computer schlecht darin ist random Zahlen zu generieren, benötigt man diesen Befehl.

  • Dafür wird ein nicht verbundener analog Pin ausgelesen, dieser Wert ist relativ random, da er wie eine Antenne beeinflussbar ist von der Umgebung.

[Quelltext 4: randomSeed.ino]

void setup() {
  randomSeed(analogRead(0));
}

void loop() {
  randNumber = random(7);   // Random Zahl von 1 bis 6
}



→ zurück zur Übersicht: Projekte