www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Fusebits setzen AVR-Studio/AVR OSPII


Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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/A...

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

Autor: Elmar Haneke (elmar69)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 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.

Autor: Bensch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Rene (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast mal das hier probiert?

http://www.myavr.de/download.php?suchwort=dl112

gruß Rene

Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Elmar Haneke (elmar69)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Bensch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Neiiiiin, nicht ext RC Osc, sondern ext XTAL.
CKOPT würde ich auch setzen, sofern dass nicht Ultra Super Low Power 
sein muss.

Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Bensch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Bensch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stop.
4 MHz müsste Medium sein, Low ist z.B. 32 kHz.

Autor: Fred S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Fred S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Björn W. (wulfi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.