RS-232C

Från Wiki.linux.se
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:

Bakgrund och Utveckling

RS-232 utvecklades ursprungligen för att ansluta teletypmaskiner till modemer och har sedan dess anpassats för att stödja en mängd olika kommunikationsapplikationer, särskilt i industriella och kommersiella miljöer.

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.

Maximal Kabellängd

Begränsningen på kabellängden beror på överföringshastigheten, men den rekommenderade maximala längden är vanligtvis omkring 15 meter.


Olika versioner av RS-232

RS-232C (1969):
  • Denna är den mest kända versionen och den som ofta refereras till som "RS-232".
  • Definierade 25-stifts kontaktdon (DB-25), men alla stift användes inte alltid.
  • Standardiserade signalnivåerna till ±12V, även om andra spänningsnivåer kan upptäckas som giltiga.

RS-232D (EIA-232D) (1986):

  • Införde en alternativ 26-stifts kontakt för användning i telekommunikationsutrustning.
  • Förtydligade vissa aspekter av RS-232C och harmoniserade standarden med internationella standarder.
RS-232E (1991):

Denna version definierade bara en mindre ändring i den 26-stifts kontakten jämfört med RS-232D.

RS-232I (1993):
  • Gjorde inga större tekniska ändringar av standarden. Det mesta var klargöranden och definitioner av tidigare vaga punkter.
RS-232K (2017):
  • Senaste versionen av RS-232.
  • Introducerade modernare specifikationer, men gjorde inga drastiska ändringar i de grundläggande protokollen.
  • Den har större fokus på den elektroniska aspekten av kommunikationen än de mekaniska och fysiska aspekterna, som var mer framträdande i tidigare versioner.

Övriga skillnader och överväganden:

  • DB-9-kontakt: Även om DB-25-kontakten definierades i RS-232C, blev en 9-stifts kontakt (DB-9) ofta mer populär för många tillämpningar på grund av dess kompakta storlek.
  • Spänningsnivåer: Även om ±12V ofta nämns som standarden, godtar RS-232 spänningar så låga som ±3V för att tolka en signal som "high" eller "low". Denna flexibilitet gjorde det möjligt att driva RS-232-gränssnitt med lägre spänningssystem.
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.

Vanliga baud hastighete är :

  1. 110 baud
  2. 300 baud
  3. 600 baud
  4. 1200 baud
  5. 2400 baud
  6. 4800 baud
  7. 9600 baud
  8. 14,400 baud (ofta kallad 14.4 kbps)
  9. 28,800 baud (28.8 kbps)
  10. 57,600 baud (57.6 kbps)
  11. 115,200 baud (115.2 kbps)

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).