Gast
#3513183
Hi Leute, ich habe gerade einige µC-Projekte mit USB-Anschluss im Kopf. Konkret geht es dabei um HIDs/Audio Devices und Laderegler auf PIC-Basis. Es geht also nicht um USB-Hosts sondern nur um Device-Konfigurationen. Um Platz zu sparen würde ich gerne die verwendete Mini-USB-Buchse mit einer zweiten Funktion belegen: Der ID-Anschluss soll mit pic-RESET (MCLR) verbunden sein und die Datenleitungen gehen nicht nur an den PIC-internen USB-Transceiver, sondern auch an die Programmierpins. Wenn ich also mein Device an einen regulären USB-Host (wie z.B. einen PC) anschließe, müsste ID "in der Luft hängen", da das normale USB-Kabel (A <--> Mini-B) am Host keinen ID-pin vorsieht. Mit einem Pullup an RESET, läuft mit Programm dann ganz regulär. siehe auch: http://en.wikipedia.org/wiki/USB#Pinouts Mein Plan: Nun baue ich ein Adapterkabel von picKit3 auf Mini-USB-B und wenn mein picKit3 über ID den RESET runterzieht, ist der interne transceiver deaktiviert und der pic lässt sich schön programmieren. Sobald das neue Programm dann läuft, sind die PGM-Pins unbenutzt (hochohmige Eingänge) und stören so nicht die reguläre USB-Übertragung. Über hohe Datenraten bis hin zu 480Mbit/s freue ich mich natürlich langfristig, aber nüchtern betrachtet reichen 1.5MBit/s für meine derzeitigen Anwendungen dicke! Meint ihr, das klappt so? Stört die Verzweigung in den Datenleitungen die USB-Übertragung? Oder die Tatsache, dass da zusätzlich Eingangspins (mit ihrer Kapazität) dranhängen? Ab welcher Übertragungsgeschwindigkeit wird's kritisch? Gibt es für USB eine Beschaltung, die die Programmierung stört? z.B. Pullups/Pulldowns/Kondensatoren/Spulen? schönes Wochenende euch!