www.mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Problem mit Reset-spannung am AVR


Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe hier unterscheidliche Typen von ATmega162 16PI. Ich nehme an
das es sich um unterschiedliche Produktionen handelt, die 3te Zeile auf
den Chip ist bei den ersten Typ "0505H" und bei den anderen
"0426F".

Nur die Chips mit "0426F" funktionieren ohne Probleme, die anderen
scheinen Probleme mit den Reset zu haben (flackernde LEDs) denn wenn
ich den Programmieradapter verbinde flackern die LEDs nicht mehr, auch
nachdem ich den ISP-stecker wieder abziehe flackern sie erstmal nicht
mehr.

Ich habe beide chips mit den gleichen Programm beschrieben, beim
"0505H" tritt das Problem nicht auf (gleicher Aufbau der Platine,
gleiche Komponenten)...

Die reset-spannung habe ich mit einen 100nF elko und einen 10uF tantal
und testweise mit einen 2,2nF Kondenstor entstört...

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mach doch mal ´nen PullUp dran, vielleicht haben die den internen bei
ATMEL vergessen ;-)

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sehr lustig

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, Atmel empfielt zumindest einen in seiner AppNote, also würde
ich's damit erstmal versuchen.

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich betreibe den controller mit 3.3v aus einen spannungswandler, diese
3.3v gehen über ein 10k widerstand an den reset pin... also habe ich
sowieso schon einen pullup, oder?

daran wird es wohl nicht liegen

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich den reset pin über ein 10uF tantal entstöre und anstatt mit
3.3v mit 5v von USB ansteuere dann scheint alles zu funktionieren...
das ist aber ziemlich doof.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann verringere doch mal den PullUp. Vielleicht streut ja irgendwelcher
HF-Müll in deine Schaltung ein und dein Layout ist vielleicht nicht
ganz optimal.

Bist du sicher, dass dein Spannungswandler nicht schwingen kann? Stimmt
seine Beschaltung laut Datenblatt? (Keramik-C)

Ist die Betriebsspannung am MC mit 100nF Keramik-C abgeblockt?

Sorry dass ich auf solch banale Dinge verweise, aber viele Anfänger
glauben, sich nicht an die einfachsten Grundregeln des digitalen
Schaltungsaufbaus halten zu müssen. Ein 10µF-Tantal oder gar 1000µF
Elko kann keinen 100nF-Keramik-Kondensator ersetzen. Auch ein
100nF-Elko (erstes Post) kann das nicht.

...

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach ja, es bleiben außerdem alle funktionen erhalten... alles
funktioniert (PC kommunikation und auslesen eines flash speichers) -
nur die LEDs flackern, was mich eigentlich nicht stören würde wenn es
nicht ein zeichen dafür wäre das was nicht stimmt.

Kann es sein das die LEDs zuviel strom ziehen? Würde es da helfen den
widerstand zu erhöhen? es handelt sich um 3 LEDs die direkt am
controller sind (20mA LEDs denke ich) ich benutze einen 470 ohm
widerstand bei 5V.

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim spannungswandler handelt es sich um IRU101533, am ausgang sitzt ein
100uF elko - so steht es im datenblatt. Aber am eingang habe ich
keinen... bei "typical application" im datenblatt sitzt am eingang
zwar auch einer aber bei einer weiteren beschreibung im datenblatt wird
nur der ausgangs-elko erwähnt... naja wenigstens hab ich einen :)

Am microcontroller sitzen der 10uF tantal und ein normaler 100nF
keramik.

Direkt an der reset-leitung habe ich keinen, ich hab aber eben mal
einen 27pF folienkondensator reingelötet und das hat nix geändert.

Ich habe auch mal versucht den pull-up durch einen draht zu ersetzen,
das ging auch nicht.

