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


von Marius S. (lupin) Benutzerseite


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...

von TravelRec. (Gast)


Lesenswert?

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

von Marius S. (lupin) Benutzerseite


Lesenswert?

sehr lustig

von Rolf Magnus (Gast)


Lesenswert?

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

von Marius S. (lupin) Benutzerseite


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

von Marius S. (lupin) Benutzerseite


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.

von Hannes L. (hannes)


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.

...

von Marius S. (lupin) Benutzerseite


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.

von Marius S. (lupin) Benutzerseite


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 :(

von Marius S. (lupin) Benutzerseite


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 :(

von Marius S. (lupin) Benutzerseite


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...

von Marius S. (lupin) Benutzerseite


Lesenswert?

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

von Hannes L. (hannes)


Lesenswert?

Hat der Controller vielleicht JTAG, welches deaktiviert werden müsste?

...

von Marius S. (lupin) Benutzerseite


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 :)

von Hannes L. (hannes)


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.

...

von Marius S. (lupin) Benutzerseite


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?

von TravelRec. (Gast)


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?

von Marius S. (lupin) Benutzerseite


Lesenswert?

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

von TravelRec. (Gast)


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.

von default (Gast)


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.

von default (Gast)


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.

von TravelRec. (Gast)


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.

von Marius S. (lupin) Benutzerseite


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

von noname (Gast)


Lesenswert?

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

von Marius S. (lupin) Benutzerseite


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?

von noname (Gast)


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.

von Marius S. (lupin) Benutzerseite


Lesenswert?

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

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.