Forum: Mikrocontroller und Digitale Elektronik AVR USB teensy - detach


von Benny (Gast)


Lesenswert?

Hallo,

ich habe mir mal die Firmware USB Keyboard vom teensy Projekt 
heruntergeladen und etwas damit herumgespielt und eine eigene 
Hauptschleife gebastelt. Soweit ist das ganz toll. Bespielsweise wird 
per Knopfdruck ein Text an den PC gesendet.

Im Moment hänge ich allerdings an einem Problem, bei dem ich nicht so 
recht weiß wie ich vorgehen soll.

Die Hauptschleife besteht aus einem Teil ("USB-Teil"), welcher immer 
dann ausgeführt werden soll, wenn mein Board per USB angeschlossen wird 
und einem Teil der ausgeführt werden soll, wenn das Board nicht per USB 
("Nicht-USB-Teil") angeschlossen ist.

Ziehe ich das Board vom USB ab und schalte es dann ein, so wird 
ordnungsgemäß der "Nicht-USB-Teil" ausgeführt. Stecke ich nun das Board 
an den USB, dann wird ordnungsgemäß der "USB-Teil" ausgeführt. Zeihe ich 
nun das Board wieder vom USB ab, dann bekommt dies das Board 
offensichtlich nicht mit, da weiterhin der "USB-Teil" ausgeführt wird.

Meine Frage ist nun, ob jemand Erfahrung damit hat, wie beim teensy ein 
"externer detach" registriert werden kann? Zum Einsatz kommt ein 
selbstentwickeltes Board auf Basis eines AT90USB82.

An diesen ist eine 2-farbige LED angeschlossen. Die grüne LED leuchtet 
im Falle der Ausführung des "USB-Teil", die andere LED im Falle des 
"Nicht-USB-Teil".

Im Datenblatt habe ich gelesen, dass es ein Bit "Detach" gibt, dass man 
setzen kann um den Controller physikalisch vom Host zu trennen. Einen 
Interrupt/Mechanismus der anzeigt, dass das Board gerade vom USB 
abgezogen wurde konnte ich leider nicht finden.

Kann mich jemand in die richtige Richtung schubsen?

Gruß
Benny

von Daniel S. (Firma: HiTech Store) (hakkeduster)


Lesenswert?

Hi Benny,

so ein ähnliches Problem hatte ich auch. Da ich aber etwas wenig Zeit 
hatte und auch etwas faul war, habe ich einfach geprüft ob der USB Port 
strom liefert oder nicht und es auf einen IO pin gelegt.

Gruß Daniel

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.