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.
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.
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.
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.
Im HEX-File sind die Fuses bei Atmel nie dabei. Man kann lediglich ELF-Files erstellen, bei denen die Fuses (und noch mehr) mit drin sind (Production ELF File).
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.