www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik XOR IC mit RS232-TTL-Pegelwandler


Autor: Thomas B. (froms)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich arbeite gerade an einem kleinerem Projekt bei dem die Steuerung über 
RS232-Fernsteuerungen realisiert ist.
Am System kann man eine Kabelfernbedienung und einen Joystick 
anschließen. Beide arbeiten, wie schon gesagt, mit RS232-Pegeln.
Ich habe beide Fernsteuerungen über eine Schaltbox gleichzeitig 
angeschlossen. Die TX-Leitung der Fernsteuerungen ist über einen 
mechanischen Schalter wechselbar. Dies habe ich gemacht, da es nicht 
möglich sein soll mit beiden Fernsteuerungen gleichzeitig einen Befehl 
abzusetzen.

Ich denke über eine einfache elektronische Lösung nach, welche den 
mechanischen Schalter ersetzten soll. Dabei könnte man einen XOR-Logik 
IC einsetzen. Jedoch müsste ich dann noch mit Pegelwandlern (RS232-TTL) 
arbeiten, da ich keinen IC kenne, der die RS232 Pegel verarbeiten kann.

Kennt jemand so einen Baustein oder habt ihr noch andere/bessere 
Anregungen für mich.

Viele Grüße
Thomas

Autor: Henk (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DU redest von RS232-TTL- Pegeln? Was meinst Du denn nun genau?
Sitzt am Eingang ein MAX232- Pegelwandler? Dann lege doch die 2 
verschiedenen Fernsteuerungen an 2 unterscheidliche Kanäle des 
Pegelwandler und verschalte das ganze auf Seite der TLL -Logikpegel.

Autor: Thomas B. (froms)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, ich arbeite nicht mit Pegelwandlern.
Ich bräuchte jedoch einen, wenn ich einen XOR-IC benutzen möchte.
Ich wollte das gern mit nur einem IC erschlagen. Aber die Idee mit den 
zwei unterschiedlichen Kanälen ist nicht schlecht.

Autor: Thomas B. (froms)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab die Idee mal weiterverfolgt.
Gefällt mir eigentlich gut.

Für Anregungen bin ich weiter dankbar.
Vielleicht hat ja noch der ein oder andere eine bessere Idee oder kennt 
einen IC, der das alles auf einmal macht.

Vielen Dank schonmal Henk.

Gruß
Thomas

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Thomas B. (froms)

>Ich denke über eine einfache elektronische Lösung nach, welche den
>mechanischen Schalter ersetzten soll.

Du brauchst einen Multiplexer hinter dem MAX232. Der hat ja zwei RX 
Kanäle, ideal für deine zwei Fernbedienungen. Dahinter der MUX und 
fertig.
Z.B 74xx151 oder 74xx153.

MFG
Falk

Autor: STK500-Besitzer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Du brauchst einen Multiplexer hinter dem MAX232. Der hat ja zwei RX
>Kanäle, ideal für deine zwei Fernbedienungen. Dahinter der MUX und
>fertig.
>Z.B 74xx151 oder 74xx153.

Hinter dem MAX232 herrscht doch Logikpegel. Da könnte man vermutlich 
auch mit einem Satz NAND-Gattern was aufbauen.

Autor: lötfix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So wie du das aufgemalt hast, ist  das (meiner Meinung nach) Bullshit.
Was nützen dir die Bits(!) die da durch die Leitung kommen XOR verknüpft 
am Empfänger (ok, wenn du eine Checksumme o.ä. in der Übertragung hast, 
geht halt bei gleichzeitigem Senden nix mehr)?

Du brauchst in jedem Zweig eine Torschaltung (die sich gegenseitig 
verriegeln) - also wie Falk schon sagte, einen Multiplexer (kann man 
auch mit NANDs etc. als 2 x Torschaltung aufbauen).

Ein Auswahlkriterium, welches Tor offen sein soll, brauchst du nat. 
trotzdem (Schalter; Tor, an welchem zuerst ein Signal kommt, bleibt eine 
gemwisse Zeit aktiv o.ä.)

Guts Nächtle

Autor: Thomas B. (froms)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen,

Mit der XOR-Verknüpfung will ich soch nur den Schalter simulieren. Ich 
will doch nur vermeiden, dass beide (Fernbedienung und Joystick) 
gleichzeitig senden können. Und das sollte ich, wenn ich jetzt nicht 
ganz falsch denke, mit dem XOR-Glied erreichen, oder?
Dann brauch ich doch keinen MUX mehr.

Gruß
Thomas

Autor: lötfix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie sehen denn die Daten von den Steuergeräten aus?

Da sind nicht nur die Pegel, sondern auch die (hier seriellen) 
Datenworte ( also Folgen von 0en und 1 en) interessant, die von den 
Steuergeräten kommen (sollten die Steuergeräte die ser. Schnittstelle 
mit irgendwelchem Bitbanging mißbrauchen, kannst du mit dem MAX232 eh so 
nicht arbeiten).

Also bitte mehr Info....

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Thomas B. (froms)

>will doch nur vermeiden, dass beide (Fernbedienung und Joystick)
>gleichzeitig senden können. Und das sollte ich, wenn ich jetzt nicht
>ganz falsch denke, mit dem XOR-Glied erreichen, oder?

Nöö, falsch gedacht. Du brauchst einen MUX. Sei es nun ferig oder aus 
(N)AND Gattern.

Ein XOR ist ein gesteuerter Inverter, KEIN geteuerter Schalter wie AND 
oder OR.

Mfg
Falk

Autor: Thomas B. (froms)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

so ich hab nochmal ein bisschen nachgelesen.

@Flak:
XOR geht auf jeden Fall. Schau dir mal das angehängte Bild an. Für nen 
MUX bräuchte ich wieder ein Steuersignal, welches ich ohne größeren 
Aufwand nicht realisieren kann.

@lötfix:
Bit-Banging wird nicht genutzt. Es werden nur Hardware RS232 Signale 
verwendet. Es sollte also mit nem Max232 klappen.
Die "Daten" sind reine Tastenbefehle. Also es wird ein Byte übertragen, 
welches den Startbefehl für ein Ereignis darstellt, wenn eine Taste 
gedrückt wird. Lässt man die Taste los, so wird ein "Stoppbyte" 
gesendet, welches die aktuelle Operation beendet.
Was genau gemacht wird, ist im "Endgerät" festgelegt.

Ich hoffe das ist verständlich :).

