Hallo zusammen, ich möchte die Kommunikation eines USB Devices hardwareseitig blockieren/abschalten und durch einen GPIO auf Wunsch aktivieren (die meiste Zeit soll der Bus blockiert bleiben). Dazu will ich die beiden Datenleitungen D+/- sperren. Die Versorgungsspannung/GND soll erhalten bleiben. Ich bin noch recht neu (ich hoffe ich mache mich net zum Hampel) und ich bin nicht ganz sicher wie ich das bewerkstelligen möchte, so dass das ganze auch zuverlässig funktioniert. Meine erste Idee wäre einen pull-up auf die Datenleitungen zu und abzuschalten. Nun bin ich mir nicht sicher, ob das angeschlossene Gerät bei einem + auf der Leitung nicht schon aktiviert wird (genau das will ich verhindern). Hat da jemand zufällig Erfahrung? Eine andere Idee wäre natürlich einfach einen Transistor nehmen und damit die Spannung eines einstellbaren GPIOs zu schalten. Ich würde jedoch nur ungern in den Signalpfad eingreifen und dadurch riskieren, dass USB nicht mehr funktioniert. Bitte löschen wenn die Frage zu dumm ist. Lg
Normalerweise hast Du ja einen 1k5 Pullup, mit dem der Host feststellt, dass ein Device (1) da ist und (2) Full/High Speed oder Low Speed ist (je nachdem, ob der Pullup an D+ oder D- ist). Es reicht, die Versorgung dieses Pullups zu schalten (zB per Portpin). Wenn der Pullup mangels Spannung nicht mehr pullt, wird das Device nicht mehr enumeriert und ist dann auch nicht mehr da. fchk
Dandel schrieb: > Eine andere Idee wäre natürlich einfach einen Transistor nehmen und > damit die Spannung eines einstellbaren GPIOs zu schalten. Lol. Dass USB differentiell ist ist dir bekannt? Dass man mit Transistoren auch nicht ohne weiteres ein paarhundert MHz schaltet auch? Schonmal was von Augendiagramm gehört?
Aus meiner begrenzten Sicht des Bastlers würde ich, wenn's mein Problem wäre, einfach einen Analogswitch* nehmen. Kostet praktisch nix und sollte funktionieren. Oder gibt's dagegen Einwände? *Damit meine ich natürlich das CMOS-Bauteil und keinen Schiebeschalter. LG, N0R
Norbert M. schrieb: > Aus meiner begrenzten Sicht des Bastlers würde ich, wenn's mein > Problem > wäre, einfach einen Analogswitch* nehmen. Kostet praktisch nix und > sollte funktionieren. Oder gibt's dagegen Einwände? Falls du die 4066, 4067, 4051, 4052, 4053 o.ä. meinst: Zu hochohmig, zu große parasitäre Kapazitäten. Die Dinger sind eher für den Audio-Bereich bis zu 20kHz gedacht, nicht für schnelle digitale Kommunikation mit 500MHz.
Nehme einen 270 Ohm Widerstand von D+ gegen Masse und schalte den mit einem Schalter. Das sollte die Enumeration beim Einstecken verhindern. Ob das bereits enumerierte Gerät dann aus geht weiß ich nicht.
:
Bearbeitet durch User
c-hater schrieb: > Falls du die 4066, 4067, 4051, 4052, 4053 o.ä. meinst: Zu hochohmig, zu > große parasitäre Kapazitäten. In der Tat, sowas in der Art habe ich gemeint. > Die Dinger sind eher für den Audio-Bereich bis zu 20kHz gedacht, > nicht für schnelle digitale Kommunikation mit 500MHz. Im Datenblatt vom MC74VHC1G66 steht was von Bandwith 175 MHz, in dem vom SN74LVC1G3157 etwas von 300 MHz "Frequency response". Was das genau bedeutet weiß ich natürlich nicht, weil dieses "Hochfrequenzzeugs" für mich wohl immer ein Buch mit sieben Siegeln bleiben wird. Das mit den parasitären Kapazitäten verstehe ich jedoch, das ist natürlich blöd. Anyway, ich hab' noch mal kurz nach "USB analogue switch" gesucht, und da findet sich schon einiges: NLAS7222A von On-Semi, S1F77310 von Epson, 14535 von Maxim, etc. Erwartungsgemäß natürlich nicht im Bastlergehäuse DIP, sondern DFN-artig Schlußendlich sollte glaube ich, mit dem ADG3242 im SOT-23-8 etwas passendes für den OP gefunden haben, das eventuell passen könnte, auch wenn das natürlich ein sehr kleines Gehäuse ist (was sich in diesen Geschwindigkeitsklassen wohl wegen der von Dir angesprochenen Kapazitäten wohl kaum vermeiden lässt). Hier gibt's noch mehr Auswahl: www.analog.com/library/analogdialogue/archives/40-01/usb_switch.html Wenn man mit 12 Mbps auskommt, dann gibt's dort sogar ein bastler- freundliches SOIC (ADG774, ist allerdings kein Switch sondern ein MUX). LG, N0R
Die erste Frage wäre mal was das soll. Die zweite wäre dann was für Geräte damit geschaltet werden sollen und ob überhaupt geklärt ist, ob die sich das so gefallen lassen. Leider wird viel am USB ohne Sachkenntnis gebastelt. Es gibt Grenzen was man mit dem USB machen kann und dabei im betriebssicheren Bereich zu bleiben.
kopfkratz Also wenn muß schon D+/D- physisch getrennt werden, das mit den Widerständen wird nicht funktionieren. Also am einfachsten einen USB2USB Adapter selber aufbauen mit Relais, SolidStateRelais oder Triac. USB1.1, USB2 oder USB3, was soll geschaltet werden ? Und wie schon erwähnt verträgt das USB-Gerät das oder hängt es sich auf ?
Thomas R. schrieb: > nimm TS3USB30 oder ISL54200 TS3USB30E günstig, leicht zu bekommen, im VSSOP10 Gehäuse leicht zu verarbeiten (wer schmerzen will kann ihn auch im DFN Gehäuse bekommen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.