Atmel Neuling, flash *.hex aber was ist mit den fuses

OP #4465561
Lesenswert?
• ▲
▼
Hallo,

kurze Frage, da ich die Atmel toolchain nicht gewohnt bin:

Ich konnte ein hex file über AtmelStudio7 erfolgreich ( laut Atmel 
Studio) auf einen Atmel 644 laden, kann es sein, dass ich zusätzlich 
irgendwie noch die fuse bits setzen muss, da das Programm zwar irgendwie 
funktinoiert, sprich ich sehe eine PWM ein paar Signal leds direkt an 
GPIO pins leuchten auch, aber zB das angeschlossene LCD funktinoiertt 
nicht.

Das ganze ist quasi ein "Kit", daher steck ich im Code nicht drin, der 
ist aber schon getestet von vorgängern, also vermute ich ein Fehler in 
meine toolchain.

Gibt es hexfiles die auch fuses im Atmel setzen? Muss ich was im 
AtmelStudio einstellen, kann mir einer einfach helfen oder muss ich 
einfach mehr Zeit in die Details ver(sch)wenden :)

ich bin MSP430 Nutzer, da ist die Grundstruktur IMHO wesentlich 
einleuchtender, da wird der Prozessor einfach komplett bespielt und die 
Register selber gesetzt im Code, aber das kann ja vielleicht na der 
Architektur liegen.

Vielen Dank euch schonmal.
(Firma: matzetronics) #4465570
Lesenswert?
• ▲
▼
Stefan S. schrieb:
> aber schon getestet von vorgängern, also vermute ich ein Fehler in
> meine toolchain.

Die 'Vorgänger' sollten aber Hinweise geben können, wie der Mega644 
gefused werden soll. Wenn da z.B. ein externer Quarz in der Schaltung 
ist, sollte man also auf diesen fusen, damit der MC mit dem richtigen 
Takt läuft. Ein frischer AVR vom Händler läuft normalerweise mit dem 
internen RC-Oszillator auf etwa 1MHz, die sich durch einen Takt von 8MHz 
und gesetzter CKDIV8 Fuse ergeben, diese Fuse aktiviert einen Taktteiler 
von 8.

Mit der Toolchain hat das erstmal nichts zu tun, den du hast ja ein 
fertiges HEX in den MC geflasht, es also nicht selber kompiliert.
OP #4465612
Lesenswert?
• ▲
▼
ja weiss er:

You decided to not use a makefile, so you have to write the fuses 
yourself :)

The values are:

    LFUSE = ff
    HFUSE = d6
    EFUSE = fd


Aber da ich bisher in meinem Leben ca. 8 stunden in Atmel gesteckt habe, 
hab ich eben tausende Anfängerfragen, wie die ob im hex file die fuses 
mitdrinstehen, oder wie du ja gesagt hast, die fuses nur drinstehen, 
wenn ich das programm selber kompiliert hätte? Irgendwie ist mir die 
Logik dahinter noch verschlossen, wieso man einen µC programmieren und 
zusätzlich nochwas an "fuses" setzen sollte, aber manche Sachen muss man 
ja einfach als gegeben hinnehmen.

Weiterhin dankeschön fürs mitlesen und helfen.
(Firma: matzetronics) #4465674
Lesenswert?
• ▲
▼
Stefan S. schrieb:
> wie die ob im hex file die fuses
> mitdrinstehen, oder wie du ja gesagt hast, die fuses nur drinstehen,
> wenn ich das programm selber kompiliert hätte?

Oh, da haben wir ein Missverständnis - habe mich vermutlich falsch 
ausgedrückt. Die Fuses bei AVR sind ein vom Programm völlig unabhängiges 
Kapitel und müssen unabhängig vom HEX File gesetzt werden, im Gegensatz 
zu z.B. PIC werden die Fuses auch nicht im Programm gesetzt, sondern 
sind ganz extra zu behandeln.
Nachdem du also das HEX in dem MC geflasht hast, setzt du in einem 
gesonderten Programmierzyklus die Fuses.

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.