Forum: Mikrocontroller und Digitale Elektronik AVR USB - atmega32u2 - bootloader?


von anfengah (Gast)


Lesenswert?

Hallo,

kurz: ich habe über ISP den Bootloader gelöscht (weil ich CKDIV/8 
ausschlaten wollten, dass ging nur wenn man einen erase macht) und 
möchte nun den atmel (oder alternativen ) BL wieder draufschieben.

Bloß wo finde ich die entsprechende hex datei oder auch den Bootloader. 
Suche mir schon seit stunden nen wolf auf der Atmel seite. Man ist die 
durcheinander....  Ich glaube LUFA bietet auch einen BL, den bekomme ich 
allerdings nciht kompiliert 5000 fehlermeldungen...

Danke
A

von avrusb (Gast)


Lesenswert?

Das wäre nicht notwendig gewesen - CKDIV/8 kann man aus
der laufenden Software heraus ausschalten.
Siehe CLKPR auf Seite 39 im Datenblatt.
Nun ist es aber passiert.
Zur Not sollte es vielleicht auch der Bootloader zum
ATmega32u4 tun:
http://www.atmel.com/dyn/products/tools.asp?family_id=607

Aber Vorsicht - ein Scherzbold hat den Deskriptoren-Block
in der Hex-Datei (*.a90) auf ungerade Byte-Adressen des
Flash gesetzt. Manche Programmer kriegen das nicht korrekt
auf die Reihe. Mein workaround: erst in binär-Datei wandeln,
dann wieder zurück in Hex-Datei und die Zeilen vor dem
Bootloader entfernen.

von avrusb (Gast)


Lesenswert?

Ich sehe gerade, die USB-Interrupt-Vektoren passen
bei den u4-Typen nicht zu den u2-Typen.

Dann nimm den Bootloader zum AT90USB162.
Auch dort gilt der Hinweis mit den "krummen" Intel-Hex-
Zeilen-Adressen.

von avrusb (Gast)


Lesenswert?

Mist... den Bootloader vom AT90USB162 kannste auch nicht
nehmen wegen dem Entry-Point.
Vielleicht kannst Du aber den Atmel-Quelltext besser
compilieren bzw. an den ATmega32u2 anpassen.

von anfengah (Gast)


Lesenswert?

danke, und wie geht das? mit xxd?

von anfengah (Gast)


Lesenswert?

ich arbeite mit avrstudio und stk500. da scheint es mit den a90 dateien 
zu gehen. nach aufspielen und einstecken wird es ncith erkannt. ich habe 
hier eine art "teensy".
lUFA habe ich gerade auch kompiliert bekommen, auch hier tut sich 
nichts.
das einizige was sich geändert hat, sind die lockbits & ckdiv/8 /(habe 
ich jetzt erstmal wieder gesetzt)

hmmm

von anfengah (Gast)


Lesenswert?

du hast recht, geht nicht, ich glaube der entry point liegt bei der 162 
bei 7000.

von anfengah (Gast)


Lesenswert?

hat jemand von der mittagsschicht noch eine gute idee?

von Nico (Gast)


Lesenswert?

Wenn du nicht zwingend den Original BL brauchst, dann kannst du auch den 
vom LUFA Projekt nehmen: http://www.fourwalledcubicle.com/LUFA.php

von anfengah (Gast)


Lesenswert?

im grunde genommen ist es mir egal welcher BL drauf läuft.
an lufa bin ich dran, hab ich auch kompiliert bekommen, allerdings läuft 
es nicht.

hier mein makefile:

MCU = atmega32u2
BOARD = TEENSY
F_CPU = 16000000
BOOT_START = 0x3800

wie aktiviert man den Lufa DFU BL? Ich muss die lockbits entsprechend 
setzen, damit der BL auch anspringt, jedoch erkennt windows das USB 
gerät garnicht (0000:0000)

hier mein makefile:

MCU = atmega32u2
BOARD = TEENSY
F_CPU = 16000000
BOOT_START = 0x3800

von anfengah (Gast)


Lesenswert?

jetzt läuft es, lag an der aktuellen release version von LUFA 
(LUFA101122).

svn checkout , die release 1619 hat den bug nicht mehr.

von anfengah (Gast)


Lesenswert?

achja, 0x3800 ist übrigens falsch, da es ja words sind. Daher bootloader 
start adresse in bytes: 0x7000 (2 x 0x3800, immer wieder falle ich 
darauf rein :-)

von 3dotter (Gast)


Lesenswert?

Hi, excuse me for not writing in German. I can read German, but my 
German writing is awful. I am a newbie in atmega programming.

I have a atmega32u2 hardware setup which needs an internal clock running 
at 8 MHz. It means I can not use DFU, but have to use TeensyHID, which 
has been part of LUFA (here: 
http://www.fourwalledcubicle.com/files/MyUSB/LUFA%20091223.zip). This 
setup however is meant for ATMEGA32U4 (Teensy 2.0) with 16 MHz external 
oscillator.

My question is what settings I should have in the makefile for my 
atmega32u2 and also what fuse and lockbits settings I need. By the way I 
have a complete source and visual studio project file package for 
building the teensyHID for the related and PIN compatible at90usb162 MCU 
related to the board I am using. I can provide that.

I hope someone can help me. Thanks in advance!

von Fabian S. (jacky2k)


Angehängte Dateien:

Lesenswert?

So ich hatte das gleiche Problem, also Bootloader gelöscht und ihn 
nirgends mehr gefunden. Also neuen ATMega32U2 drauf und Backup gemacht. 
Hab das mal alles in Anhang getan, vielleicht hilfts nochmal jemandem ;)

von Klaus (Gast)


Lesenswert?

Fabian S. schrieb:
> Hab das mal alles in Anhang getan, vielleicht hilfts nochmal jemandem

Hallo Fabian, deine HEX-Files enthalten nur 0xff, keinen Code, das hilft 
niemanden !!!

Gruss Klaus

von Fabian S. (jacky2k)


Lesenswert?

Das wurde hier bereits erwähnt.... und wäre es möglich den Beitrag 
nochmal zu ändern würde ich sie ja wieder raus nehmen...

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
Noch kein Account? Hier anmelden.