Atmega8u2 USB

Gast #2837661
Lesenswert?

Hallo,
versuche seit ein paar Tage einen Atmega8u2 am USB zum laufen zu 
bekommen.
Die Schaltung ist Standard. µC an 16Mhz Quartz. Zwischen USB und µC sind 
zwei 22Ohm Widerstände.
Als Treiber wollte ich LUFA verwenden, da ich mit dem AVR Studio absolut 
nicht klar komme. Ich habe nun den LUFA DFU Bootloader so konfiguriert, 
dass er mit einem Atmega8u2 laufen sollte:
1
MCU          = atmega8u2
2
ARCH         = AVR8
3
BOARD        = USER
4
F_CPU        = 16000000
5
F_USB        = $(F_CPU)
6
OPTIMIZATION = s
7
TARGET       = BootloaderDFU
8
SRC          = $(TARGET).c Descriptors.c BootloaderAPI.c BootloaderAPITable.S $(LUFA_SRC_USB)
9
LUFA_PATH    = ../../LUFA
10
CC_FLAGS     = -DUSE_LUFA_CONFIG_HEADER -IConfig/ -DBOOT_START_ADDR=$(BOOT_START_OFFSET)
11
LD_FLAGS     = -Wl,--section-start=.text=$(BOOT_START_OFFSET) $(BOOT_API_LD_FLAGS)
12

13
# Flash size and bootloader section sizes of the target, in KB. These must
14
# match the target's total FLASH size and the bootloader size set in the
15
# device's fuses.
16
FLASH_SIZE_KB         = 8
17
BOOT_SECTION_SIZE_KB  = 4
Es kompiliert auch wunderbar, nur wenn ich nun den Code auf den Atmega 
lade, passiert gar nichts. Auch keine Enumeration.
Mein erster Gedanke war nun, dass der Takt nicht stimmt.
Unter den fuses habe ich EXTLOFXTAL im Avrstudio (das einzigste mit 
XTAL).
wenn ich nun diesen Code ablaufen lasse:
1
    asm volatile("nop");   //1clk
2
    PORTC |= (1<<4);       //2clk
3
    asm volatile("nop");   //1clk
4
    PORTC &= ~(1<<4);      //2clk + rjmp 2clk = 8clk*2MHz = 16MHz

dann sehe ich im oszi ein 2MHz Signal. Also läuft er mit den 16Mhz.
Die USB Buchse habe ich auch schon überprüft, ob sie richtig 
angeschlossen ist.
Das einzige Merkwürdige sind 4Volt, die ich am USB_cap Messe, der für 
den Internen Stepdown-Wandler benötigt wird. Das sollten doch 3.3V sein 
oder?

Kann mir jemand Tipps geben, wie ich die USB Kommunikation überprüfen 
kann? Oszi steht zur Verfügung.

mfg.
#2837671
Lesenswert?

B.H. schrieb:
> Das einzige Merkwürdige sind 4Volt, die ich am USB_cap Messe, der für
> den Internen Stepdown-Wandler benötigt wird. Das sollten doch 3.3V sein
> oder?

Sind auch alle Masseanschlüsse angeschlossen?

B.H. schrieb:
> Zwischen USB und µC sind
> zwei 22Ohm Widerstände.

Hm? Was steht denn dazu im Datenblatt? Kommt mir ein kleines bisschen 
hoch vor.
mfg mf

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren