Forum: Mikrocontroller und Digitale Elektronik Kleiner Beeper bringt AVR zum Absturz...


von Sebastian Wille (Gast)


Lesenswert?

Hallo,

ich habe an meinen Atmel Mega128 einen kleinen Beeper angeschlossen:

[PORT] --- [Beeper] --- [GND]

Nun wollte ich mal den Kammerton A ausgeben (also so 440 Hz). Ich mache
dies im Moment indem ich HIGH anlege, mit einer Schleife warte, dann
wieder LOW, wieder warten usw. Soweit funktioniert das auch und ich
bekomme einen Ton.

Das Problem: Mein Programm stürzt ab. An einem Programmierfehler
kann's nicht liegen, denn wenn ich den Beeper weglasse bzw. eine LED
dranhänge, funktioniert alles.

Wie kann ich den Absturz verhindern? Einen Blockkondensator, eine
Spule, oder wie macht man das?

Es ist übrigens ein Piezo-Beeper, so ein ganz einfacher, wie in den
billigen Organizern...

Vielen Dank im voraus für jeden Tip! :-)

Sebastian

von Jens (Gast)


Lesenswert?

2 dinnge:

transistor als verstärker
ca 5kOhm vor die basis den widerstand an den AVR
emmiter auf gnd
den piepser zwichen vcc und collektor vom npn transistor

evtl noch eien freilaufdiode um den transistor vor der induktivitaet zu
schuetzen

gruss jens

von Michael (Gast)


Lesenswert?

Kammerton A? Mit einer Rechteckschwingung? Viel Spass!

von Sweety (Gast)


Lesenswert?

Ein Piezopiper erzeugt soviel ich weiss eine Gegenspannung wenn man das
Signal abstellt. Was vermutlich dann zum Absturzt führt.


Gruss

Sweety

von Stefan (Gast)


Lesenswert?

Also das Beste wird wohl ein Transi (oder MosFet bei Rechtecksignal) am
Port des µC sein (wie Jens es schreibt).

Wenn du mit Rechteck arbeiten willst, kannst einen MosFet nehmen
(BS170/p-channel). Sparst dir den Basis(Gate)widerstand. Zur der von
Jens angesprochene Freilaufdiode würde ich ebenfalls raten.

Gruß
Stefan @ microlaboratories.com

von Sebastian Wille (Gast)


Lesenswert?

Hi,

vielen Dank Euch allen erst einmal! :-)

OK, Kammerton A, als Rechteckspannung halt. ;-)

Ich denke, ich versuche es erst einmal mit einem Transistor und einer
Freilaufdiode:

            VCC
             |
[PORT] --- [PNP] --- [Beeper] --- [GND]
                  |            |
                  |-----|<-----|

So, oder?!? (Wie ich den Transistor anschließe, ist klar.)

Mit MOSFETs kenne ich mich leider nicht so aus... Welchen Typ kann ich
für 3V-Betrieb verwenden? Und wenn bräuchte ich einen seeeeehr kleinen
als SMD. Gibt's den BS170 auch als SMD? Wie würde dann die Schaltung
aussehen?

Vielen Dank auf jeden Fall soweit! :-)

Sebastian

von Stefan (Gast)


Lesenswert?

Also den BS170 (n-Channel = NPN) oder den BS250 (p-channel = PNP) kannst
du einfach durch deinen Transistor ersetzen. Beide gibt es, zumindestens
bei Reichelt, nur im TO92 Gehäuse.

FET-Anschlüsse: Gate = Basis, Drain = Kollektor, Source = Emitter.

Bei Verwendung eines p-channels den Sourceanschluss auf +Ub und die
Last in den Drainzweig, dann auf GND. Wie bei einem PNP eben.
Schaltstrom vom BSxxx sind 500mA.

Gruß

von Stefan (Gast)


Lesenswert?

Ach ja, den BSxxx kannst du bei 3V direkt an deinen Port hängen, da FETs
im allgmeinen Leistungslos ("kein" Strom nach GATE) angesteuert
werden.

von Sebastian Wille (Gast)


