atmega8 zu hohe Kapazität eingebaut

Gast #3562874
Lesenswert?

Hallo zusammen!

Habe die ATMega8 Schaltung von

http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment

nachgebaut und bei PIN1 (PC6 Reset) anstatt 47nF 100nF eingebaut. Stellt 
das ein Problem dar? Warum ist für diesen Port eine andere Kapazität 
notwendig?

Vielen Dank für Antworten und Gruss,
Sam
#3562901
Lesenswert?

Sam schrieb:
> holger schrieb:
>>>anstatt 47nF 100nF eingebaut. Stellt
>>>das ein Problem dar?
>>
>> Wenn dein ISP Prommer damit klar kommt: No Problem.
>
> Cool, die raschen Antworten!
>
> Hat die grössere Kapazität eine höhere Stromspitze zur Folge?

Nö.
es hat zur Folge, dass im Normalfall die Spannung am Reset Pin langsam 
ansteigt. Langsamer Ansteigen bedeutet aber auch, dass der Schwellwert 
langsamer erreicht wird -> der µC wird nach dem Anlegen der 
Versorgungsspannung ein wenig länger im Reset gehalten.

Das 'blöde' daran ist nur: der Programmer versucht den µC erst mal beim 
Neuprogrammieren in den Reset zu schicken, indem er den Pin auf Low 
zieht. Das dauert dann  natürlich auch ein wenig länger als normal. Wenn 
der Programmer es eilig hat, dann kann diese Verzögerung dann auch schon 
zu lang sein und der Programmer meldet, dass er keinen Kontakt mit dem 
µC kriegt.
#3562904
Lesenswert?

Stone schrieb:
> Nö, ist ok.
> Ist kein anderer Port. Dabei geht es nur darum eine Verzögerung zu
> erreichen wenn du die Versorgungsspannung anschaltest. Kann man auch
> ganz weglassen den Kondensator.

OK ist es und weglassen kann man ihn auch. Aber zur Verzögerung dient er 
nicht. Das ist Controllersteinzeit. Dazu ist der Kondensator auch viel 
zu klein. Sowas kann der AVR mit anderen Mitteln besser.

Der Kondensator dient mit dem Widerstand als Tiefpass, um Störungen 
wegzufiltern, die er sich im Betrieb einfangen kann.

mfg.
Gast #3562925
Lesenswert?

Thomas Eckmann schrieb:

> OK ist es und weglassen kann man ihn auch. Aber zur Verzögerung dient er
> nicht. Das ist Controllersteinzeit. Dazu ist der Kondensator auch viel
> zu klein. Sowas kann der AVR mit anderen Mitteln besser.
>
> Der Kondensator dient mit dem Widerstand als Tiefpass, um Störungen
> wegzufiltern, die er sich im Betrieb einfangen kann.
>
> mfg.

Ok. Danke für die guten Antworten!

Dann ist es nicht mehr ein so guter Tiefpass?

Gruss, Sam
#3562978
Lesenswert?

um den µC länger im Reset zu halten bräuchte man da schon ein paar µF. 
Der Widerstand ist dazu da das die Resetleitung zuverläßig runtergezogen 
werden kann sonst verursacht man wenn der Progger die Leitung 
runterzieht einen Kurzschluß und killt evtl. den Progger(dessen 
Transistor) wenn er keine Strombegrenzung hat. Der Kondensator kann 
kurze negativ Impulse abfangen so das es zu keinem unerwünschten Reset 
kommt.

Atmel empfiehlt einmal >4,7kOhm (bei STK500) und dann ließt man in 
anderen Unterlagen auch wiedermal >10kOhm gerade bei debugWire wird 
darauf hingewiesen, denke da handelt es sich um die kleinen Progger wie 
den Dragon oder AVRISP Mouse die eine nicht so starke Auslegung haben.

