Hallo, Ich habe folgene Frage: Ich habe eine Eletronik mit uC. Dessen UART wird über ein USB-Seriell-Kabel, in dem der FTDI bereits enthalten ist, mit dem Rechner verbunden. Nun möchte ich den RXD-Pin dagegen schützen, dass er als "alternativer Versorgungspin" beansprucht wird, wenn VCC ausgeschaltet, das Kabel jedoch gesteckt ist. Wie mache ich das am einfachsten/besten? Ich dachte an eine Diode in Längsrichtung. Gibts es CMOS-Schalter, die am Eingang Spannungen erlauben, wenn die Versorgungsspannung fehlt? Die Datenrate ist nicht hoch, momentan 9600, später vielleicht 19200 Baud. Grüße, Alex
Widerstand in Serie kann schon reichen, ein paar mA tun dem Chip nix. Alternativ vollständig entkoppelt per optokoppler oder ADUM. Teurer, aber hat auch ihre Vorteile!
Hi, danke für deine Antwort. Serienwiderstand 1k ist schon drin. Der reicht aber nicht, weil ich die Elektronik per Selbsthalteschalte zuschalte und jedes mal, wenn die UART gesteckt wird, läuft die Eletronik los, weil sie trotzdem über den Pin Strom zieht. Aber Optolkoppler oder ADUM (was auch immer das ist) schaue ich mir mal an.
Dann mache das so:
1 | 2,2k Ohm |
2 | +---[===]---o VCC |
3 | | |
4 | Signal o----|<|----+-----------o RxD µC |
Pullup am Controller und Diode Richtung FTDI. [Edit]Stefan war schneller, aus dem Bauch raus würde ich den Pullup aber größer machen, sagen wir 4k7 oder 10k.[/Edit]
:
Bearbeitet durch User
Sind denn die Versorgungen von 232 und µC entkoppelt? Sonst könnte das aufstarten doch auch über VCC laufen. Eventuelle post doch deine Selbsthalteschaltung, vielleicht kann man die auch ein wenig modifizieren, dass sie bei gewolltem Abschalten eine kleine Last (z.b. 100 Ohm) zuschaltet.
Danke für die Antowrten. Auf die Schnelle werde ich mal Stefans Lösung testen, die kann ich fix zusammenbasteln um erstmal weiterzukommen. Einen Eingang hat nämlich schon dicke Backen gemacht. Am Ende werde ich wohl die saubere Lösung per Isolator-IC realisieren. Ich hätte mal noch eine andere Frage. Wenn ich am USB-Seriell-Kabel RXD und TXD messe, wenn es nicht mit der Elektronik verbunden ist, aber im PC steckt, haben beide Leitungen einen High-Pegel, nicht nur TXD, wie ich das erwartet hätte. Wieso? RxD ist doch der Eingang. Müsste ich am Ende beide Pins des uC schützen? Grüße, Alex
Aus der Little-Logic-Reihe (http://www.ti.com/lit/sg/scyt129f/scyt129f.pdf) haben viele das "Ioff"-Feature: Ioff protection circuitry ensures that no excessive current is drawn from or to an input, output, or combined I/O that is biased to a specified voltage while the device is powered down. (aus http://www.ti.com/lit/an/scea026/scea026.pdf) Am einfachsten wäre dann ein Buffer wie z.B. 1G34 (http://www.ti.com/lit/sg/scyt129f/scyt129f.pdf)
Alexander H. schrieb: > Wieso? Dein Messgerät misst sehr hochohmig. Belaste mal die Pins während Deiner mit einem 10- oder 20 kΩ-Widerstand gegen Masse.
Alexander H. schrieb: > Ich hätte mal noch eine andere Frage. Wenn ich am USB-Seriell-Kabel RXD > und TXD messe, wenn es nicht mit der Elektronik verbunden ist, aber im > PC steckt, haben beide Leitungen einen High-Pegel, nicht nur TXD, wie > ich das erwartet hätte. Wieso? RxD ist doch der Eingang. Da wird einfach ein Pull-Up dranhängen, sonst würde der PC ja laufend Müll empfangen, wenn kein Gerät angeschlossen ist.
Alexander H. schrieb: > Einen Eingang hat nämlich schon dicke Backen gemacht. Am Ende werde ich > wohl die saubere Lösung per Isolator-IC realisieren. Warum postest Du Dein Problem nicht hier? Mit 99.9 wird weder ein Isolator-IC notwendig sein, noch ein Eingang dicke Backen machen. Ich glaube, RS232 ist so mit der meist überschätzte Kommunikationsstandard. Ohne Max232-Vodoo nicht beherrschbar. Gür Rx macht ein MAX wenig Sinn, und selbst Tx geht oft ohne. Nicht falsch verstehen: Die MAX sind idiotensicher. Aber bevor man es noch komplizierter macht, dann lieber einfacher.
Brathähnchen schrieb: > Aus der Little-Logic-Reihe... Danke, das sieht nach der einfachsten und günstigsten "offiziellen" Lösung aus. Achim S. schrieb: > Warum postest Du Dein Problem nicht hier? Mit 99.9 wird weder ein > Isolator-IC notwendig sein, noch ein Eingang dicke Backen machen. > > Ich glaube, RS232 ist so mit der meist überschätzte > Kommunikationsstandard. Ohne Max232-Vodoo nicht beherrschbar. > > Gür Rx macht ein MAX wenig Sinn, und selbst Tx geht oft ohne. > > Nicht falsch verstehen: Die MAX sind idiotensicher. Aber bevor man es > noch komplizierter macht, dann lieber einfacher. Ich verstehe deinen Post nicht so richtig. Grüße, Alex
Alexander H. schrieb: > Ich verstehe deinen Post nicht so richtig. Du hast eine Schaltung, die macht Probleme. Du zeigst uns aber weder diese Schaltung, noch kannst Du das Problem schildern. Wenn das RX Dein Problem ist, dann kannst Du Rx auch einfach am MAX vorbei auf einen (Bipolar-NPN-) Transistor führen. Mit 2 Dioden und 3 Widerständen hättest Du eine perfekte Eingangsschaltung, die ganz sicher keine Rückwirkung auf irgendein VCC hat. Vermutlich geht es noch einfacher, wenn Du uns zumindest die relevanten Teile Deiner Schaltung zeigst. Wenn ein Eingang "Dicke Backen" gemacht hat, ist gar ein simpler Fehler sehr wahrscheinlich.
@Achim, er hat einen μC und einen USB-RS232-TTL Umsetzer. Einen MAX 232 gibt's da nicht. Sascha
Oh, sorry. Dann ist die Diodenschaltung (stefanus und max) mehr als ausreichend und das Problem keines mehr.
Hi, ich hatte das gleiche Problem bei meiner Steuerung für die Pferdefütterung eines Kollegen. Ich hab da für RX und TX einfach SN74LVC1T45DBV genommen. Wenn eine oder beide Vccs fehlen/fehlt, dann ist der Ausgang Tristate. Mit einem Pullup hast du dann auch den richtigen Pegel. https://www.mikrocontroller.net/attachment/315896/Ausgabe_Schematic.png Gruß JackFrost
Alexander H. schrieb: > Aber Optolkoppler oder ADUM (was > auch immer das ist) schaue ich mir mal an. Einen Optolkoppler kenne ich auch nicht, aber den ADUM-Koppler als Trennung einer seriellen Schnittstelle habe ich hier benutzt: Beitrag "Re: Arduino ProMini galvanisch getrennt"
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.