// Übung Wokwi - Aufgabe 3b - Potentiometer und Piezo (Buzzer, Summer)
//------------------------------------------------------
void setup()
{
// usart mit 115200 baud konfigurieren und starten
Serial.begin(115200);
}
//------------------------------------------------------
void loop()
{
// adc kanal 0 lesen und speichern in a
int a = analogRead(0);
// a (0..1023) in frequenz (500..5000Hz) umrechnen
float f = ((float)a / 1023.0 * 4500.0) + 500.0;
// potentiometer ist NICHT am linken anschlag
if(f > 500.0) {
// tonausgabe an pin 5 mit der frequenz f mit 100% lautstärke
tone(5, (int)f);
// info über die usart ausgeben:
// frequenz (mit 0 kommastellen) und lautstärke
Serial.print(f, 0);
Serial.print(" Hz, Lautstaerke 100%\n");
}
// potentiometer IST am linken anschlag
else{
// tonausgabe an pin 5 stoppen, dh lautstärke 0%
noTone(5);
// info über die usart ausgeben:
// frequenz (mit 0 kommastellen) und lautstärke
Serial.print(f, 0);
Serial.print(" Hz, Lautstaerke 0%\n");
}
// 100ms warten
delay(100);
}