Grundkenntnisse Programmierung 3 (Arduino LED Würfel): Unterschied zwischen den Versionen
K (Justin Frommberger verschob die Seite Grundkenntnisse Programmierung (Arduino LED Würfel) nach Grundkenntnisse Programmierung 3 (Arduino LED Würfel): Falsch geschriebener Name) |
|||
Zeile 59: | Zeile 59: | ||
===<code>randomSeed(analogRead(0))</code>=== | ===<code>randomSeed(analogRead(0))</code>=== | ||
Es ist schwierig für einen Computer, "echte" Zufallszahlen zu generieren, da das Computerprogramm in einem geschlossenen Zustand ohne direkte Einflüsse von außen ist. Jedoch kann man durch das Auslesen eines Bits, das von Ereignissen außerhalb des geschlossenen Zustands beeinflusst wird und als eine Art Antenne fungiert, sehr gute zufällige Zahlen erhalten.<br> | |||
Dafür 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. | ||
Version vom 21. September 2023, 08:10 Uhr
Autor: Justin Frommberger
digitalWrite()
Schreibt einen HIGH- oder LOW-Wert auf einen Digitalpin.
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))
Es ist schwierig für einen Computer, "echte" Zufallszahlen zu generieren, da das Computerprogramm in einem geschlossenen Zustand ohne direkte Einflüsse von außen ist. Jedoch kann man durch das Auslesen eines Bits, das von Ereignissen außerhalb des geschlossenen Zustands beeinflusst wird und als eine Art Antenne fungiert, sehr gute zufällige Zahlen erhalten.
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