XMega 128A3U USB-CDC wird nicht initialisiert

OP #3728461
Lesenswert?

Hallo,

ich habe ein Projekt im AVR-Studio, aufsetzend auf der ASF-Demo und habe 
folgendes festgestellt:

Rechner läuft - AVR einstecken: Alles wird erkannt und funktioniert.
Rechner aus - AVR hat schon Strom: Windows erkennt nichts ...

Kann es sein, dass ich da etwas übersehen habe und mir ein Callback 
fehlt, der nach der Init vom PC den USB-Stack im XMega neu startet ?

Vielleicht hat ja einer von Euch eine Idee, oder ein Stück Code, der 
mich erhellt :-)

Wie gesagt, die Funktion an sich ist in Ordnung, Probleme habe ich nur 
wenn der XMega vor dem PC läuft.

Vielen Dank schon mal.

Gruß

Markus
#3769881
Lesenswert?

Moin =)
Hat dein Board eine eigene Spannungsquelle oder wird es über das USB 
versorgt. Ein Problem könnte die Erkennung der Vbus-Spannung sein. Es 
gibt nur einige XMEGA die diese automatisch erkennen. Ansonsten muss man 
dies per Hand machen. Man sollte auch nur ein udc_attach durchführen, 
wenn die USB-Bus-Spannung anliegt. Eigentlich gibt es dafür dieses 
Event: UDC_VBUS_EVENT. Dies wird jedoch nur ausgelöst, wenn der 
Controller automatisch die Spannung erkennt.
Bei mir habe ich es so gemacht, dass ich udc_stop und udc_detach 
ausführe, wenn Vbus nicht mehr anliegt. Nur wenn Vbus anliegt führe ich 
ein udc_start und ein udc_attach aus. Somit ist an- und abstecken auch 
kein Problem, speziell wenn meine Schaltung selbstversorgt ist.

Olli

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