Grundkenntnisse Programmierung 4 (USS mit Buzzer): Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
(→tone()) |
||
(6 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 10: | Zeile 10: | ||
['''Quelltext 1: ''' <code>serialBegin.ino</code>] | ['''Quelltext 1: ''' <code>serialBegin.ino</code>] | ||
<syntaxhighlight lang="C" style="border: none; background-color: #EFF1C1; font-size:small"> | <syntaxhighlight lang="C" style="border: none; background-color: #EFF1C1; font-size:small"> | ||
void setup() { | void setup() | ||
{ | |||
Serial.begin(9600); // Öffnet die serielle Schnittstelle und stellt die Datenrate auf 9600 Bit/s ein | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Zeile 20: | Zeile 21: | ||
['''Quelltext 2: ''' <code>printLn.ino</code>] | ['''Quelltext 2: ''' <code>printLn.ino</code>] | ||
<syntaxhighlight lang="C" style="border: none; background-color: #EFF1C1; font-size:small"> | <syntaxhighlight lang="C" style="border: none; background-color: #EFF1C1; font-size:small"> | ||
void loop() { | void loop() | ||
{ | |||
// print labels | // print labels | ||
Serial.print("NO FORMAT"); // Gibt einen Text aus | Serial.print("NO FORMAT"); // Gibt einen Text aus | ||
Serial.println("Carriage-Return"); // Gibt einen Text aus und folgt mit einem Wagenrücklauf (Anfang der nächsten Zeile) | Serial.println("Carriage-Return"); // Gibt einen Text aus und folgt mit einem Wagenrücklauf (Anfang der nächsten Zeile) | ||
} | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Zeile 36: | Zeile 39: | ||
pulseIn(pin, value) //value = HIGH oder LOW | pulseIn(pin, value) //value = HIGH oder LOW | ||
pulseIn(pin, value, timeout) //timeout = Anzahl an Mikrosekunden, die gewartet werden soll, bis ein Impuls gemessen wurde | pulseIn(pin, value, timeout) //timeout = Anzahl an Mikrosekunden, die gewartet werden soll, bis ein Impuls gemessen wurde | ||
/* Beispiel */ | |||
dauer = pulseIn(ECHO_PIN, HIGH); //Zählt die Zeit in Mikrosekunden, bis der Schall zum Ultraschallsensor zurückkehrt | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== Buzzer == | == Buzzer == | ||
===<code>tone()</code>=== | ===<code>tone()</code>=== | ||
Generiert einen Ton mit der angegebenen Frequenz | Generiert einen Ton mit der angegebenen Frequenz auf einem Pin.<br> | ||
Eine Dauer des Tons kann festgelegt werden | Eine Dauer des Tons kann festgelegt werden, bis die Funktion noTone() aufgerufen wird.<br> | ||
<code> dauer = Die Dauer des Tons in Millisekunden (optional) </code> <br> | |||
['''Quelltext 5: ''' <code>tone.ino</code>] | ['''Quelltext 5: ''' <code>tone.ino</code>] | ||
<syntaxhighlight lang="C" style="border: none; background-color: #EFF1C1; font-size:small"> | <syntaxhighlight lang="C" style="border: none; background-color: #EFF1C1; font-size:small"> | ||
void loop() | |||
void loop() { | { | ||
tone(pin, frequency) // Die Frequenz des Tons in Hertz | tone(pin, frequency) // Die Frequenz des Tons in Hertz | ||
tone(pin, frequency, duration) // Die Dauer des Tons in Millisekunden (optional) | tone(pin, frequency, duration) // Die Dauer des Tons in Millisekunden (optional) | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> |
Aktuelle Version vom 21. September 2023, 08:19 Uhr
Autor: Justin Frommberger
Serial Monitor
Serial.begin()
Legt die Datenrate in Bit pro Sekunde (Baud) für die serielle Datenübertragung fest.
- Wird benötigt, um die Hardwareinformationen auf dem Serial Monitor auslesen zu können.
- Diesen findet man im Programm unter Werkzeuge Serial Monitor, in diesem Fenster muss die Baudrate eingetragen werden.
[Quelltext 1: serialBegin.ino
]
void setup()
{
Serial.begin(9600); // Öffnet die serielle Schnittstelle und stellt die Datenrate auf 9600 Bit/s ein
}
Serial.print(ln)
Druckt Daten an den seriellen Anschluss als von Menschen lesbarer ASCII-Text.
[Quelltext 2: printLn.ino
]
void loop()
{
// print labels
Serial.print("NO FORMAT"); // Gibt einen Text aus
Serial.println("Carriage-Return"); // Gibt einen Text aus und folgt mit einem Wagenrücklauf (Anfang der nächsten Zeile)
}
pulseIn()
Liest einen Wert von einem vorgegebenen Digitalpin ein, entweder HIGH oder LOW.
- Wenn value HIGH ist, wartet pulseIn() darauf, dass der Pin auf den Wert HIGH wechselt, startet einen Timer und wartet anschließend darauf, dass der Pin wieder auf LOW wechselt.
- Im nächsten Schritt stoppt pulseIn() den Timer und gibt die Länge des Impulses in Mikrosekunden zurück.
- Wenn ein bestimmter Timeout erreicht wird, wird eine 0 zurückgegeben.
[Quelltext 4: pulseIn.ino
]
pulseIn(pin, value) //value = HIGH oder LOW
pulseIn(pin, value, timeout) //timeout = Anzahl an Mikrosekunden, die gewartet werden soll, bis ein Impuls gemessen wurde
/* Beispiel */
dauer = pulseIn(ECHO_PIN, HIGH); //Zählt die Zeit in Mikrosekunden, bis der Schall zum Ultraschallsensor zurückkehrt
Buzzer
tone()
Generiert einen Ton mit der angegebenen Frequenz auf einem Pin.
Eine Dauer des Tons kann festgelegt werden, bis die Funktion noTone() aufgerufen wird.
dauer = Die Dauer des Tons in Millisekunden (optional)
[Quelltext 5: tone.ino
]
void loop()
{
tone(pin, frequency) // Die Frequenz des Tons in Hertz
tone(pin, frequency, duration) // Die Dauer des Tons in Millisekunden (optional)
}
→ zurück zur Übersicht: Projekte