Hallo, habe mit Hilfe des AVR-Tuts auf dieser Seite angefangen mich in die Welt der Mikrocontroller einzuarbeiten. Bin bis zu dem Punkt gekommen, wo die Lock Bits und Fuses eingestellt werden. Bis hier hin hat auch alles wunderbar funtkioniert. Habe in die Kästchen dann mit yaap Häckchen gemacht, da wo welche hin kommen sollen. Dann habe ich gespeichert und seit dem kann ich nicht mehr auf den Controller zugreifen. Es folgt immer die Fehlermeldung: Device missing or unknown device (-24). Ich habe dann mal den Atmega8 gegen einen neuen getauscht und siehe da es funktioniert wieder. Nur was habe ich falsch gemacht? Ich habe alles laut dem Tutorial richtig gemacht... und trotzdem ist der Controller jetzt defekt? Habe natürlich jetzt etwas Sorge die Lock Bites und Fuses wieder einzustellen, da dann mein zweiter und letzter Controller auch kaputt gehen würde. Also wie gehe ich jetzt am besten vor?
Der ist nicht kaputt. Zwei Möglichkeiten: Erstens, du hast die Taktoptionen umgestellt und dabei eine Einstellung gewählt, die nicht zum angeschlossenen Quarz passt. In dem Falle einen Takt zwischen 1 und 8 MHz an XTAL1 anlegen und die entsprechenden Fuses zurückstellen. Oder zweitens, du hast dir den Reset-Pin wegprogrammiert. Ich bin mit Yaap nicht direkt vertraut, da ich mit Ponyprog arbeite, aber es empfiehlt es sich dringenst bei solcher Programmiersoftware, vor dem Ändern der Fuses ERST die Fuses einzulesen, da man sich sonst den Reset-Pin mit der RSTDISBL-Fuse abhängt. Einen so nicht mehr ansprechbaren Controller bekommt man nur mit einem HV-Parallel-Programmierer wieder auf. Das STK500 ist ein solcher HV-Parallel-Programmer, im Netz gibt es auch ein Paar Nachbauanleitungen dafür. Gruss Jadeclaw.
Ich möchte ja einen angeschlossenen 4 MHz-Quarzoszillator einbeziehen. Pin 8 (Out) liegt an XTAL1 an. Ich kann trotzdem nicht auf den Controller zugreifen. Es ist halt nur komisch, weil ich die Häckchen genauso gesetzt habe wie im Tut. Ich habe einen selbstgebauten stk200/300 kompatiblem ISP-Programmer. Ist dies ein solcher HV-Parallel-Programmer? Ich bin mir sicher kein Häckchen bei RSTDISBL gemacht zu haben! Was mach ich denn jetzt am besten?
Hallo, nein, das STK200-Dongle ist kein HV-Parallel-Programmer. Zu den Fuses wurde ja oben schon alles wichtige geschrieben. Wie Du die Fuse gesetzt hast, weiß ich ja nicht, man kann also nur raten... Ganz allgemein: ich kenne nur 3 Gründe, die Fuses zu ändern - man hat soviel zusammenprogrammiert, daß die internen 1MHz wirklich zu Timingproblemen führen. - man braucht eine genauere Taktfrequenz, als sie der interne Oszillator hergibt. Eine Uhr als Programmierübung ist dabei für mich kein Grund, weil es erstmal darauf ankommt, eine Softwareuhr in Gang zu bekommen... - man benötigt eine konkrete Frequenz für eine Aufgabe, UART z.B. Zum Testen geht der UART aber durchaus auch mit den internen 1MHz, die Baudrate muß zum Test durchaus nicht 115200 sein, da reichen auch 1200 oder 2400 Baud. Dabei ist die Toleranz durchaus noch ausreichend. Ich habe kein Problem damit, wenn jemand einen kleinen AVR falsch fused, die Dinger sind billig und leicht beschaffbar, ich verstehe nur meist nicht, weshalb überhaupt die Fuses geändert werden und weshalb dann nicht erstmal die Doku zur konkreten CPU im Bereich Clock durchgearbeitet wird und die nötige Stellung der Fuses erarbeitet wird. Dann kann man mit Vorgaben aus Tutorial vergleichen und wenn man zum selben Ergebnis kommt - ok. Wenn nicht - nochmal oder eben hier nachfragen. Ich habe schon genug Fehler oder Ungereimtheiten in Tutorials und Testbordbeschreibungen gesehen, als daß ich mich auf die Vollkommenheit der Autoren verlassen würde. ;-) Gruß aus Berlin Michael
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.