Lesenswert?

Hi Stefan,

vielen Dank! :-)

Ich dachte immer, damit MOSFETs schalten, brauche ich -0,5V oder so.
Also ungeeignet für Mikrocontroller.
Also dieser Typ schaltet bei 0V durch und bei 3V nicht, sehe ich das
richtig?

Vielen Dank nochmal! :-)

Sebastian

von Stefan (Gast)


Lesenswert?

Also ein p-channel schaltet, wenn du von Gate nach Source (Source hängt
hier ja an +U) eine Negative Spannung hast; d.h. wenn du am Gate 3V
hast und am Source 5V, schaltet der FET, da -2V anliegen (U_diff ist
Typenabhängig!!).

Um den FET dagegen zu sperren, braucht es U_GATE = U_Source ! Somit
müsstest du in deinem Falle Source dauerhaft auf 3V legen um den FET zu
sperren, wenn dein µC 3V ausgibt.

Hat es einen Bestimmten Grund, warum du mit LOW schalten willst? Bei
FETs ist das ziemlich egal, ob mit LOW oder mit HIGH (Leistungsmäßig).
Mit HIGH schalten wäre in deinem Falle einfacher. Ansonsten brauchst du
einen Pegelwandler vor deinem FET.

von Hauke Radtki (Gast)


Lesenswert?

oder nimm doch n profet ... damit kannst du auch sehr hohe lasten
schalten, und da gibts viele in SMD! die basieren auf logicleveln, und
es gibt auch viele die mit 3V auskommen

von Stefan (Gast)


Lesenswert?

Wäre die einfachere Lösung ja :)

von Simon Küppers (Gast)


Lesenswert?

Na jetz übertreibt aber mal !

Einfacher N-Channel in die Lowside Strecke einbauen und mit den 3V/0V
ansteuern. Sollte so klappen

von crazy horse (Gast)


Lesenswert?

Sicherheitshalber würde ich einen IGBT nehmen, natürlich incl. passendem
Treiber. Wer weiss, bei Resonanz könnnen sicher Spannungen >1kV
entstehen. :-)

von Thomas (Gast)


Lesenswert?

Hallo,

@Crazy Horse. Was verstehst du unter passendem Treiber? Ist das einfach
ein Transistor der mehr Strom gegen Masse zieht um das Gate umzuladen.
Oder gibts da spezielle Bausteine die dafür bessere Werte haben?

von icke (Gast)


Lesenswert?

google -> Sarkasmus, Ironie

von Thomas (Gast)


Lesenswert?

Hallo,

eine Erklärung würde mir mehr bringen, als was bei googel raus zu
suchen.

von ...HanneS... (Gast)


Lesenswert?

@Thomas:

Den Tip mit IGBT und TreiBÄR verstehe ich etwa so:

Man kann's auch üBÄRtreiben...

oder:

Man kann auch mit Kanonen auf Spatzen schießen...

Da hast du sicherlich das :-) am Ende des Beitrages übersehen... gg

Ich habe Piezo-Piepser schon oft mit CMOS-Gattern wie CD4093 (HEF4093,
V4093) angesteuert und die haben alle üBÄRlebt...

...HanneS...
(der olle BrummBÄR...)

von Thomas (Gast)


Lesenswert?

Hallo,

hättest dann vielleicht "@Crazy Horse:" davor setzten sollen. Dachte
das bezog sich auf mich das ich danach googeln soll.

von ...HanneS... (Gast)


Lesenswert?

Stimmt schon, du solltest nach Sarkasmus und Ironie googeln...

...und dabei feststellen, dass es sich um einen Scherz handelt.

...

von crazy horse (Gast)


Lesenswert?

Gut, dass das jetzt zufriedenstellend geklärt ist :-)

Ich betreibe meine Pieper immer direkt am AVR, was da los sein soll,
kann ich mir nicht recht erklären. Wahrscheinlich hilft schon ein
Widerstand in die Leitung zum Piepser.
Auch immer gut: je eine Diode vom Ausgang nach Vdd und Gnd.

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
Noch kein Account? Hier anmelden.