RS-232

RS-232 (ka RS-232-C, ka EIA-232, ka TIA-232, Recommended Standard 232) ehk soovituslik standard 232 on normide kogum, mis defineerib binaarandmete ja kontrollbittide edastuse lõppseadmete (DTE) ja andmesideseadmete (DCE) vahel. RS-232 on üks järjestikliideste standarditest, millega määratakse ühenduse elektrilised omadused, signaalide ajastused, signaalide tähendused, ühenduspesade füüsikalised suurused ja kontaktide jaotus. Standardi uusim versioon TIA-232-F võeti kasutusele 1997. aastal ja vaatamata teisele nimele kutsutakse seda argikeeles samuti RS-232 standardiks.
Varem kasutati RS-232 porti laialdaselt – peaaegu igas personaalarvutis. Seda kasutati modemite, printerite, arvutihiirte, andmekandjate, puhvertoiteallikate (UPS) ja teiste välisseadmete arvutiga ühendamiseks. RS-232 standardil on aga mitu puudust: piiratud andmeedastuskiirus, suhteliselt kõrged pingetasemed ja liiga suured ühenduspesad. Standardi puudused motiveerisid välja töötama Universaalse järjestiksiini (USB) standardi, mis tänapäeval on liidesena asendanud RS-232 standardi enamikus välisseadmetest. Suurim osa tänapäevastest arvutitest ei sisalda RS-232 porti, seega vanemate välisseadmete ühendamiseks arvutiga on vaja kasutada välist RS-232 muundurit. Tänapäeval leiduvad mõned RS-232 liidesega välisseaded, eriti tööstusmasinate ja teadusriistade hulgas.

Ajalugu

RS-232 standard ilmus esmakordselt 1962. aastal. Algsed DTE-d olid teletaibid ja algsed DCE-d tavaliselt modemid. Uuemad arvutiterminalid olid ümbervahetatavad teletaipidega. RS-232-C variant töötati 1969. aastal välja osaliselt selleks, et kohandada uute seadmete elektriliste omadustega.
Hiljem hakati kasutama RS-232 standardit nii personaalarvutite kui ka teiste seadmete tootmisel. RS-232 port oli laialdaselt käsutatav jadaliidesena 1990. aastate lõpuni. Tänapäeval on RS-232 port enamasti asendatud teiste liidestega nagu USB. RS-232 on tänaseni kasutusel vanemate välisseadmete, tööstusvarustuse (nagu PLC), konsooli portide ja teadusriistade ühendamiseks, sest tavaliselt on uue kaasaegse liidese väljatöötamine liiga kulukas või mõttetu.
Standardit on mitu korda ümber nimetatud aga kõnekeeles on ikkagi RS-232 kasutusele jäänud. Mõned standardi nimetused: EIA RS-232, EIA-232 ja hiliseim TIA-232. Standardi omanik oli algselt Electronic Industries Association, 1988. aastal müüdi see Telecommunications Industry Associationile. Versioon C ilmus 1969. aastal, versioon D 1986. aastal. Praegune versioon TIA-232-F võeti kasutusele 1997. aastal.

Standardi detailid

RS-232 standardi kohaselt edastatakse andmeid aegreana ühe biti kaupa. Standard toetab nii asünkroonset kui ka sünkroonset andmeedastust. Lisaks andmesiinidele määratleb standard ka mitu kontrollsignaali, mida on kasutatud ühenduse ülevalhoidmiseks DTE ja DCE vahel. Iga andmeliin või kontrollsignaalliin on ühesuunaline. Kuna andmeliinide ja kontrollsignaalliinide elektriahelad on kõik eraldi, töötab liides täisdupleksühendusena. Standard ei määratle märkide kadreerimist andmevoos ega märkide kodeerimist.

Pingete tasemed

RS-232 standard määratleb pingetasemed, mis vastavad ühe ja nulli väärtustele andmeliini ja kontrollsignaalliini korral. Kehtivad signaalid on kas +3 kuni +15 või −3 kuni −15 volti. Vahemikus ±3 V on loogiline väärtus määramata. Standard täpsustab, et maksimaalse pinge elektriahelas on ±25 volti. Signaalide pingetasemed võivad sõltuvalt seadmete toiteallikast olla ±5 V, ±10 V, ±12 V ja ±15 V. RS-232 draiverid ja vastuvõtjad peavad vastu pidama kui tahes kaua lühises maaga ja kuni ±25 V lühise korral. Signaali muutumiskiirus on ka kontrollitav.
Andmeliinide (TxD ja RxD) loogiline väärtus 1 on defineeritud negatiivse pingega ja seda nimetatakse "marking". Loogiline 0 on defineeritud positiivse pingega ja sellise signaali seisundit nimetatakse "spacing". Kontrollsignaalid on võrreldes andmeliinidega inverteeritud, kuna signaal on aktiivne kui pinge on +3 V ja +15 V vahel ja juhtsignaal on vastavalt passiivne kui pinge on −3 V ja −15 V vahel. Kontrollsignaalid näiteks on saatmisnõue (RTS), valmis vastuvõtuks (CTS), andmelõpmik (DTE) valmis (DTR), andmeside seade (DCE) valmis (DSR).
Kuna RS-232 standardi pingetasemed on tavaliselt kasutatud integraallülituste omadest kõrgemad, siis tuleb kasutada vahepealseid draivereid, mis muundavad pinge loogilistele tasemetele. Draiverid kaitsevad seadmesiseseid elektriahelaid ka võimaliku lühise eest, samuti tagavad piisava elektrivoolu andmeedastuse pingete muutumiskiiruse tingimuste täitmiseks.
Kuna mõlemad ühenduse otsad sõltuvad sellest, kas maanduse kontakti pinge on 0 V, tuleks vältida nende seadmete ühendamist, mille maanduse kontaktide pinge pole null. See võib tekitada maanduse tsükli (ground loop), mis lisab signaalile müra ja võib isegi kahjustada seadmeid või kasutajaid. Selle vältimiseks tuleks lühemate ühenduste korral kasutada sama maandust. Kui seadmed on teineteisest kaugel, siis lokaalsed maandused mõlema liini otsal ei saa olla sama pingega. Selline pingete vahe vähendab liidese mürakindlust. On aga olemas tasakaalustatud diferentsiaalsed järjestikühendused nagu USB, RS-422 ja RS-485, mis võivad taluda suuremat pingete vahet.
Kasutamata signaalid, mis ühendatakse maaga, on määratlemata loogilise seisundiga. Et fikseerida mingi loogiline seisund, tuleks ühendada kontakt toiteallikaga vastavalt oma loogilisele väärtusele. Mõned seadmed võimaldavad kontaktide ühendamise õige viisi valimiseks mõõta pinget.

