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

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.