Hat noch jemand nen guten Vorschlag für ICs. Vielleicht gibt es ja was, 
mit dem man mehrere Funktionen abbilden kann.

Danke und Gruß
Thomas

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das was wir dir die ganze zeit versuchen zu erklären ist, dass deine 
signale aus mehrerern 1en und nullen aufgebaut sind. das soll heissen, 
dass wenn ie erste fernbedienung sendet irgendwo dazwischen die 2te 
"reinspringen" kann. somit ist dein signal wertlos, da es irgend ein 
mischmacsh aus beiden fernbedienungen ist.

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nochmal anders, wenn deine erste fb eine reihe aus 010101 sendet und die 
zweite zeitversetzt 111111
hast du:
010101
  111111
--------
01101011

Autor: lötfix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, aber ich glaube, du hast das noch nicht wirklich verstanden - XOR 
ist ungeeignet!!!

An Stelle deines XOR könnten z.B. 3 x NAND 7400 treten.

Gatter 1: in :1 x Signal1, in:1. Pol Umschalter (2. Pol Umschalter ist 
auf Masse out: Eingang 1 Gatter 3

Gatter 2: in :1 x Signal2, in:3. Pol Umschalter (2. Pol Umschalter ist 
auf Masse out: Eingang 1 Gatter 3

Gatter 3: Ausgang geht zum Receiver

Jetzt hast du deine Mechanische Lösung erst mal nachgebaut - nun mußt du 
dir noch etwas intelligentes für den Schalter ausdenken...(Signal 
Triggert Zeitglied und blockiert so anderen Zweig o.ö.)

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
1. Man braucht einen MUX. Punkt.
2. Man kann das Steuersignal aus einem Monoflop generieren. Denn die 
steigende Flanke vom (Dauer)Stopbit zum Startbit ist der Anfang einer 
Übertragung. Damit schaltet man den MUX, und hat damit sogar eine 
Vorrangschaltung für den Kanal.
MFG
Falk, nicht Flak

Autor: lötfix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry vertippt,
es muß

Gatter 2: in :1 x Signal2, in:3. Pol Umschalter (2. Pol Umschalter ist
auf Masse out: Eingang 2 Gatter 3

sein

Autor: Thomas B. (froms)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achso, danke und sorry für das Missverständnis.
Das mit den zeitversetzten Signalen hatte ich so gar nicht bedacht. Wie 
dumm...
Dann ist auch der Rest klar.

Also bleibt dann nur die Lösung über die NANDs und Multiplexer mit 
Monoflip. Ist natrülich ein bisschen mehr Bauteilaufwand als gedacht.

Könnt ihr da IC-technisch was empfehlen. Beim NAND hab ich ja jetzt 
schon was. Multiplexer kann ja dann auch was einfaches sein.
Beim Monoflop reicht denke ich auch ein NE555?!

Danke für die vielen Antworten.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Thomas B. (froms)

>Also bleibt dann nur die Lösung über die NANDs und Multiplexer mit
>Monoflip.

NAND ODER MUX.

>Könnt ihr da IC-technisch was empfehlen.

Wer lesen kann, ist klar im Vorteil. Und die blauen Wörter sind Links, 
die  manchmal doch ganz brauchbare Informationen enthalten. Nur mal son 
ne Idee . . .

Autor: Thomas B. (froms)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So, jetzt häng ich mal wieder.
Ich hab mich für die Variante Multiplexer entschieden. Dafür brauch ich 
ja nen Schalter (bspw. NE555).
Jedoch komme ich da grad irgendwie nicht weiter und drehe mich nur im 
Kreis.
Wenn ich das richtig überlegt habe, bräuchte ich 2 Timer (NE556), da ich 
ja auch 2 Datenströme überwachen muss. Ich würde den Trigger auf das 
Startbit der Datenströme legen und dann über das RC-Glied die Sendezeit 
festlegen. Jedoch muss ich die beiden Timer ja wieder irgendwie 
verschalten (bspw. ODER-Gatter).
Dann kann ich das als Schalter/Vorzugsrichtung (s0) für den MUX nutzen.

Ist das so richtig durchdacht?

Gruß
Thomas

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Thomas B. (froms)

>Ist das so richtig durchdacht?

Nöö. Es gilt immer noch mein letztes Posting. Eieieieiei.

Autor: Thomas B. (froms)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk Brunner schrieb:
> @  Thomas B. (froms)
>
>>Ist das so richtig durchdacht?
>
> Nöö. Es gilt immer noch mein letztes Posting. Eieieieiei.
>
>2. Man kann das Steuersignal aus einem Monoflop generieren. Denn die
>steigende Flanke vom (Dauer)Stopbit zum Startbit ist der Anfang einer
>Übertragung. Damit schaltet man den MUX, und hat damit sogar eine
>Vorrangschaltung für den Kanal.

@Falk
Dann sei doch auch bitte so nett und erklär mir meinen Denkfehler. Ich 
kann dir bei der Sache mit einem Monoflop nicht ganz folgen.Das zuvor 
geschriebene hab ich gelesen. Jedoch häng ich da grad.
Sorry, aber knappe Antworten bringen mich da auch nicht weiter!

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Thomas B. (froms)

>Dann sei doch auch bitte so nett und erklär mir meinen Denkfehler.

Das Monoflop erkennt die Startflanke des RX-Kanals B und schaltet den 
MUX dann auf diesen um. Erkennt es keine Startflanke, bleibt der MUX auf 
Kanal A stehen und die Daten werden von dort an den uC weitergeleitet. 
Logischerweise sollte das Monoflop eine Pulsdauer von mehreren Byte 
haben, damit nicht zu schnell wieder zurückgeschaltet wird. Retriggerbar 
sollte es auch sein, gibt es aber problemlos, 75HC123 ist dein Freund.

Zwei Monoflops sind unsinnig, weil dann ja nicht klar ist was passiert, 
wenn auf beiden Eingängen Daten reinkommen.

UNd man braucht eine MUX, den man sinnvollerweise als fertiges Bauteil 
nimmt, 74HC151 oder 74HC153. Man kann das auch aus NAND zusammenbauen, 
ist aber nicht sinnvoll. Beides zusammen braucht man schon gar nicht.

MFG
Falk

Autor: Thomas B. (froms)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Falk

Danke für deine Erklärung. Jetzt weiß ich wie du es meinst.
Mein Problem ist nun gelöst.

Danke an alle für die Mithilfe und Geduld :)
Schönes Wochenende und Grüße

Thomas

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.