Im DOC1619 wird noch von 4,7nF Kerko gesprochen im DOC2521 heißt es nur 
das einer empfohlen wird außer bei debugWire hier darf keiner rein.

Ich verwende dort immer die üblichen 100nF Kerkos.
#3563028
Lesenswert?

Thomas O. schrieb:
> um den µC länger im Reset zu halten bräuchte man da schon ein paar µF.

Dann rechne doch mal.

Ein RC-Glied aus 10k und 100nF hat eine Zeitkonstante von 1ms.
Genug Zeit für einen Spannungsregler sich zu stabilisieren bzw. für 
einen Schwingkreis sich ein zu schwingen. Genau das war auch eine der 
Absichten in aelteren CPU Schaltungen, wenn man keinen Reset Controller 
hatte. 10k und 47n (100n) war eine absolut uebliche Beschaltung.

Auch wenn das an sich bei AVR nicht notwendig ist, weil man in den Fußes 
eine Verzögerung einstellen kann, das ist genau das was passiert.
Das man den C verbaut um Stoerspitzen zu filtern ist schon OK, aber 
einen Programm er kümmert das nicht, wenn er Reset zieht.

> Der Widerstand ist dazu da das die Resetleitung zuverläßig runtergezogen
> werden kann sonst verursacht man wenn der Progger die Leitung
> runterzieht einen Kurzschluss

Niemand sagt, dass die Alternative darin besteht, den Pin direkt mit Vcc 
zu verbinden.

Atmel hat dem Pin schon einen Pullup spendiert. Mit rund 30k ist der 
allerdings ein wenig gross geraten.
Gast #3563036
Lesenswert?

Thomas O. schrieb:
> Atmel empfiehlt einmal >4,7kOhm (bei STK500) und dann ließt man in
> anderen Unterlagen auch wiedermal >10kOhm gerade bei debugWire wird
> darauf hingewiesen, denke da handelt es sich um die kleinen Progger wie
> den Dragon oder AVRISP Mouse die eine nicht so starke Auslegung haben.

Das hat nichts mit Auslegung zu tun, sondern damit, daß bei DebugWire 
die gesamte Datenübertragung über den RESET-Pin erfolgt. Deshalb sind da 
natürlich die Anforderung etwas anders, als wenn der Programmer ihn 
einfach nur dauerhaft auf low ziehen muß.
#3563198
Lesenswert?

Ich habe schon Schaltungen gesehen ohne Pullup am Reset direkt an VCC 
und auch genug Fragen zu geschrotteten Programmern die die Resetleitung 
nicht mehr runterziehen konnten.

Ich zitiere einfach mal die Schriften des Herstellers
The reset line has an internal pull-up resistor, but if the environment 
is noisy it can be insufficient and reset can therefore occur 
sporadically. Refer to datasheet for value of pull-up resistor on 
specific devices.
Alleine deswegen kommt er bei mir generell in die Schaltung

This pull-up resistor makes sure that reset does not go low unintended.
The pull-up resistor can in theory be of any size, but if the AVR should 
be
programmed from e.g. STK500/AVRISP the pull-up should not be so strong 
that the programmer cannot activate RESET by draw the RESET line low. 
The recommended pull-up resistor is 4.7kOhm or larger when using STK500 
for programming. For debugWIRE to function properly, the pull-up must 
not be smaller than 10kOhm.

1mSek Verzögerung ist jetzt aber kaum der Rede wert wenn man schon 
64mSek per Fuses verzögern kann. Außerdem bin ich der Meinung das auch 
die sehr früheren AVRs ala 8515/8535 das schon über die Fuses konnten. 
Kann ich leider im AVR Studio nicht mehr nachprüfen.

bei 4,7kOhm sind knapp etwas über 1mA zu treiben. Mir fällt da auch kein 
Transistor ein der das nicht schaffen sollte aber wieso ist die 
Empfehlung von Atmel dann so hoch und nicht 1kOhm?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren