Hallo, ich bin gerade dabei mich in das AVR-Tutorial(mikrocontroller.net) einzulesen, um erste Erfahrungen mit den Controllern zu sammeln. Die benötigte Hardware habe ich soweit zusammen. Diesen ISP habe ich nachgebaut: http://www.klaus-leidinger.de/mp/Mikrocontroller/AVR-Prog/AVR-Programmer.html Nun wollte ich ersteinmal die nötigen Fusebits setzen. Wenn ich AVR-Studio verwende kann ich die Fusebits und den Flash zwar auslesen, aber nicht schreiben! Wenn ich die neuen Fusebits einstelle und dann schreibe, tut der Programmer das auch scheinbar... bloß wenn ich sie danach wieder auslese sind es die default Werte! Bei AVR OSPII ist es genauso! hier der Log: Checking programmer type ... Found AVR ISP Entering programming mode... Signature = 0xFF 0xFF 0xFF Leaving programming mode... Checking programmer type ... Found AVR ISP Entering programming mode... Fuse bits read = 0xFFFF ( 1111111111111111 ) Leaving programming mode... Checking programmer type ... Found AVR ISP Entering programming mode... Programming fuse bits... Selected device has no extended fuse bits! Leaving programming mode... Was könnte nicht stimmen??? Ich weiß nicht mehr weiter! Gruß Björn
> ich bin gerade dabei mich in das AVR-Tutorial(mikrocontroller.net) > einzulesen, um erste Erfahrungen mit den Controllern zu sammeln. Eine dürfte die sein, dass man mit den Fuse-Bits vorsichtig sein muss - zumindestens wenn man nur einen ISP-Programmer hat. > Entering programming mode... > Signature = 0xFF 0xFF 0xFF Da wird kein Device erkannt. Entweder ist der AVR-Controller nicht richtig angeschlossen oder er kann nicht mehr ISP-Programmiert werden. Man kann sich gleich auf mehreren Wegen aussperren: a) Wahl der Taktquelle: Wenn man was anderes als den internen Taktgeber einstellt, muss der Taktgeber auch zur Programmierung laufen. b) Reset-Disable: Wenn man die Reset-Leitung als IO-Port freischaltet, ist anschließend Essig mit ISP-Programmierung. c) Es gibt sogar eine Fuse, um ISP-Programmierung grundsätzlich abzuschalten. Mit einem HV-Programmiergerät ist das alles kein Problem, bei a) kann man durch Hinzunahme einer entsprechenden Taktschaltung weiterkommen.
Hast du möglicherweise beim ersten Schreiben das Teil verfust? Lies mal das Tutorial, da stehen viele Hinweise und Lösungsmöglichkeiten. Was hat die Signatur angezeigt VOR dem ersten Schreiben?
Hallo, habe eben mal einen 2. Controller getestet und hier passiert das gleiche... Zu mindest bei AVR OSPII bei AVR-Prog sagt er nun bei den Fusebits verify and programming disabled. Also dass alle Lockbits gesetzt sind! Und bei dem ersten Controller konnte ich ja bisher noch gar keine Fuses schreiben. Ich werde nachher nochmal die gesamte Verkabelung des Controllers überprüfen. Björn
Björn Wulf wrote: > Zu mindest bei AVR OSPII bei AVR-Prog sagt er nun bei den Fusebits > verify and programming disabled. Also dass alle Lockbits gesetzt sind! Das sollte mit einem Chip-Erase wieder rückgängig gemacht werden können.
Elmar Haneke wrote: > Björn Wulf wrote: > >> Zu mindest bei AVR OSPII bei AVR-Prog sagt er nun bei den Fusebits >> verify and programming disabled. Also dass alle Lockbits gesetzt sind! > > Das sollte mit einem Chip-Erase wieder rückgängig gemacht werden können. Chip-Erase mit AVR-Prog habe ich versucht... schafft keine Abhilfe! Bin gerade dabei nochmal alles zu überprüfen! Björn
Habe gerade mal mein ISP-Kabel durchgemessen... Dabei musste ich feststellen, dass die MISO-Leitung unterbrochen ist! Mal sehen ob ich die Unterbrechnung beseitigen kann, danach sieht die Sache ja eventuell ganz anders aus! Björn
Es funktioniert jetzt!!! :) Konnte den Flash schon erfolgreich beschreiben mit AVR-Prog! Ich soll ja nun die Fuses so einstellen... http://www.mikrocontroller.net/images/atmega8-nachher.png Mit AVR-Prog muss ich dann von: Int RCosc, Frequency 1MHz auf Ext RCosc, Frequency ~8MHz stellen?!?!? Nutze einen 4MHz Quarz. Startup: 64ms + 6 CK kann diese Einstellung so bleiben?? Der Rest müsste eigentlich stimmen: BOD enabled, 4.0V Boot block 1024 Words. Hoffe jemand kann mir helfen. Björn
>Neiiiiin, nicht ext RC Osc, sondern ext XTAL.
CKOPT würde ich auch setzen, sofern dass nicht Ultra Super Low Power
sein muss.
Bensch wrote: >>Neiiiiin, nicht ext RC Osc, sondern ext XTAL. > CKOPT würde ich auch setzen, sofern dass nicht Ultra Super Low Power > sein muss. Gut, dass ich die Fuses noch nicht gesetzt habe... Bei EXT XTAL, low frequency??? Oder medium/high ?? Und wie muss der Startup eingestellt werden? Hier mal ein Bild von der Oberfläche: http://www.bilder-hochladen.net/files/5h4a-6-jpg.html Björn
Hmm, ich nehm immer 9,830 MHz. 4 MHz müsste noch Low sein. Aber mach ein Häkchen bei Full Amplitude, das ist die CKOPT Fuse. Lt. deiner Überschrift benutzt du AVR OSPII, da ist das viel übersichtlicher. Ausserdem zeigt der AVR Prog z.B. beim mega32 kein Full Amplitude an, also unbrauchbar.
Hallo Björn, was Deine Nutzeroberfläche als "low frequency" bezeichnet, weiß ich nicht. Kannst Du vielleicht irgendwo sehen, wie diese Eingaben in die CKSEL Bits umgesetzt werden? Dann hilft Dir das Datenblatt, in dem für die Wahl von CKSEL bei externem Quarz und CKOPT=1 die Frequenzbereiche 0,4-0,9; 0,9-3.0 und 3,0-8,0 MHz unterschieden werden. Gruß Fred
Danke für deine Hilfe Bensch! Habe die Fuses nun mit AVR OSPII gesetzt und das Programm läuft im Controller so wie es soll!! Gruß Björn
Hallo Fred, bei AVR-OSPII sieht es so aus: ext crystal/resonator low freq cksel = 1010 und 1011 und jeweils sut ext crystal/resonator med freq cksel = 1100 und 1101 ext crystal/resonator hig freq cksel = 1110 und 1111 Ich habe diese Fuse gesetzt: ext crystal/resonator medium freq, start up time 16k ck + 64ms cksel=1101 sut=11 Björn
Hallo Björn, laut ATmega8xxx-Datenblatt (Rev. 2486M–AVR–12/03) S.25 würde ich für einen externen 4MHz Quarz CKOPT und CKSEL auf 1111 setzen. Deine Startup-time ist in Ordnung. Gruß Fred
Fred S. wrote: > Hallo Björn, > laut ATmega8xxx-Datenblatt (Rev. 2486M–AVR–12/03) S.25 würde ich für > einen externen 4MHz Quarz CKOPT und CKSEL auf 1111 setzen. Deine > Startup-time ist in Ordnung. > > Gruß > > Fred Ist jetzt gesetzt! :) Vielen Dank für eure Hilfe! Björn
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.