RS-232C

Från Wiki.linux.se
Version från den 22 oktober 2023 kl. 16.39 av Admin (diskussion | bidrag)
Hoppa till navigering Hoppa till sök

RS-232 (Rekommenderad Standard 232), ofta känd som RS-232C efter en av dess senare revisioner, är en standard för seriell datakommunikation mellan datorer och relaterad utrustning. RS-232-standarden har funnits sedan 1960-talet och användes ursprungligen för att ansluta terminaler till modemer och datorer. Här är en teknisk översikt över RS-232:

Spänningsnivåer

RS-232 definierar logiska 1 och 0 med spänningsnivåer som är motsatta de flesta andra system. En logisk "1" (även känd som "mark") är mellan -3V och -25V, medan en logisk "0" (även känd som "space") är mellan +3V och +25V. Spänningsnivåer mellan +3V och -3V betraktas som "oberoende" och bör inte tolkas.

Baud rate

Baud rate beskriver antalet signaländringar per sekund. Även om begreppet "baud rate" tekniskt sett skiljer sig från "bit rate" (bps), används de ofta omväxlande i RS-232-kontexten eftersom varje signaländring oftast representerar en bit i den vanligaste användningen av standarden.

Kabellängd och hastighet

Standarden specificerar en maximal kabellängd på 15 meter, men detta kan förlängas med lägre överföringshastigheter eller genom att använda speciella enheter. Högre hastigheter begränsar effektivt den maximala kabellängden.

Anslutning och stift

RS-232 använder ofta DB-25 eller DE-9 kontakter (ibland felaktigt kallad "DB-9"). Varje "pin" eller "stift" i kontakten har en specifik funktion, såsom överföring (TX), mottagning (RX), DTE redo, DCE redo, jord (GND) etc.

Datasignalering

RS-232 skickar data bit-för-bit, där varje bit kan vara antingen en logisk 1 eller 0. En typisk överföring börjar med en startbit, följd av data-bitar (oftast 7 eller 8), eventuellt en paritetsbit (för felsökning) och en eller två stoppbiter.

Handskakning

RS-232 kan använda hårdvaruhandskakning med hjälp av stift som RTS (Request to Send) och CTS (Clear to Send) för att kontrollera dataflödet mellan enheter. Det kan också använda programvaruhandskakning med XON/XOFF-tecken.

Felkontroll

RS-232 kan använda paritet (ingen, udda, jämn, mark eller space) som en enkel felkontrollsmekanism.

Med tiden har RS-232 i stor utsträckning ersatts av modernare kommunikationsprotokoll som USB, Ethernet och trådlös kommunikation, men det finns fortfarande många äldre system och applikationer där RS-232 fortfarande används, särskilt inom industriell utrustning, kommunikation med inbyggda system och vissa nätverks- och telekomapplikationer.

DE-9 Pinbeskrivning:

  1. Pin 1 - DCD (Data Carrier Detect): Anger om bärarsignalen från modemet (eller annan DCE) är aktiv.
  2. Pin 2 - RXD (Receive Data): Data som tas emot av DTE från DCE.
  3. Pin 3 - TXD (Transmit Data): Data som sänds från DTE till DCE.
  4. Pin 4 - DTR (Data Terminal Ready): Signal från DTE att den är klar för att skicka eller ta emot data.
  5. Pin 5 - GND (Signal Ground): Gemensam jord för både DTE och DCE.
  6. Pin 6 - DSR (Data Set Ready): Signal från DCE att den är klar för att skicka eller ta emot data.
  7. Pin 7 - RTS (Request to Send): Signal från DTE att den vill sända data.
  8. Pin 8 - CTS (Clear to Send): Svar från DCE att den är redo att ta emot data.
  9. Pin 9 - RI (Ring Indicator): Signal från DCE (t.ex. ett modem) att ett inkommande samtal upptäckts.

För en typisk "pin-till-pin"- eller "rak igenom"-kabel skulle varje pin på en ände av kabeln kopplas direkt till samma pinnummer på den andra änden. Till exempel skulle Pin 2 på ena änden av kabeln (RXD) kopplas direkt till Pin 2 på den andra änden.

Observera att en "null modem"-kabel, som används för att koppla ihop två DTE-enheter (till exempel två datorer) direkt, skulle ha en annan pinuppdelning. I en "null modem"-konfiguration korsas vissa pins för att möjliggöra kommunikation (t.ex. TXD på en enhet kopplas till RXD på den andra, och vice versa).