KY-006 Passives Piezo-Buzzer Modul: Unterschied zwischen den Versionen
Aus Linkerkit.de
(→Codebeispiel Raspberry Pi) |
(→Codebeispiel Arduino) |
||
Zeile 13: | Zeile 13: | ||
Hier bei handelt es sich um ein Beispielprogramm, welches eine LED zum Leuchten bringt, wenn am Sensor ein Signal detektiert wurde. Als LED können z.B. auch unter anderem die Module KY-011, KY-016 oder KY-029 verwendet werden. | Hier bei handelt es sich um ein Beispielprogramm, welches eine LED zum Leuchten bringt, wenn am Sensor ein Signal detektiert wurde. Als LED können z.B. auch unter anderem die Module KY-011, KY-016 oder KY-029 verwendet werden. | ||
− | <pre class="brush:cpp">int | + | <pre class="brush:cpp"> |
− | + | int buzzer = 8 ; // Deklaration des Buzzer-Ausgangspin | |
− | + | ||
− | + | ||
void setup () | void setup () | ||
{ | { | ||
− | pinMode ( | + | pinMode (buzzer, OUTPUT) ;// Initialisierung als Ausgangspin |
− | + | ||
− | + | ||
} | } | ||
− | + | ||
+ | |||
void loop () | void loop () | ||
{ | { | ||
− | + | unsigned char i; | |
− | + | while (1) | |
− | + | ||
{ | { | ||
− | digitalWrite ( | + | // In diesem Programm wird der Buzzer abwechselnd mit zwei verschiedenen Frequenzen angesteuert |
− | + | // Das Signal hierbei besteht aus einer Rechteckspannung. | |
− | + | // Das an- und ausmachen am Buzzer generiert dann einen Ton, der in etwa der Frequenz entspricht. | |
− | + | // Die Frequenz definiert sich dadurch, wie lang jeweils die An- und Ausphase sind | |
− | digitalWrite ( | + | |
+ | //Frequenz 1 | ||
+ | for (i = 0; i <80; i++) | ||
+ | { | ||
+ | digitalWrite (buzzer, HIGH) ; | ||
+ | delay (1) ; | ||
+ | digitalWrite (buzzer, LOW) ; | ||
+ | delay (1) ; | ||
+ | } | ||
+ | //Frequenz 2 | ||
+ | for (i = 0; i <100; i++) | ||
+ | { | ||
+ | digitalWrite (buzzer, HIGH) ; | ||
+ | delay (2) ; | ||
+ | digitalWrite (buzzer, LOW) ; | ||
+ | delay (2) ; | ||
+ | } | ||
} | } | ||
} | } | ||
Zeile 42: | Zeile 55: | ||
{| style="height: 58px; padding-left: 30px;" width="228" | {| style="height: 58px; padding-left: 30px;" width="228" | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
||Sensor Signal | ||Sensor Signal | ||
||= | ||= | ||
− | ||[Pin | + | ||[Pin 8] |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
||Sensor - | ||Sensor - |
Version vom 22. März 2016, 14:09 Uhr
Inhaltsverzeichnis
Bild
Technische Daten / Kurzbeschreibung
Mit PWM-Signalen verschiedener Frequenzen angesteuert, können mit dem passiven Piezo-Buzzer verschiedene Töne erzeugt werden.
Pin-Belegung
Codebeispiel Arduino
Hier bei handelt es sich um ein Beispielprogramm, welches eine LED zum Leuchten bringt, wenn am Sensor ein Signal detektiert wurde. Als LED können z.B. auch unter anderem die Module KY-011, KY-016 oder KY-029 verwendet werden.
int buzzer = 8 ; // Deklaration des Buzzer-Ausgangspin void setup () { pinMode (buzzer, OUTPUT) ;// Initialisierung als Ausgangspin } void loop () { unsigned char i; while (1) { // In diesem Programm wird der Buzzer abwechselnd mit zwei verschiedenen Frequenzen angesteuert // Das Signal hierbei besteht aus einer Rechteckspannung. // Das an- und ausmachen am Buzzer generiert dann einen Ton, der in etwa der Frequenz entspricht. // Die Frequenz definiert sich dadurch, wie lang jeweils die An- und Ausphase sind //Frequenz 1 for (i = 0; i <80; i++) { digitalWrite (buzzer, HIGH) ; delay (1) ; digitalWrite (buzzer, LOW) ; delay (1) ; } //Frequenz 2 for (i = 0; i <100; i++) { digitalWrite (buzzer, HIGH) ; delay (2) ; digitalWrite (buzzer, LOW) ; delay (2) ; } } }
Anschlussbelegung Arduino:
Sensor Signal | = | [Pin 8] |
Sensor - | = | [Pin GND] |
Beispielprogramm Download
Codebeispiel Raspberry Pi
Programmierbeispiel in der Programmiersprache Python
# Benoetigte Module werden importiert und eingerichtet import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) # Hier wird der Ausgangs-Pin deklariert, an dem der Buzzer angeschlossen ist. GPIO_PIN = 24 GPIO.setup(GPIO_PIN, GPIO.OUT) # Das Software-PWM Modul wird initialisiert - hierbei wird die Frequenz 500Hz als Startwert genommen Frequenz = 500 #In Hertz pwm = GPIO.PWM(GPIO_PIN, Frequenz) pwm.start(50) # Das Programm wartet auf die Eingabe einer neuen PWM-Frequenz vom Benutzer. # Bis dahin wird der Buzzer mit der vorher eingegebenen Freuqenz betrieben (Startwert 500Hz) try: while(True): print "----------------------------------------" print "Aktuelle Frequenz: %d" % Frequenz Frequenz = input("Bitte neue Frequenz eingeben (50-5000):") pwm.ChangeFrequency(Frequenz) # Aufraeumarbeiten nachdem das Programm beendet wurde except KeyboardInterrupt: GPIO.cleanup()
Anschlussbelegung Raspberry Pi:
Signal | = | GPIO24 | [Pin 18] |
+V | = | 3,3V | [Pin 1] |
GND | = | Masse | [Pin 6] |
Beispielprogramm Download
Zu starten mit dem Befehl:
sudo python KY-006-RPI_PWM.py