Forum: Mikrocontroller und Digitale Elektronik USB Reconnect mit PIC32


von Rene B. (themason) Benutzerseite


Lesenswert?

Hallo ...

ich habe eine Frage bezüglich USB auf dem PIC32 bzw USB generell.

Ich habe einen Bootloader der über ein Virtuellen COM Port meinen PIC32 
flasht. Läuft soweit gut. Wenn mein Bootloader aber nun die Applikation 
startet kann ich in meiner Applikation USB nicht mehr initialisieren bzw 
"erneut" initialisieren, da der Windows PC ja "denkt" das Gerät ist noch 
dran. Demnach kommt in meiner Anwendung auch kein erneutes VBUS_ON Event 
mitdem ich eine erneute USB-Verbindung aufbauen könnte. Umgekehrt habe 
ich das Problem ja auch, das wenn meine Applikation in den Bootloader 
wechseln muß, die USB-Verbindung "logisch" unterbrochen wird, da der uC 
sich ja Resettet, aber die Leitung noch "offen" ist. Sehe ich das 
richtig, oder habe ich das was übersehen ? Gibt es irgendeine 
Möglichkeit die USB-Kommunikation erneut "anzutriggern" ? Auch für den 
Fall das ich z.b. neben einer seriellen Schnittstelle per Knopfdruck ein 
Massenspeichergerät hinzufügen möchte müsste ich ja eine erneute 
Enumeration veranlassen. Gibt es da Möglichkeiten ohne das gerät 
anzustöpseln und wieder anzustecken ? Oder habe ich nur einen 
Gedankenfehler und das ganze geht mit ein paar "Kniffen" recht einfach ?

von Jim M. (turboj)


Lesenswert?

Mach einfach den 1k5 Widerstand nach 3V3 aus für einige Sekunden.

Falls das nicht geht:
USB Pins auf GPIO Output umstellen und ein Low ausgeben. Das ist dann 
entweder ein USB Reset oder ein Disconnect, je nachdem wie lange der 
Zustand andauert.

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.