In den letzten Jahren habe ich einige Platinen mit ATmega2560 und ATmega128 hergestellt und programmiert, von denen einige nach einigen 10 Programmierungen nicht mehr ansprechbar waren. Nun habe ich (als relativer Anfänger) im Laufe der Zeit versucht, einige potentielle Fehlerquellen auszuschalten: - ESD-Erdung des Handgelenks über 1 MOhm - Widerstand an Wasserrohr - Umstieg auf das AVR ISP mkII Programmiergerät mit AVR Studio - Einkauf der Prozessoren nur noch bei Reichelt - Bessere Kontrolle der Spannung des µC beim Flashen - PortB wird nicht mehr anderweitig genutzt Dennoch ist mir neulich wieder ein Mega2560 beim Flashen gestorben, der auch per externem Takt nicht wiederzubeleben war. Meist gibt es erst Verifikationsfehler und später wird der AVR nicht mehr erkannt. Der Nachfolger lief einige Wochen gut, und zeigte kürzlich erste Fehler beim Flashen (vereinzelt Fusebit-Verifikation fehlgeschlagen). Die Übertragungsgeschwindigkeit liegt weit unter 1/4 der Taktfrequenz des 4MHz-Quarzes. Das Kabel des ISP mkII wird direkt auf die Platine nahe dem AVR gesteckt. Der Verifikationsfehler trat auf, als die µC-Stromversorgung (vier Akkus) nur noch 4.7 V Spannung hatte. In der Schaltung wird MISO direkt an den µC geführt. MOSI, SCK und Reset laufen über jeweils eine Diode BAT85 an den µC, wo sich zusätzlich jeweils ein 10kOhm-Pullup nach VCC befindet. Eben bin ich darauf gestossen, dass ich keinen richtigen Abblock-Kondensator in der Schaltung, sondern nur einen 100 µF-Elko über der gesamten Spannungsversorgung habe. - Reicht ein simpler 100nF Kondensator? - Wie nahe am AVR muss dieser sein? - Was mache ich eventuell noch falsch?
@ Mikrofun R. (mikrofun) >In der Schaltung wird MISO direkt an den µC geführt. MOSI, SCK und Reset >laufen über jeweils eine Diode BAT85 an den µC, wo sich zusätzlich >jeweils ein 10kOhm-Pullup nach VCC befindet. Wozu das? >Eben bin ich darauf gestossen, dass ich keinen richtigen >Abblock-Kondensator in der Schaltung, sondern nur einen 100 µF-Elko über >der gesamten Spannungsversorgung habe. Schlecht. Dass der überhaupt stabil läuft ist ein kleines Wunder. >- Reicht ein simpler 100nF Kondensator? Eigentlich ja, besser aber ein 100nF pro Vcc/GND Paar. >- Wie nahe am AVR muss dieser sein? Kleiner 3cm. MFG Falk
Also ich hab den Eindruck, die AVRs sind unkaputtbar. Einige meiner AVRs dürften schon viele 100-te Programmierungen hinter sich haben. Ich benutze zwar nicht diese riesen Monster, sondern nur bis max ATmega168, aber die sollten ja nicht empfindlicher sein. Ich programmiere sie einmalig auf dem STK500 und dann in der Schaltung per Bootloader. Mit dem STK500 hatte ich noch nicht einmal Probleme beim Proggen. Irgendwelche billigst-Programmer ohne eigenen MC habe ich noch nie probiert, da ich am Notebook weder LPT noch COM habe. Ich mache alles über USB-RS232 Konverter. Peter
>Schlecht. Dass der überhaupt stabil läuft ist ein kleines Wunder.
Quatsch. Die laufen ohne 100 nF genauso.
Die 100 nF haben den gleichen Zweck wie eine Beilagscheibe: Das Gewissen
des Konstrukteurs zu beruhigen.
Da ich auch gern ein ruhiges Gewissen habe, baue ich sie auch immer ein.
Der Dude wrote: >>Schlecht. Dass der überhaupt stabil läuft ist ein kleines Wunder. > Quatsch. Die laufen ohne 100 nF genauso. Manchmal. Zufällig. > Die 100 nF haben den gleichen Zweck wie eine Beilagscheibe: Das Gewissen > des Konstrukteurs zu beruhigen. Ja. Under die Erde ist eine Scheibe.
Potentialunterschiede beim Einstecken des Programmiersteckers? Netzteil mit 2-adriger Zuleitung?
>Also ich hab den Eindruck, die AVRs sind unkaputtbar. >Einige meiner AVRs dürften schon viele 100-te Programmierungen hinter >sich haben. Kann ich nur bestätigen. Ich programmiere meine über LPT (wie rückständig ;). Mehrere Boards von ATMega8 bis ATMega128. Von denen hat noch keiner aufgegeben. Diese kleinen 100nF Dinger sind das Salz in der Suppe. Die müssen ganz dicht an jedes IC. Beim Spannungsregler auch immer einen davor und dahinter. Ebenfalls so dicht wie möglich dran.
@Falk Brunner: >>In der Schaltung wird MISO direkt an den µC geführt. MOSI, SCK und Reset >>laufen über jeweils eine Diode BAT85 an den µC, wo sich zusätzlich >>jeweils ein 10kOhm-Pullup nach VCC befindet. >Wozu das? In der Schaltung vom STK200 war es glaube ich auch so. Dies hatte ich am Anfang einfach in die eigene Schaltung übernommen. Da die Programmierbarkeit erst mal klappte, hatte ich nichts mehr geändert. Ist daran irgendwas überflüssig oder nicht sinnvoll? >besser aber ein 100nF pro Vcc/GND Paar. Am ehesten könnte ich meine Platine jetzt noch mit SMD Kondensatoren aufpeppen, zumindest an zwei Seiten des AVR. Bei Reichelt gibt es z. B. metallisierte SMD Polyesterkondensatoren 100nF (SMD-1812 100N). Spricht etwas dagegen? @eProfi: > Potentialunterschiede beim Einstecken des Programmiersteckers? Die erste Instabilität hatte ich, als ich die Programmierung bei einer längeren Bahnfahrt per akkubetriebenem Notebook machen wollte. Der AVR wird per Akkupack betrieben. Ist die Masse beim ISP mkII nicht durchgeschleift? > Netzteil mit 2-adriger Zuleitung? Ein Labornetzgerät nehme ich eher selten. Dieses hätte jedoch eine Erdung. Ist also von einer Akkustromversorgung des AVR beim Programmieren abzuraten?
Mikrofun R. wrote: >>besser aber ein 100nF pro Vcc/GND Paar. > > Am ehesten könnte ich meine Platine jetzt noch mit SMD Kondensatoren > aufpeppen, zumindest an zwei Seiten des AVR. Bei Reichelt gibt es z. B. > metallisierte SMD Polyesterkondensatoren 100nF (SMD-1812 100N). Spricht > etwas dagegen? Keramik-Vielschichtkondensatoren sind kleiner und induktionsärmer. Gängige Materialbezeichnungen dafür sind sowas wie X7R. Mir ist so, als hätte sogar Angelika davon bis 100 nF welche im Angebot (in der Industrie gibt's die mittlerweile bis 10 µF, immerhin noch als 1210, glaube ich).
Ich bevorzuge zum Abblocken SMD-Chipkondensatoren (Keramik 100nF 0603 oder 0805), die sind billig und gut. Wenn ich mit Akkus (4 Zellen AA) experimentiere, dann habe ich eine Glühlampe als Sicherung (Strombegrenzung) in der Plusleitung. ...
Ja, habe ich gestern noch bestellt bei Reichelt ;-) 100 nF ist das Maximum gibt es aber als 0603
@dude >Die 100 nF haben den gleichen Zweck wie eine Beilagscheibe: Das Gewissen >des Konstrukteurs zu beruhigen. völliger blödsinn. die 100nF kondis glätten die spannung ebenso wie ein 100uF kondensator. nur das durch die kleinere kapazität höherfrequentere (im vergleich zum 100uF faktor 1000) störungen geglättet werden. wer diese kondensatoren weglässt ists selber schuld. man könnte eher (aber eigentlich auch nicht wirklich) auf den 100uF verzichten wenn die spannug einigermassen stabilisiert ist (stabilisiertes steckernetzteil oder labornetzeil). und genau die höherfrequenten störungen (können !!) beim programmieren eher störungen bzw. fehlprogrammierungen verursachen. so zumindest meine interpretation zum thema : 100nF - was soll das ? ich mache die dinger IMMER mit drauf und hab noch nicht einen einzigen (ok sind nur ca 20 avrs verbastelt) zerschossen/verputtprogrammiert. auch bei allen anderen verwendeten ic's. -> man liegt immer auf der sicheren seite. spart zeit nerven und avr's :-)
Hi
>Also ich hab den Eindruck, die AVRs sind unkaputtbar.
Ich habe eine ganze Weile mit einem STK300 gearbeitet. Der ATMega103 war
nur für 1000 Progrmmierzyklen spezifiziert. Die habe ich mit Sicherheit
mehrfach überschritten und das Teil läuft heute noch.
Ich denke, deine Ausfälle sind auf instabile Bedingungen während der
Programmierung zurückzuführen.
MfG Spess
Mit einem guten Oszi kann man sich die Wirkung der 100nF Pillen sehr schön ansehen. Ob die VCC glatt wie ein Kinderpopo ist oder eigentlich Wechselspannung genannt werden müßte, ist gut zu sehen. Und im UKW-Radio kann man es auch gut hören, wenn die fehlen. Ich nehme die 0805, die kann man bequem bei nem DIP-IC zwischen 2 Pins pappen. Peter
Da ich gerade keine SMD-Kondensatoren zur Hand hatte, habe ich nun
testweise zwei Tantaltypen eingelötet.
@Peter Dannegger:
>Und im UKW-Radio kann man es auch gut hören, wenn die fehlen.
Heisst das, ich stelle ein Radio neben die Platine und höre mehr oder
weniger Oberwellen vom Schaltkreis als Störgeräusche?
Mikrofun R. wrote: > Heisst das, ich stelle ein Radio neben die Platine und höre mehr oder > weniger Oberwellen vom Schaltkreis als Störgeräusche? Ja. Diese Kondensatoren sind einer wesentlichen Eigenschaft der CMOS-Technologie geschuldet. Während CMOS den großen Vorteil hat, dass statisch jeweils nur ein Transistor leitend ist und somit kein statischer Stromverbrauch entsteht (außer Leckstrom, also Dioden- restströmen gegen das Substrat, mit zunehmend kleiner werdenden Strukturen ein echtes Problem), entsteht im Moment des Umschaltens eine Stromspitze in der Versorgungsleitung, da die am Ausgang des Gatters befindliche kapazitive Last umgeladen werden muss. Wenn nun viele Gatter zeitgleich umschalten (und das ist bei aller synchroner Logik nun einmal der Fall), dann summieren sich diese Stromspitzen. Da die Zuleitung der Versorgung (außer dem natürlichen Innenwiderstand der Spannungsquelle) noch eine für schnelle Schaltvorgänge spürbare Induktivität aufweist, fällt an dieser im Umschaltmoment eine Spannung ab. Erstens bricht dadurch die Versorgungsspannung ein (was die Funktion des ICs gefährden kann), zweitens wirkt damit die Zuleitung wie eine Antenne. Bei ideal parallel geführten Zuleitungen heben sich die Felder auf, aber sowie das nicht mehr der Fall ist, wird ein Teil der Energie dann abgestrahlt.
> Da ich gerade keine SMD-Kondensatoren zur Hand hatte, habe ich nun > testweise zwei Tantaltypen eingelötet. Naja, Tantal ist ziemlich ungeeignet, ist absolut kein Ersatz für Vielschicht-Keramik. Schau mal bei CSD, da gibt es die Vielschicht-Keramik-Chipkondensatoren in verschiedenen Baugrößen für kleines Geld. Auf den Elko verzichte ich gelegentlich, auf die Keramik-Kondensatoren aber nie. ...
Hannes Lux wrote: >> Da ich gerade keine SMD-Kondensatoren zur Hand hatte, habe ich nun >> testweise zwei Tantaltypen eingelötet. > > Naja, Tantal ist ziemlich ungeeignet, ist absolut kein Ersatz für > Vielschicht-Keramik. Warum? Zumindest niedrigimpedant sind die doch auch (anders als Aluminium-Elkos). Sie können keine zu hohen Stromspitzen ab (bspw. beim schnellen Umschalten einer Quelle mit niedrigem Innenwiderstand), aber als Puffer taugen sie eigentlich auch. Mit dem Aufkommen von Kerkos >= 1 µF scheinen sich die Tantal-Elkos aber auf dem Rückzug zu befinden, zumal es um die Ta-Ressourcen auf der Erde wohl nicht so reichlich bestellt ist.
>Also ich hab den Eindruck, die AVRs sind unkaputtbar.
kann ich nur bestätigen
ich hab einen mit unabsichtlich zerschossen IO-Pin's
(beschädigt), der läst sich immernoch nutzen!
Fred
> Netzteil mit 2-adriger Zuleitung?
Ich dachte auch an das Laptop-Netzteil.
Wenn der Atmel geerdet ist und der Laptop nicht, gibt es beim Einstecken
immer einen Potentialausgleich. Wenn dieser über eine Signalleitung
stattfindet, wird diese das weniger toll finden.
Deshalb erde ich immer alles. Falls Masseschleifen ein Problem
darstellen, über eine Erdungsdrossel oder -Widerstand.
Erst vorgestern hat bei uns ein IXXAT USB-CAN die Grätsche gemacht, weil
jemand statt der Verwendung eines Trenntrafos am Oszi die
Schutzleiterkontakte mit Tesa überklebt hat. Beim Einstecken des
CAN-Busses hat es den CAN-Treiber erwischt. Trotzdem CAN ja für rauhe
Umgebung ausgelegt ist. Schade drum.
Batteriebetrieb sollte in Ordnung sein, falls man vorher eine evtuelle
statische Aufladung ableitet.
Peter Dannegger wrote: > Also ich hab den Eindruck, die AVRs sind unkaputtbar. > Einige meiner AVRs dürften schon viele 100-te Programmierungen hinter > sich haben. Wuerde ich zustimmen, die sind wirklich sehr robust. Die kann man nur mit groben Fehlern wie z.B. Ueberspannung killen. "Nach ein paar mal flashen kaputt" hoert sich fuer mich an wie: Falscher Aufbau und/oder mit billigem programmer die fuses zerschossen.
Michael G. wrote: > "Nach ein paar mal > flashen kaputt" hoert sich fuer mich an wie: Falscher Aufbau und/oder > mit billigem programmer die fuses zerschossen. Er schreibt aber: - Umstieg auf das AVR ISP mkII Programmiergerät mit AVR Studio ...
Hannes Lux wrote: > Er schreibt aber: > > - Umstieg auf das AVR ISP mkII Programmiergerät mit AVR Studio Ich stand schonmal daneben als jemand mit diesem Programmer einen neuen ATmega88 zerschossen hat. Einmal konnte er ihn flashen, danach nichtmehr. Mit einem neuen mega88 ging es dann wieder...
Das Phänomen habe ich mehrfach bei Schaltungen mit einem PIC beobachtet. Erst geht es wunderbar, dann schlägt Verify fehl und anschließend wird der Controller nicht mehr erkannt. Diese Schaltungen wurden dann aber im Betrieb mit eigener Strom- versorgung programmiert. Ich vermute das es sich um ein Problem mit dem Massepotential handelt. Wenn GND nicht sauber verbunden ist (beim Einstecken des Programmiergeräts z. B.) können unzulässig hohe Spannungen auftreten. 100%-ige galvanische Trennung ist eher ungewöhnlich.
Haben hier alle, die keine AVRs zerschossen haben, die Programmierung nur bei gemeinsamer Erdung von Computer und µC gemacht? Kann man bei Batteriebetrieb von AVR oder Notebook den Potentialausgleich irgendwie praktisch sinnvoll durchführen? Z. B. erst eine Masseverbindung über einen großen Widerstand (z. B. 1 Megaohm) herstellen und dann richtig verbinden?
Mikrofun R. wrote: > Haben hier alle, die keine AVRs zerschossen haben, die Programmierung > nur bei gemeinsamer Erdung von Computer und µC gemacht? Noch nie. Ich betreibe meine Schaltungen (STK500) oft mit ner Wandwarze aus der Conrad-Wühlkiste, die sind 2-polig (ohne Schutzleiter). Der PC ist geerdet (das Notbook nicht). Peter
Peter Dannegger wrote: > Mikrofun R. wrote: >> Haben hier alle, die keine AVRs zerschossen haben, die Programmierung >> nur bei gemeinsamer Erdung von Computer und µC gemacht? > > Noch nie. > > Ich betreibe meine Schaltungen (STK500) oft mit ner Wandwarze aus der > Conrad-Wühlkiste, die sind 2-polig (ohne Schutzleiter). > Der PC ist geerdet (das Notbook nicht). Die Erdung wird ja im Falle des STK500 über die RS232 Masseleitung hergestellt.
@ TheMason (Gast) >die 100nF kondis glätten die spannung ebenso wie ein 100uF kondensator. Nöö, können sie gar nicht, weil sie 1000mal kleiner sind. Sollen sie aber auch gar nicht. >nur das durch die kleinere kapazität höherfrequentere (im vergleich zum >100uF faktor 1000) störungen geglättet werden. wer diese kondensatoren Naja, diese Aussage ist nur indirekt richtig und irritiert mehr als sie erklärt. Kleinere Struktur + bessere Dielektrika -> weniger parasitäre Induktivität -> bessere Filterung von Hochfrequenz >weglässt ists selber schuld. man könnte eher (aber eigentlich auch nicht genau. >ich mache die dinger IMMER mit drauf und hab noch nicht einen einzigen Das ist auch notwendig. MfG Falk
Falk Brunner wrote: >>die 100nF kondis glätten die spannung ebenso wie ein 100uF kondensator. > > Nöö, können sie gar nicht, weil sie 1000mal kleiner sind. Sollen sie > aber auch gar nicht. Naja, wenn man es in der Relation zum Thema (CMOS-bedingte Stromspitzen beim Umschalten) sieht, können sie es. Für niederfrequente Störanteile (Netzbrumm etc.) natürlich nicht.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.