mikrocontroller.net

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


Autor: Sebastian Wille (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kammerton A? Mit einer Rechteckschwingung? Viel Spass!

Autor: Sweety (Gast)
Datum:

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


Gruss

Sweety

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Sebastian Wille (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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ß

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Sebastian Wille (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Hauke Radtki (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wäre die einfachere Lösung ja :)

Autor: Simon Küppers (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na jetz übertreibt aber mal !

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

Autor: crazy horse (Gast)
Datum:

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

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: icke (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
google -> Sarkasmus, Ironie

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

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

Autor: ...HanneS... (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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...)

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

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

Autor: ...HanneS... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stimmt schon, du solltest nach Sarkasmus und Ironie googeln...

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

...

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.