Ich bin jetzt irgendwie ein wenig verwirrt :(

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch etwas komisches...

Ich habe ein programm geschrieben das beim betätigen eines schalters
eine LED einschaltet und in eine endlosschleife übergeht. Falls der
controller sich wirklich immer wieder selbst-"resetten" sollte dann
müsste die LED beim auslösen des schalters an gehen und danach flackern
und aus gehen aufgrund des resets.

Allerdings konnte ich nach betätigen des schalters die LED einschalten
und der controller hat sich "aufgehängt" (die LED leuchtet auch nach
dem los lassen).

Alles funktioniert im grunde, nur diese LEDs flackern obwohl sie aus
sein müssten :(

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ENTWARNUNG!!!

omg, wie peinlich... ich hab es eben heraus gefunden! Ich habe die
pull-ups von allen Ports an gehabt obwohl ich sie als Ausgang
geschaltet habe - ich weiss nicht ganz genau was da jetzt das Problem
ist aber es flacker nicht mehr :)

Komisch...

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
neee, das war es doch nicht. Das ganze passiert auch nur mit 2 LEDs, die
dritte flacker überhaupt nicht.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat der Controller vielleicht JTAG, welches deaktiviert werden müsste?

...

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ah jetzt habe ich das problem gefunden glaube ich (diesmal wirklich).

Ich war gestern abend etwas durcheinander.

Ich habe den + pol der LEDs mit 5V verbunden und masse an den
controller gelegt so das sie bei "HIGH" aus sind und bei "LOW" an
sind. Anscheinend leuchten die LEDs mit der Differenz aus den 3.3v vom
controller und den 5V... was kann ich da machen? Einfach einen großen
widerstand nehmen so das man das nicht mehr sieht? Oder muss ich jetzt
wirklich leiterbahnen trennen und kabel verlegen (das wäre richtig
schei...)?

Kann ich anstatt des vorwiderstandes dioden benutzen? Dann würde der
eingangs-strom an der LED doch sinken oder? Aber dann hätte ich keinen
vorwiderstand mehr... bitte ein paar Meinungen :)

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Kann ich anstatt des vorwiderstandes dioden benutzen?

Nööö... Aber du kannst die Plus-Leiterbahn der LEDs auftrennen und eine
(oder 2?) Diode(n) in Durchlassrichtung einfügen, dann dürfte der
Spannungsabfall die LEDs verlöschen lassen.

...

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibt es denn LEDs die bei 5v-3.3v noch nicht leuchten? Ich hab mir bei
reichelt mal die datasheets angeschaut aber ich werde nicht so ganz
schlau was da wichtig ist... ich habe zum Beispiel eine LED gefunden
bei der unter "forward voltage: 2.0" stand - reicht das aus damit
meine LED nicht mehr leuchtet?

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marius: weshalb schaltest Du die LEDs nicht nach Masse, dann leuchten
sie, wenn 1 Pegel anliegt und Du bist die Sorge mit den verschiedenen
Versorgungsspannungen los. Aus dem Grunde haben doch die modernen
Controller Endstufen, die in beiden Richtungen recht große Ströme (halt
20mA) treiben können. Im Programm kannst Du die Pegel nötigenfalls
invertieren (1x COM-Befehl in Assembler). Da Masse meist immer
0-Potential hat (gegenüber verschiedenen Vcc), machts doch Sinn, oder?

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
macht sinn, aber die platinen sind fertig und liegen hier, da kann man
sowas nicht mal schnell ändern... irgendwie dumm :(

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Verdammte Axt! Dann vielleicht 2V-Z-Dioden in Serie zu den LEDs - ist
einfacher. Dann mußt Du allerdings die Vorwiderstände etwas reduzieren,
damit noch ein wenig Leuchtkraft ´rauskommt, wenn sie doch leuchten
sollen.

Autor: default (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Keine Ahnung wo man die heute noch herbekommt, aber Feldeffektdioden
anstelle Deines Vorwiderstand würden das Problem lösen. Leiten erst ab
ca. 2V und begrenzen den Strom.

Autor: default (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alles zurück. Hab was falsches erzählt. Bei kleinen Spannungen verhält
sich die FET-Diode wie ein Widerstand, bei größeren dann wie eine
Konstantstromquelle -> geht also doch nicht in Deiner Schaltung.

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Z-Dioden sind schweinebillig bei Reichelt, so ´ne Tüte voll
verschiedener Typen kann man immer ´rumliegen haben. Irgendwann braucht
man sie ja doch.

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab den port pin einfach als eingang geschaltet wenn die LED aus
sein soll - dann fließt auch garantiert kein strom mehr... hoffe ich
:)

Auf die einfachste Lösung kommt man natürlich erst zuletzt :P

Autor: noname (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... hoffe Du hast die internen Schutzdioden noch nicht gehimmelt. Die
sollte man mit nicht mehr als 1mA belasten.

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
aber da fließt doch gar kein strom... oder?

Es geht ja so VCC -> LED -> Eingangspin... Ich denke mal wenn da kein
strom fließt ist die LED doch sowieso hochohmig und lässt keinen strom
durch oder? Also die ist aus. (punkt) :)

Kann mir nochmal jemand sagen ob das gefährlich ist?

Autor: noname (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also, Dein Controller hat VCC=3,3V und die LED liegt zwischen =+5V und
Eingangspin, ja?
Dann hast du die Serienschaltung aus +5V -> LED -> interne
Schottkydiode -> 3,3V.
Wahrscheinlich ist der Strom nicht wirklich so groß, weil an der LED
schon viel Spannung abfällt, wenn Sie gerade anfängt zu leuchten, aber
ist IMHO halt eine unsichere Sache.

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für den Hinweis, ich werde ihn aber aus mangel an optionen blind
ignorieren ;P

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.