Hallo! Ich benutze einen PIC 18F4550 mit USB. Über diese USB Schnittstelle werden Daten empfangen und auch an einen PC gesendet. Jetzt hab ich das Problem, dass ich diese Ausgabe vom Controller an 3 PCs benötige. Dachte mir deshalb ich verwende einen FTDI Chip, damit ich zumindest noch einen weiteren PC über USB an den Controller hängen kann. Über UART erfolgt nur eine Datenausgabe, während wie beschrieben diese Datenausgabe auch an der USB Schnittstelle des Controllers erfolgt. Ist es möglich zwei FDTI Chips quasi parallel an UART zu hängen, damit diese die gesendeten Daten dann beide an die jeweiligen PCs senden? Oder ist dieses Vorhaben überhaupt nich umsetzbar?!? Muss das leider irgendwie so machen, da die Programme nur Daten über einen Com-Port empfangen können und ich die PCs über USB anschließen will. Hoffe auf Antwort. Danke schon im Voraus. MfG Darkleon
Nur kein Stress... Wenn der Controller sendet und nur die TX-Leitung zu den FTDI verbunden ist, dann sollte das gehen. Wenn du 1 Sender hast, ist es im Prinzip egal, wie viele Empfänger da sind, solange die jeweils genug für die anderen Empfänger übrig lassen. Also bei 100 FTDIs würd ich einfach mal behaupten, dass dann keiner mehr was "versteht". Sind aber die RX auch noch verbunden, dürfte das ein Problem geben, wenn einer der FTDI meint, er muss an den Controller senden. Dann drückt ein FTDI z.B. mit 5V auf die Leitung, die anderen mit 0V und schon gibts nen schönen kurzen.
Hallo Jaecko. Danke für die Antwort. Ja es wird vom Controller an die FTDIs nur gesendet. Heißt das, ich brauch (oder sollte) nur Tx verbinden? Rx kann ich dann ja unbelegt lassen. Sowohl an den FTDIs als auch am Controller. Oder soll ich die (mit oder ohne Bauteilen) mit GND verbinden? Hab nämlich noch nie mit FTDIs gearbeitet und auch nicht, dass nur gesendet aber nicht empfangen wird...deshalb die Frage ;) MfG
Vorsicht. TX vom FTDI muss an RX vom PIC und umgekehrt. TX am FTDI ist der Ausgang, aus dem die Daten kommen, die der PC gesendet hat. TX und RX beziehen sich immer auf den Chip, an dem sie direkt dran sind. Also musst du den TX-Pin des PIC an die RX-Anschlüsse des FTDI anschließen. Das Block Diagramm im Datenblatt des FT232R verdeutlich das.
Danke für den wichtigen Hinweis supachris. Kann ich dann Rx am PIC und Tx am FTDI unbeschaltet lassen, da wirklich nur vom PIC zu den PCs gesendet wird. Nochmals danke für den Hinweis. MfG
Hi! Hab mir das Datenblatt vom FT232R angesehen und auf Seite 29 der .pdf Datei wird bschrieben, wie man den Chip mit einem uC verbindet. Da gibt es neben Rx/Tx auch die Anschlüsse RTS# und CTS#.Diese werden für den "handshake" verwendet.Wenn ich wie beschrieben nur Daten an den Pc übermittle, brauch ich die dann überhaupt? Denk mal CTS# gehört zu Tx und RTS# zu Rx, oder? Hab auch gesehen, dass man einen CBUS PIN als PWREN# konfiguieren kann.Ist dieser dann für den "sleep" Modus des FT232 zuständig? Das kann man doch auch einfach über die Spannungsversorgung machen, oder? Da ich nämlich noch Schieberegister an Bord habe dachte ich mir, dass ich die ganzen ICs (damit auch den FT232) über einen Transistor mit Spannung versorge und wenn der PIC in den Sleep Modus geht, dann trennt er alle ICs vom Netz, damit der Standby-Modus so wenig als möglich meine Batterie belastet? Oder spricht was gegen diese Idee? Hoffe ihr könnt mir wieder helfen. MfG
Handshake brauchst du in den meisten Fällen nicht. Extrem hohe Datenraten wirst du ja nicht haben. Mit dem PWREN ist das so: Die USB Spezifikaion verlangt, dass angeschlossene Geräte im Standby Modus weniger als 1mA oder sowas (die genauen Zahlen weiß ich jetzt gerade nicht mehr) aus dem USB Anschluss ziehen. Der Pin am FT232 gibt also an, wann der Host-Controller den FT232 schlafen geschickt hat. Dann musst du deine gesamte Elektronik abschalten, wenn du die USB Spezifikation einhalten willst.
Danke Christian für deine schnelle Antwort. Also PWREN# ist also nicht Pflicht, vor allem bei meinen Anforderungen uninteressant, da die Steuerung die PCs ein und ausschaltet und daher weiß, wann die Pcs aus sind und die Steuerung schlafen gehen kann ;) kann ich daher die nicht benutzten CBUS Leitungen unbeschaltet lassen oder gehören die nach GND oder VCC? Im Datenblatt sind die zumindest unbeschalten, von daher denk ich kann ich die dann einfach so lassen. Nochmals Danke. MfG
Ich würde Optokoppler zwischenschalten um Potentialunterschiedsprobleme zu vermeiden.
Hi Skua. Du meinst Optokoppler zwischen USB und FTDI?? Das hab ich sowieso vor, nachdem mir bei meinen ersten USB Versuchen 2 Controller im Pc abgeraucht sind ;) Also eine Trennung ist sowieso Pflicht!! Danke für deinen Hinweis. MfG
Darkleon wrote: > Danke Christian für deine schnelle Antwort. > > Also PWREN# ist also nicht Pflicht, vor allem bei meinen Anforderungen > uninteressant, da die Steuerung die PCs ein und ausschaltet und daher > weiß, wann die Pcs aus sind und die Steuerung schlafen gehen kann ;) Hm, naja, wenn der PC aus ist, ist das für ein USB Gerät Standby, dann darf das nicht viel Strom ziehen. Wenn man sich an den Standard halten will.. > kann ich daher die nicht benutzten CBUS Leitungen unbeschaltet lassen > oder gehören die nach GND oder VCC? Im Datenblatt sind die zumindest > unbeschalten, von daher denk ich kann ich die dann einfach so lassen. Kannst du offen lassen.
Ja das mein ich ja Christian. Wenn ich den Pc über die Steuerung ausschalte, dann deaktiviert der Controller seinen internen USB und UART Port. Ob der Pc dann ausgeschaltet ist oder nicht (falls er sich aufhängt) wird über eine eigene Portleitung überwacht. Sobald der Pc ausgeschaltet ist schaltet der PIC die Spannungsversorgung der anderen Ics weg und geht selbst in den "sleep" modus. Gestartet wird das ganze dann über einen externen Interrupt und die Steuerung schaltet dann die USB und UART Module und natürlich den Pc wieder ein. So sollte ich der USB Spezifikation entsprechen...hoff ich zumindest;) MfG
Hallo! Hab da noch ne Frage. Da ich jetzt das SPI Modul auch brauch ergibt sich folgendes Problem. Für SPI brauch ich folgende Pins: SDI, SCK und SDO. Nur ist SDO Pin der selbe wie Rx vom USART Modul. Kann ich nun beide Module nutzen? Denn ich benötige den Rx Pin eigentlich gar nicht, da ich ja nur sende und nicht empfange. Aber das Modul wird mir diesen Pin doch konfiguieren, oder kann ich das irgendwo einstellen, dass ich nur sende und daher den Rx Pin SDO sein soll?!? Oder bleibt mir nur die Soft USART als Möglichkeit Verbindung mit den FT232RL aufzubauen.?? Hoffe auf Antwort. MfG
Weiß hier niemand, ob ich auf Soft - USART ausweichen muss oder nicht, damit ich den FT 232 ansprechen kann?!? Wäre um jede Hilfe dankbar. MfG
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.