tone()
Beschreibung
Generiert einen Ton mit der angegebenen Frequenz (und 50% duty cycle) auf einem Pin. Eine Dauer des Tons kann festgelegt werden; Sonst wird der Ton abgespielt, bis ein noTone() aufgerufen wird. Der Pin kann an einen Piezo oder an einen Lautsprecher angeschlossen werden, um Töne abzuspielen.
Nur ein Ton kann gleichzeitig abgespielt werden. Wenn bereits ein Ton auf einem anderen Pin abgespielt wird, hat tone() auf einem 2. Pin keinen Effekt. Wenn der Ton auf dem gleichen Pin gespielt wird, setzt der Aufruf der Funktion die Frequenz des Tons.
Die Nutzung der tone() Funktion interferiert mit PWM outputs auf Pin 3 und 11 (Auf Boards außer dem Arduino Mega).
Es ist nicht möglich, Töne mit einer Frequenz niedriger als 31Hz zu erstellen. Für technische Details, siehe Brett Hagman's post.
Syntax
tone(pin, frequency)
tone(pin, frequency, duration)
Parameter
- pin: Der Arduino-Pin, auf dem der Ton generiert werden soll.
- frequency: Die Frequenz des Tons in Hertz. Erlaubte Datentypen: unsigned int.
- duration: Die Dauer des Tons in Millisekunden (optional). Erlaubte Datentypen: unsigned long.
Rückgabewert
Nichts.
Beispielcode
Let's to play "Jingle Bells" song with Arduino.
Hardware Required
Wiring Diagram
This image is created using Fritzing. Click to enlarge image
Arduino Code
For more detailed instruction, see Arduino - Piezo Buzzer
※ Anmerkungen und Warnungen:
Wenn du verschiedene Töne auf mehreren Pins spielen willst, musst du zunächst mit noTone() auf einem Pin den Ton stoppen und anschließend mit tone() auf dem nächsten Pin einen neuen Ton generieren.
Siehe Auch
- Sprache : noTone()
- Sprache : pulseIn()
- Sprache : pulseInLong()
- Sprache : shiftIn()
- Sprache : shiftOut()
- Beispiel : Arduino - Piezo Buzzer
※ ARDUINO KAUFEMPFEHLUNG
Arduino UNO R3 | |
Arduino Starter Kit |