Ich habe einen der Mikrofon-Sensoren ergattert, die man für Arduino bzw. Raspberry Pis günstig erwerben kann. Meiner war in einem „37 in 1“-Sensor-Kit enthalten. Schließt man diesen direkt mit A0 an den Arduino an, erhält man allerdings keine sinnvollen Werte, insbesondere weichen diese kaum von 2.5V Eingang ab. Die prinzipielle Schaltung lässt aber auf „D0“ das High bzw. Low erkennen, der Sensor selbst funktioniert also.
Um sinnvoll damit arbeiten zu können, musste ich zunächst einmal den Ausgang entkoppeln, dafür habe ich einen kleinen Kondensator (4.7 uF) angeschlossen. Das aus dem A0-Anschluss dieses Mikrofon-Breakouts erhaltene Signal ist nur zu schwach, muss also deutlich verstärkt werden. Ich habe einen MAX406 gefunden, der herumlag. Mit 470 Ohm als Vorwiderstand und 100 kOhm als Widerstand zwischen IN- und OUT sollte eine etwa 25-fache-Verstärkung herauskommen.
Das Signal aus dem Mikrofon komm ebenfalls an IN-, an IN+ habe ich GND angeschlossen.
Mit einem Piezo-Lautsprecher angeschlossen an GND und PIN9 vom Arduino Uno und das verstärkte Eingangssignal an A0 kann man nun gute das „Knackern“ hören, was vorher nur ein unangenehmes Piepsen war. Im seriellen Output kann man gut nachvollziehen, dass von der Schwallwelle nur eine Seite der Welle verstärkt wird, die andere ist praktisch immer Null und somit kommt auch noch nicht wirklich etwas verständliches heraus. Immerhin sind einfach Testtöne (Sinus-Wellen) darüber schon zu erkennen.
Ein möglicher nächster Schritt wäre nun:
Über einen (einstellbaren) Spannungsteiler die Referenzspannung, die an IN+ gegeben wird, zu verkleinern. Ferner muss das Eingangssignal durch einen 1:1-Spannungsteiler geschickt werden, um dann bei „keinem“ Signal etwa 50% Ausgangssignal zu liefern und dies dann beim Arduino wieder herauszurechnen. So würde das Signal vollständig verstärkt werden.