Ühenduspesad

RS-232 liidesega seadmed võib liigitada kas lõppseadmeteks (DTE) või andmeside seadmeteks (DCE). See määrab kontaktid, mida seade kasutab andmete saatmiseks ja milliseid vastuvõtmiseks. RS-232 standard soovitab kasutada DB-25 D-subminiature ühenduspesasid, kuid ei tee neid kohustuslikuks. Standardiga kooskõlaliselt on terminalidel ja arvutitel DTE kontaktide jaotus. Vastavalt modemitel ja teisetel välisseadmetel on DCE kontaktide jaotus, kuid see pole reegel. Võimalikud on igasugused kombinatsioonid ja ka kontaktide jaotused võivad olla erinevad.
DB-25 D-subminiature ühenduspesa ei tähenda kindlalt tagasiühilduvust RS-232 standardi liidesega. Näiteks algsel IBM PC'l oli DB-25 ühenduspesa, kuid seda kasutati rööpühendusena Centronics printeri ühendamiseks. Mõned personaalarvutid kasutavad mittestandardseid pingetasemeid või kontrollsignaale.
Standard määratleb 20 kontrollsignaalliini, kuid enamik seadmeid neid kõiki ei kasuta, seega on võimalik kasutada väiksemaid ühenduspesasid.

Kaablid

RS-232 standard ei määra kaabli maksimaalset pikkust, kuid määrab maksimaalse mahtuvuse, mida elektriahel peaks taluma. Reeglina on rohkem kui 15 meetri pikkune kaabel lubatust suurema mahtuvusega, välja arvatud juhul, kui on kasutatud erilist kaablit. Madala mahtuvusega kaableid kasutades on võimalik luua täiskiirusel ühendus umbes 300 meetri taha. Kui on vaja paigutada seadmed sellest kaugemale, on parem kasutada teisi standardeid.

Ühenduse seadistamine

RS-232 liidese kaudu toimiva ühenduse saamiseks on vaja kokku leppida vajalikud parameetrid: andmevoo kiirus, märkide kadreerimine, ühenduse protokoll, märkide kodeerimine ja vigade märkamine. Kõik need parameetrid ei ole standardis defineeritud. Algne IBM PC jadaväratite seadistus kasutab 8250 UART kiipi, on asünkroonse märkide kadreerimisega, mille ühes kaadris on 7 või 8 bitti, tavaliselt ASCII märkide kodeerimisega ja andmevoo kiirusega programmeeritavas vahemikus 75 kuni 115 200 bitti sekundis. Üle 20 000 biti sekundis on standardi käsitlusalalt väline andmeedastuskiirus, kuid mõnedes seadmetes kasutatakse suuremat kiirust. Kuna enamik seadmetest ei sisalda andmeedastuskiiruse tuvastajat, peavad kasutajad käsitsi sisestama andmeedastuskiiruse ja teised parameetrid.

RTS/CTS kätlus

Vanades RS-232 standardi versioonides kasutati RTS- ja CTS-kontrollsignaale asümmeetriliselt: DTE aktiveeris andmete saatmise valmisoleku märgiks RTS-i ja DCE aktiveeris CTS-i. Andmeedastus oli võimalik ainult pärast mõlemat signaali. See võimaldas kasutada pooldupleks modemeid, mis lülitasid oma saatjad välja, kui need polnud vajalikud. Saatja sisselülitamisel aktiveeris modem kontrollsignaali. Samal põhimõttel töötavad ka tänapäevased RS-232 -> RS-485 muundurid, millel RTS kontrollsignaal määrab, millal tuleks andmeside omale võtta ja edastada andmed, RS-485 standardi korral ei ole võimalust DTE-l anda märku DCE-le, et see ei saa andmeid vastu võtta.

2-, 3- ja 5-kontaktine RS-232 ühendus

Minimaalne ühendus on RS-232 standardi järgi võimalik kolme liini abil. Selline konfiguratsioon sisaldab andmete saatmise, andmete vastuvõtmise ja maanduse kontakte. Seda kasutatakse tavaliselt siis, kui kontrollsignaalid pole vajalikud. Selline konfiguratsioon on kasulik ka testimiseks.
On võimalik ka kahte liini sisaldav ühendus ühesuunaliseks andmete edastamiseks, näiteks asukoha andmeid väljastavas GPS-moodulis (kui moodul ei vaja välist seadistust) või postiasutuse kaaludes.
Kui lisaks andmesiinidele on vajalik ainult riistvaraline kätlus, siis andmesiinidele sisestatakse ainult kaks kontrollsignaali: RTS ja CTS – mis tähendab viite liini sisaldavat ühendust.