Neulich hab ich zum ersten Mal versucht einen Atmega8 direkt mittels eines Parallelport STK200-kompatiblem Programmers(Atmel AVR ISP für STK200 und STK300 auf dieser Seite) in der Schaltung selber zu programmieren. Dazu hab ich Ponyprog benutzt. Das Programmieren hat etwa 4-5 mal geklappt, danach hat sich der Atmega ohne äussere Anzeichen ins Jenseits befördert, d.h. die Schaltung funktionerte nicht mehr und er war nicht mehr les- und schreibbar. Das ist mir bis jetzt 2mal passiert. Hat jemand etwas Ähnliches erlebt oder dafür eine Erklärung? zu den Rahmenbedingungen: ->die sck, miso und mosi pins sind in der Schaltung als Ausgänge konfiguriert und je an 1 resp 4 Eingänge eines/r 74HC** cmos ic's angeschlossen (siehe Schaltplan im Anhang), da sollte meiner Meinung nach beim Programmieren nichts passieren ausser dass die Schaltung ausserhalb des AVR's etwas komisch reagiert.. ->hab den kaputten AVR anschliessend an ein mit externem Oszillator an xtal1 bestückten Testboard angeschlossen, auch das vermochte ihn nicht zum Leben zu erwecken folglich ist ein versehentliches Programmieren des chkopt-Fuses auszuschliessen -> der AVR hat (ohne umprogrammieren) einige Stunden in der Schaltung wohlbehalten überlebt -> wahrscheinlich keine Kurzschlüsse oder Schaltungsfehler -> der Programmer funktioniert bis jetzt recht gut, d.h. etwa 19 von 20 Schreibversuche sind erfolgreich, es ging sonst noch nie ein AVR beim Programmieren kapputt
Ich könnte mir eine Masseschleife zwischen Deiner Schaltung und dem programmierenden PC vorstellen, so daß es beim Programmieren zu einer Verschiebung der Spannungspegel auf den Programmierleitungen gekommen sein kann. Dabei hat der ATMega vielleicht etwas falsch verstanden und die Fuses unbeabsichtigt verändert. Vielleicht hast Du lediglich den Reset-Pin weggefust. Dann kommst Du per ISP nicht mehr an den Controller heran. Auslöten und über Parallel-HV probieren. Das setzt einen entsprechenden Programmer (STK500, AVR-Dragon...) voraus. Damit kannst Du Dir dann auch das Gewurstel mit PonyProg sparen. Übergangsweise könnte ein optisch getrennter Programmer helfen. Den mußt Du dann allerdings wieder selber bauen.
vielen dank für die nette und informative Antwort, es könnte tatsächlich etwas mit der Stromversorgung, resp. verschiedenen Massepotentialen zu tun haben, zu Info habe ich der Schaltplan der Stromversorgung angehängt. Wenn ich es richtig verstanden habe könnte es sein das durch Verbinden zweier verschiedener Massen (die der Schaltung und die des PC's) es sein könnte das der tatsächliche Potentialunterschied auf den pins des Atmega nicht mehr 5V sondern etwas darüber oder darunter betragen? Wie dem auch sei, werds jetzt mal mit Optokopplern im Programmer versuchen. Anschlussfrage dazu: ist es richtig dass SCK (also die Programmierpulse) beim Lesen und Schreiben des Atmega vom PC aus gesendet werden. Falls ja ist der Aufbau für meine Elektronikkenntnisse einfach. Bezüglich der Anschaffung eines STK500 oder AVR bin ich noch am Zögern... andererseits ist es sicher praktisch einen "richtigen" Programmer zu haben den man direkt vom AVr Studio aus bedienen kann. Welchen würde du empfehlen (Dragon oder STK500)? Ich persönlich tendiere eher für STK500 obwohl es teurer ist.
Das SCK Signal aus beim Programmierer der Ausgang, beim Controller der Eingang. Die Trennung per Optokoppler ist möglich, wenn man schneller Optokoppler wie 6N137 nimmt. Schon ein 6N138 könnte aber knapp werden.
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.