Sida 1 av 1
Autosense med RS232?
Postat: 22 december 2019, 00:32:11
av Skyracer
Bygger en HAT till en Raspberry Pi där jag har gjort två serieportar med två MAX232 (en GPS ska förse en skärm med information och skärmen ska via algoritm i Raspberry Pi ge order till GPS:en). Då jag inte är säker på vilken pinne som RX och TX sitter på, har jag idag jumpers på kretskortet som utgör valet. Men det hade varit tårta med en autosense-funktion á la nätverksswitchar med en mjukvarustyrd lösning.
Är det någon som har klurat på det tidigare? Hittar inget på Google ...
Re: Autosense med RS232?
Postat: 22 december 2019, 09:12:15
av Icecap
Välkommen till forumet.
Jag ser inte problemet. På en DB9 är Tx & Rx på pinne 2 & 3, frågan är bara vilken enhet man ska räkna på.
På en PC är Tx på pinne 3 och Rx på pinne 2 och fungerar det inte med enheten man kopplar på använder man ett korskopplat kabel.
Men såklart går det att lösa med extra elektronik - men då RS232-signaler ligger mellan -12V och +12V blir det inte helt triviellt och definitivt mycket enklare att antingen bygla eller bara följa standarden.
Är det bara Tx & Rx som ska kunde växlas kan man göra det med 4 st små SSR mellan MAX232 och kontaktdon. Dessa kan aktiveras antingen i ena paret eller andra paret och avkänningen kan vara att ibland skicka ut en fråga som inkommande enhet svara på.
I fallet med GPS brukar det ju att komma data från den varje sekund (minst) så om man antar att det efter 10 sekunder utan inkommande data kan man växla par och se om det hjälper något.
Ska man avkänna spänningar på inkommande ledningar blir det en del mer pill och ska man ha handskakningen med blir det en signifikant bit elektronik som jag tvekar på att någon ids använda pengar på med tanke på rak kontra korskopplat kabel.
Re: Autosense med RS232?
Postat: 22 december 2019, 10:39:45
av Skyracer
Tack för svar. Applikationen för mitt projekt är av naturen dynamisk då jag avser att montera in den i ett klubbägt segelflygplan. Då medlemmarna kopplar in sina privata sladdar in i enheten kommer det uppstå förvirring då deras sladdar kan vara växlade map TX/RX. Mitt hopp om att tukta medlemmarna till att koppla enligt standard (förutom spänningsmatning) är sedan länge ute.
SSR var en intressant lösning som jag inte tänkt på. Tack för tipset.
Re: Autosense med RS232?
Postat: 22 december 2019, 15:35:34
av Glenn
Icecap skrev:Välkommen till forumet.
Jag ser inte problemet. På en DB9 är Tx & Rx på pinne 2 & 3, frågan är bara vilken enhet man ska räkna på.
Det är ju exakt det som ÄR problemet, att i RS232 är DTE och DCE oklart definerat (mest för att världen inte ser ut som den gjorde då), därför får man ofta lösa det med korsade kablar eller jumpers..
Re: Autosense med RS232?
Postat: 22 december 2019, 16:05:20
av Icecap
Hmmm - jag måste ha levd i ett skyddad verkstad.
Men det ska väl gå att göra rimligt enkelt. Det finns ju 3 lägen:
1: Ingen inkopplad ledning. Rx har då ~0V och Tx har -12V.
2: Rx på A, Tx på B. Signalspänning på båda ledare.
3: Tx på A, Rx på B. Signalspänning på båda ledare.
Om man har 4 st SSR till att "korskoppla" med kan man ju göra ett kretslopp som avkänner om spänningen på vardera av A & B är "aktiv", alltså utanför ±3V.
Är BÅDA A & B aktiva hålls status kvar.
Är BARA A aktiv är A Rx och B är Tx.
Är BARA B aktiv är a Tx och B är Rx.
Detta borde gå att göra rimligt enkelt och sedan ha en liten tidsfördröjning innan den kopplar om.