Hallo zusammen, habe ein eigenes Board mit STM32F446VET (LQFP 100). Am Pin PA4/DAC_OUT1 hat das Board wahlweise direkt einen kleinen Lautsprecher mit 8Ohm@1kHz oder den Eingang eines PA angebunden. Zur Inbetriebnahme habe ich den Pin als GPIO direkt mit einem 0/1/0/1 Muster betrieben, um den Lautsprecher piepsen zu hören. Soweit so gut. Jetzt versuche ich den Stromverbrauch zu reduzieren (Low Power) und habe festgestellt, dass der Pin PA4/DAC_OUT1 wenn er nicht als GPIO Out konfiguriert und eine 0 ausgibt eine Spannung von 2.5 Volt ausgibt. Der Strom gegen Masse ist auf 250µA begrenzt (das wären 10 kOhm bei den 3.0V Vdd). Selbst wenn der Controller im Reset gehalten wird, sehe ich eine Spannung von 2.6V, die nach dem Reset auf 2.55 Volt sinkt. Der Pin kann diverse alternative Funktionen übernehmen (GPIO, Analog in, DAC out ohne und mit Buffer, USB_OTG_HS_SOF). Aber die AFR sind auch alle auf 0 gesetzt und die Einheiten nicht geclockt. Da sollte doch nichts rauskommen? Per CubeMX auf GPIO_Analog gesetzt, bleibt die Spannung bei 2.5V, auch HAL_GPIO_DeInit() auf dem Pin ändert nichts. Kann es sein, dass der externe Buzzer durch Induktion einer zu hohen positiven oder negativen Spannung die IO-zelle des Pins beschädigt hat, z.B. eine der Klemmdioden nach Vss oder Vdd und dann so ein Fehlerbild zeigt? Oder gibt es noch andere Fallstricke zu beachten? Besten Dank! Marcel
Eine Zerstörung durch Induktion des Buzzers ist zwar nicht sicher, aber sehr wahrscheinlich. 2 von 3 Boards haben das Problem. Und natürlich ist es ein Anfängerfehler, eine große Spule (Lautsprecher) ohne jeglichen Transistor und Schutz (Freilaufdiode) direkt an einen Prozessorpin zu legen. Gängig scheint zu sein, den Buzzer über einen Transistor anzusteuern und mit einer Freilaufdiode in Sperrichtung parallel zu schalten wie z.B. hier: https://i.stack.imgur.com/dktby.png So sind Prozessor und Transisor geschützt und die Lautstärke ist um Welten besser, als wenn ein Pin nur 20mA treiben kann.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.