Hallo zusammen, für eine Testanwendung würde ich gerne mehrere UARTS von unterschiedlichen Modulen der Reihe nach mit einem Prüfadapter bzw. einem ATmega328p verbinden. Sowohl RX als auch TX. Also quasi: 1) Atmega verbindet sich zu Modul 1 und fragt Daten ab 2) Atmega verbindet sich zu Modul 2 und fragt Daten ab 3) Atmega verbindet sich zu Modul 3 und fragt Daten ab ... Nun frage ich mich, wie man diesen UART Umschalter am sinnvollsten realisiert. Der Controller hat genügend Pins frei, so dass er jeden Testkanal mit einem eigenen I/O aktivieren oder deaktivieren könnte. Aber wie sollte man das Signal routen? Vielleicht per AND Gatter in Kombination mit einem Inverter? Oder evtl. mittels 74*4066? Freu mich sehr über Vorschläge. LG, Markus
Markus schrieb: > Freu mich sehr über Vorschläge. (De)Multiplexer oder Soft UART wenns für die Geschwindigkeit reicht?
:
Bearbeitet durch User
Hüstel. Genau genommen "Demultiplexer". :-) Viel falsch oder extrem ineffizient machen kann man in dem Fall eines Bastel-Hobby-Gerätes nicht. Falls Du weißt, wie es mit AND-Gattern geht, würde ich das so machen. 4066 ist auch gut. Software UART ist auch gut.
Prüfadapter schreit doch eigentlich nach Relais, alleine schon um die Prüflinge galvanisch getrennt zu halten. Wenn man nen sinnvolles Protokoll hat kommt man mit den erkannten Bits aufgrund relaisprellen gut klar.
Hm. OK. "Testanwendung" und "Prüfadapter" könnte auch was professionelles oder akademisches sein. Gibts mehr Infos?
Hallo zusammen und Danke schon mal für die Beiträge. Theor schrieb: > Hm. OK. "Testanwendung" und "Prüfadapter" könnte auch was > professionelles oder akademisches sein. Gibts mehr Infos? Gern ;) Also die Situation ist so, dass ich vor ein paar Jahren mal bei einer Firma gearbeitet habe, die nach dem Ableben des ehemaligen Geschäftsführers inzwischen insolvent ist. Viele der ehemaligen Kunden kommen nun aber mit ihren Reparaturen auf mich zu und ich bin dabei, mir entsprechende Gerätschaften zu bauen um bspw. Tests automatisch über Nacht laufen zu lassen. Spart Zeit, denn eigentlich bin ich ja in einem anderen Job und das ganze läuft momentan (noch) so nebenher. Wenn wir "professionell" und "hobby-bastel" sprechen, dann würde ich das irgendwo dazwischen einordnen. Könnte ggf. mal mehr werden. Aktuell tendiere ich zu der Variante mit Logikgattern, weil massenhaft vorhanden. Der 4066 hat außerdem einen ROn von größer 100 Ohm. Bin nicht sicher, ob das problematisch sein könnte... Beispielhaft für eine zwei TX Leitungen mit Logikgattern:
1 | GND |
2 | | |
3 | [10K] |
4 | | |
5 | | +-------+ |
6 | Enable-UART1 ------------------| HCT08 |----+ |
7 | UART1-TX ->[Inverter (HCT14)]->| | | |
8 | +-------+ | |
9 | | |
10 | | |
11 | GND +--> Inverter (HCT14)-> uC |
12 | | | |
13 | [10K] | |
14 | | | |
15 | | +-------+ | |
16 | Enable-UART2 ------------------| HCT08 |----+ |
17 | UART2-TX ->[Inverter (HCT14)]->| | |
18 | +-------+ |
19 | |
20 | |
21 | Enable-UART 1 = 1 |
22 | Enable-UART 2 = 0 |
23 | => UART1 wird zum Controller geroutet |
24 | |
25 | Enable-UART 1 = 0 |
26 | Enable-UART 2 = 1 |
27 | => UART2 wird zum Controller geroutet |
Meint ihr, das könnte man so machen? vielen Dank und einen schönen Feierabend, M.
Markus schrieb: > Meint ihr, das könnte man so machen? Nein, die Ausgänge der Gatter arbeiten gegeneinander. Ist sozusagen ein Buskonflikt.
Markus schrieb: > Meint ihr, das könnte man so machen? Nein, man kann die Gatterausgänge (08) nicht einfach zusammenschalten. Das ergibt Kurzschlüsse. Georg
Markus schrieb: > ber wie sollte man das Signal routen? Wenn 8 Kanäle reichen verwende einen 1 aus 8 Selektor / Multiplexer namens 74HCT138 oder ähnliches.
Au weia schrieb: > Wenn 8 Kanäle reichen verwende einen 1 aus 8 Selektor / Multiplexer > namens 74HCT138 oder ähnliches. Das Pendant zu diesem Output Multiplexer ist der Input Multiplexer namens 74HCT151.
Muss das unbedingt ein AVR sein? Hol Dir das hier für 20$. http://www.ti.com/tool/EK-TM4C1294XL Da sind 8 Hardware-UARTs drin, dazu 10 I2C und noch einiges mehr. Da brauchst Du einfach nicht umschalten - zumindest bis zu 8 Geräten. fchk
Weiß nicht ob RS485 was wäre. Alle Teilnehmer sind gemeinsam am BUS aber wie du es möchtest zuschaltbar
Half-Duplex (TX mit Diode) und alle Module parallel mit einem Protokoll, was Kollisionen erkennen kann (wenn nötig).
Was willst du denn genau abfragen? Was sprich dagegen das mit einem PC zu machen? USB UART Adapter kostet keine 2$ das Stück. Die Teile an einen Raspberry hin, dann hast direkt Netzwerk und alles dran, die Kosten des Setups dürften bei weniger als 50€ liegen. https://en.wikibooks.org/wiki/Serial_Programming/termios Kannst auch mit boost serial oder Python machen, insgesamt in meinen Augen deutlich bequemer als da mit einem µC und irgendwelchen Multiplexern zu arbeiten, selbst mit einem ausgemusterten PC/Laptop ist das ein Kinderspiel.
Markus schrieb: > Beispielhaft für eine zwei TX Leitungen mit Logikgattern: Mit NAND Gattern würde es gehen.
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.