RS232

RS232 프로토콜이란 무엇이며 어떻게 작동합니까?

기하 2022. 2. 21. 20:46

https://www.codrey.com/embedded-systems/rs232-serial-communication/

 

What is RS232 Protocol and How it Works? - Codrey Electronics

Historically, RS232 Communication protocol is an old serial communication protocol developed by EIA (Electronics Industry Alliance)/TIA (Telecommunications Industry Association)-232 in the year 1962. Modern hardware designs use innovative serial communicat

www.codrey.com

 

역사적으로 RS232 통신 프로토콜 

1962년 EIA(Electronics Industry Alliance)/TIA(Telecommunications Industry Association)-232에서

개발한 오래된 직렬 통신 프로토콜입니다.

 

최신 하드웨어 설계는 USB, 이더넷 및 Wi-Fi와 같은 혁신적인 직렬 통신 프로토콜을 사용합니다. 

그러나 여전히 RS232가 탁월한 것으로 입증되었습니다. 

그 이유는 RS232 신호가 I2C 및 직렬 TTL 신호에 비해 더 먼 거리로 확산되기 때문입니다. 

또한 노이즈 내성이 더 우수합니다. 

컴퓨터와 모뎀을 연결하기 위해 여러 제조업체에서 호환되는 것으로 입증되었습니다.

 

RS232 프로토콜이란 무엇입니까?

RS232에서 'RS'는 권장 표준을 나타냅니다. 

DTE 및 DCE 신호를 사용하여 직렬 통신을 정의합니다. 

 

DTE는 데이터 단말 장비를 의미하고

DCE는 데이터 통신 장비를 의미합니다. 

 

DTE 장치의 예는 컴퓨터이고 DCE는 모뎀입니다. 

공식적으로는 직렬 바이너리 데이터 교환을 사용하는

DTE 장비와 DCE 장비 간의 인터페이스로 지정됩니다.

DTE(컴퓨터)는 정보를 다른 최종 장비 DCE(모뎀)에 직렬로 전송합니다. 

이 경우 DTE는 이진 데이터 "11011101"을 DCE로 보내고

DCE는 이진 데이터 "11010101"을 DTE 장치로 보냅니다.

 

RS232는 공통 전압 레벨, 전기 표준, 작동 모드 및 DTE에서 DCE로 전송되는 비트 수를 설명합니다. 

이 표준은 전화선을 통한 정보 교환 전송에 사용됩니다.

전기 표준

RS232의 전기 사양은 1969년에 업데이트되었습니다.

이것은 전기 전압electrical voltages, 슬루율slew rate, 라인 임피던스line impedance,

작동 모드operation mode 및 전송 속도baud rate를 지정합니다.

 

전압 레벨 Voltage Levels

RS232의 라인 전압 범위는 -25V ~ +25V입니다. 신호 전압제어 전압으로 분류됩니다.

RS232 Voltage Levels

+3V ~ +25V 사이의 신호 전압은 논리 '1'을 나타내고

 -3V ~ -25V 사이의 신호 전압은 논리 '0'을 나타냅니다. 

 

제어 전압 신호는 음의 논리를 사용하는 반면,

논리 '1'은 -3~-25V를 나타내고

논리 '0'은 +3V~+25V를 나타냅니다. 

-3V ~ +3V의 전압은 미정 상태로 간주됩니다.

 

슬루율

입력 전압의 변화는 RS232 드라이버 가 응답 하는 속도를 결정 합니다. 

이것을 흔히 슬루율이라고 합니다. 

RS232 표준은 느린 상승 및 하강 시간으로 최소 슬루율을 유지하여 인접 신호 간의 혼선을 줄입니다. 

일반적으로 허용되는 최대 슬루율은 30V/µsec입니다.

 

라인 임피던스

RS232 드라이버와 수신기 사이의 임피던스 브리징은

송신기와 수신기 사이의 전압 전달을 최대화하기 위해 정의됩니다. 

3KΩ ~ 7KΩ 범위입니다.

 

동작 모드

RS232 장치는 단일 종단 신호single-ended signaling (2선)에서 작동합니다. 

이것은 한 와이어가 변경 전압을 전송하고 다른 와이어가 접지에 연결되어 있음을 의미합니다. 

단일 종단 신호는 드라이버 및 수신기 회로의 접지 전압 차이로 인해

유도된 노이즈의 영향을 받습니다. 

단일 종단 기술의 장점은 정보를 전송하는 데 더 적은 수의 전선이 필요하다는 것입니다.

 

전송 속도

초당 전송되는 이진 비트 수입니다. 

RS232는 110부터 230400까지의 baud rate를 지원합니다.

일반적으로 1200, 4800, 9600, 115200의 baud rate를 사용합니다. 

데이터가 송신기에서 수신기로 전송되는 속도를 결정합니다.

참고: 전송 속도는 송신기 측과 수신기 측 모두에서 동일해야 합니다.

통신 인터페이스

RS232는 DB9 및 DB25 커넥터를 사용하여 DTE와 DCE 간의 통신을 결정합니다.

 D-sub 커넥터(DB9, DB25)는 암수 케이블과 함께 제공됩니다. 

DB9 커넥터에는 9개의 핀이 있고

DB25 커넥터에는 25개의 핀이 있으며 각 핀에는 고유한 기능이 있습니다.

 

DB9 Male and Female Pinouts
DB25 Pinout

 

기능 설명

RS232는 전기적 특성과 별도로 직렬 인터페이스에서 사용되는 신호의 기능을 정의했습니다. 

그 중 일부는 공통 접지common ground, 데이터Data, 제어 control  및 타이밍 신호timing signal입니다. 

다음은 RS232 핀아웃에 사용되는 신호 목록입니다.

 

Signal Name                                     Function

보호 접지 Protective Ground 이 신호는 금속 커넥터의 섀시 접지에 연결됩니다.
커먼그라운드 Protective Ground 모든 제어 신호에 대한 제로 기준 전압 레벨.
TxD(전송 핀) DTE에서 DCE로 데이터를 전송합니다.
RxD(수신 핀) DCE에서 DTE로 데이터를 보냅니다.
DTR (Data Terminal Ready) DTE가 요청을 수락할 준비가 되었습니다.
DCD (Data carrier Detect) DCE는 원격 위치에 있는 DTE의 캐리어를 수락합니다.
DSR (Data Set Ready) DCE는 정보를 보내고 받을 준비가 되어 있습니다.
RI (Ring Indicator) 전화선에서 들어오는 벨소리를 감지합니다.
RTS (Request to Send) 데이터를 전송하기 위해 DCE에 대한 DTE 호출.
RTR (Ready to Receive) DTE는 DCE에서 오는 데이터를 수신하도록 준비되어 있습니다.
CTS (Clear To Send) DCE는 DTE에서 오는 데이터를 받아들일 준비가 된 상태입니다.

RS232는 위의 신호 외에 DTE와 DCE의 선택적 연결을 위해

Secondary DTE, Secondary RTS, Secondary DCD, Secondary TxD 및 Secondary RxD와 같은

2차 신호를 제공합니다.

직렬 케이블의 종류

DTE와 DCE 간의 직렬 통신 을 가능 하게 하기 위해 두 가지 유형의 RS232 케이블이 존재합니다. 

널 모뎀과 스트레이트 케이블입니다. 

 

널 모뎀 케이블 에서 수 커넥터의 TX(송신기) 핀은 암놈의 RX(수신기) 핀에 연결되고

수놈의 RX 핀은 암놈의 TX 핀에 연결됩니다.

널 모뎀 또는 크로스오버 케이블

다음은 직선형 케이블 입니다. 이름에서 알 수 있듯이 일대일 커넥터입니다.
즉, 한 장치의 전송 핀은 다른 장치의 전송 핀에 연결되고
한 장치의 수신기 핀은 다른 장치의 수신기 핀에 연결됩니다.
 
연결 외에도 케이블 길이는 배선 커패시턴스에 따라 다릅니다. 
사양에 따라 케이블 길이는 거의 80피트입니다.

직선 케이블 연결

 

RS232 통신은 어떻게 작동합니까?

RS-232의 작동은 프로토콜 형식으로 이해할 수 있습니다. 

RS-232는 point-to-point 비동기 통신 프로토콜이므로

한 방향으로 데이터를 전송합니다. 

여기에서 송신기와 수신기를 동기화하는 데 클럭이 필요하지 않습니다. 

데이터 형식은 시작 비트로 시작되고 7비트 바이너리 데이터, 패리티 비트 및 정지 비트가 차례로 전송됩니다.

프로토콜 형식

RS232 Framing

전송은 시작 비트 '0'을 보냄으로써 시작됩니다. 
이것은 7비트의 ASCII 데이터로 이어집니다. 

패리티 비트  수신기 유효성 검사를 위해 이 데이터에 추가됩니다. 
송신기에서 보낸 데이터는 수신기에서 일치해야 합니다. 
마지막으로 stop bit 를 이용하여 전송을 중단 하고 바이너리 '1'로 표현한다. 
일반적으로 1 또는 2개의 정지 비트를 보낼 수 있습니다.

위의 다이어그램에서 ASCII 문자 'A'는 '1'과 '0'의 직렬 바이너리 스트림을 사용하여 전송됩니다. 

데이터를 보내는 동안 각 비트 사이에는 일정한 지연이 있어야 합니다. 

이 지연은 비활성 시간으로 간주되며 RS232 라인은 부논리 상태(-12V)에 있습니다.

핸드쉐이킹이란?

핸드셰이킹은

발신자(송신자)와 수신자 간에 정보 신호를 교환하는 프로세스입니다. 

이 신호는 송신기와 수신기 사이에 통신 링크를 구축합니다. 

RS232에는 두 가지 유형의 핸드셰이킹이 있습니다. 

하드웨어 핸드셰이킹과 소프트웨어 핸드셰이킹이 있습니다.

Handshaking

 

커넥터 DB9 및 Db25는 핸드셰이킹 용도로 사용됩니다. 

핸드셰이킹이 수행되지 않으면 TxD(송신기)와 RxD만 교차 결합됩니다. 

다른 핀, RTS, CTS, DSR 및 DTR은 루프백 방식으로 연결됩니다.

핸드셰이킹 기법을 사용하기 위해 RTS와 CTS가 교차 결합됩니다. 

또한 DTR과 DSR도 크로스 모드로 연결됩니다.

핸드셰이킹을 사용하는 이유는 무엇입니까?

데이터 손실 없이 정보를 주고 받으려면 송신기와 수신기 간의 견고한 통신을 유지해야 합니다. 

이를 위해 버퍼가 사용됩니다. 버퍼는 정보가 서로 다른 속도로 처리될 때까지

송신기와 수신기가 데이터를 저장할 수 있도록 하는 임시 저장 위치입니다.

Data flow

위의 다이어그램에서 송신기와 수신기는 자체 버퍼를 가지고 있습니다. 
전송 버퍼는 수신자에게 보낼 문자를 보유합니다. 
수신 버퍼는 송신기에서 수신된 문자를 보유합니다. 
송신기가 더 빠른 속도로 데이터를 보내면 수신기가 수신하지 못할 수 있습니다. 
이 경우 수신자는 문자 'C'를 놓칩니다. 
이를 방지하기 위해 핸드셰이킹이 사용됩니다. 
핸드셰이킹을 사용하면 통신이 시작되기 전에 송신기와 수신기 장치가 동의할 수 있습니다.

 

하드웨어 핸드셰이킹

데이터 송수신의 흐름 제어는 하드웨어 핸드셰이킹 을 사용하여 수행됩니다 . 

제어 신호 DTR, DSR, RTS 및 CTS 신호를 사용합니다. 

일반적으로 컴퓨터와 모뎀 간의 통신을 설정할 때 RTS 및 CTS 신호가 사용됩니다.

수신기 버퍼에서 교체되는 데이터를 중지합니다. 

신호는 핸드셰이킹을 활성화하기 위해 하이 상태(논리 '1')로 유지됩니다.

소프트웨어 핸드셰이킹

이러한 유형의 핸드셰이킹은 시작-중지 통신에 두 개의 ASCII 문자를 사용합니다. 

따라서 이것을 소프트웨어 흐름 제어라고 합니다. 

소프트웨어 핸드셰이킹은 XON/XOFF 문자를 사용하여 직렬 통신을 제어합니다. 

'XON'은 Ctrl+S 또는 ASCII 문자 11을 나타내는 반면

'XOFF'는 Ctrl+Q 또는 ASCII 13을 나타냅니다.

이 핸드셰이킹에는 3개의 와이어가 필요합니다. TXD, RXD 및 신호 GND입니다.

 

'XOFF' 문자가 활성화되면 'XON' 문자가 송신기에서 수신될 때까지 통신이 닫힙니다. 

어떤 경우에는 수신기 버퍼가 과부하되어

수신기가 자동으로 'XOFF'를 송신기로 보내도록 할 수 있습니다.

핸드셰이킹은 어떻게 작동합니까?

초기 상태에서 RTS 라인은 DCE를 깨우기 위해 DTE에 의해 하이로 당겨집니다. 

이 상태에서는 데이터가 전송되지 않습니다. 

그 후 DCE는 데이터를 수신하기 위해 CTS 라인을 HIGH로 설정합니다. 

이것은 DTE가 응답하고 DTR을 HIGH 상태로 설정하게 합니다. 

이제 데이터 전송이 수행됩니다. 

데이터 전송이 완료되면 DTE에 의해 RTS와 DTR이 모두 LOW로 풀링됩니다. 

그런 다음 DCE는 CTS 라인을 LOW 상태로 트리거합니다. 

이렇게 하면 DTE가 데이터 전송을 중지합니다.

RS232 Handshaking Signals

이러한 방식으로 핸드셰이킹은 DTE 요청에 의해 발생하여

통신 링크를 제어하고 DCE가 데이터를 전송하도록 합니다.

RS232와 UART의 차이점

RS232와 UART 프로토콜 의 주요 차이점 은 전압 레벨입니다. 

이 외에도 둘 다 반이중 및 전이중 통신을 지원합니다.

마이크로컨트롤러는 RS232 전압을 허용하지 않으며 손상될 수 있습니다. 

이를 피하기 위해 UART (Universal Asynchronous Transmitter Receiver)가 사용됩니다. 

직렬 형식으로 데이터를 보내고 받습니다. 

전압의 레벨 변환을 위해 MAX232와 같은 RS232 드라이버 IC가 UART와 직렬 포트 사이에 사용됩니다.

RS232 – UART

장점

RS232 의 장점은 시스템 간 통신과 다음과 같은 이점을 위한 표준 직렬 인터페이스로 만듭니다.

  • 간단한 프로토콜 설계.
  • 하드웨어 오버헤드는 병렬 통신보다 적습니다.
  • 근거리 응용 분야에 권장되는 표준입니다.
  • DTE 및 DCE 통신과 호환됩니다.
  • 개발을 위한 저비용 프로토콜.

단점

RS232 프로토콜 의 한계는 전이중 통신을 지원하지 않으며

접지 전위를 이동시키는 단일 종단 프로토콜이라는 것입니다.

 또한 케이블 길이가 길수록 직렬 통신 중에 혼선이 발생 합니다 . 

따라서 이 프로토콜은 장거리 통신에 제한됩니다.

애플리케이션

RS232 통신은 다양한 애플리케이션에서 사용됩니다. 그 중 일부는 다음과 같습니다.

  • 전신 타자기 장치.
  • 복조기 응용 프로그램.
  • PC COM 포트 인터페이스.
  • 디버깅을 위한 임베디드 시스템 에서 .
  • 모뎀 및 프린터.
  • 휴대용 장비.
  • CNC 컨트롤러, 소프트웨어 디버거 등
  • 바코드 스캐너 및 POS(Point of Sales) 단말기.

https://www.electricaltechnology.org/2020/05/rs232-serial-communication-protocol.html

 

RS232 Serial Communication Protocol:
Working, Specifications & 
Applications

 

RS232는 무엇입니까 ?

RS232는 데이터의 직렬 통신에 사용되는 통신의 표준 프로토콜 중 하나입니다. 기본적으로 파일 서버, 라우터와 같은 데이터 단말 장비(DTE)와 모뎀과 같은 응용 서버 사이 에 신호 를 연결하는 과정입니다.

이 표준은 전기적 특성과 신호의 중요한 타이밍, 커넥터의 물리적 크기 및 지점을 해석합니다. RS232 표준은 주로 컴퓨터 포트에서 활용되었습니다. 여기에는 직렬 및 병렬의 두 가지 유형의 통신이 포함됩니다.

직렬 통신이란 무엇입니까?

다양한 네트워킹 시스템을 통해 송신기에서 수신기로 데이터가 비트 단위로 전송되는 것을 직렬 통신이라고 합니다. 따라서 병렬 통신보다 상대적으로 느린 프로세스입니다.

 
 

이해하기 위한 예:

  • 직렬 통신  - 기관총으로 목표물을 쏘는 것.
  • 병렬 통신 - 샷건으로 목표물을 쏘는 것.

직렬 통신에서 데이터 전송 모드 :

  • 비동기식 데이터 전송 – 데이터 비트가 클록 펄스에 의해 동기화되지 않습니다. 클록 펄스는 전자 시스템에서 작동 동기화에 사용되는 신호입니다.
  • 동기식 데이터 전송 –  데이터 비트가 클록 펄스에 의해 동기화되는 모드입니다.

시리얼 통신의 특징 :

  • 전송 속도 는 전송 속도를 측정하는 데 사용됩니다.  1초에 통과하는 비트 수로 설명됩니다 .  예를 들어 전송 속도가 200이면 초당 200비트가 전달됩니다.
  • Stop Bits 는 "T"로 표시된 전송을 중지하기 위해 단일 패킷에 사용됩니다. 일부 일반적인 값은  1, 1.5 및 2비트 입니다.
  • 패리티 비트 는 오류를 확인하는 가장 간단한 형태입니다. 네 종류, 즉 짝수 홀수, 표시 및 간격이 있습니다. 예를 들어 , 숫자가 011이면 패리티 비트는 0입니다(0은 짝수 패리티, 1은 홀수 패리티).

관련 게시물: Arduino를 통한 직렬 통신

RS232의 전기적 특성

전기적 특성은 전압 레벨, 신호 변경 속도 및 라인 저항에 따른 사양을 나타냅니다.

전압 레벨

 
 

RS232는 TTL 로직으로 알려져 있으므로 RS232는 TTL 특정 5V 및 GND 로직 레벨을 활용합니다. 이 논리에서 "1"은 -15볼트 ~ -3볼트 범위인 반면 논리 "0"은 +3볼트 ~ +15볼트 범위입니다. 즉, 논리 "1"은 저전압이고 논리 "0"은 고전압입니다. 일반적으로 논리 "0"은 약 +12볼트이고 논리 "1"은 약 -12볼트입니다. 전압은 공통 접지 핀인 'GND'를 기준으로 조정됩니다. -3V ~ +3V 범위의 전압을 미결정 논리 상태라고 합니다. 논리 "1"은 표시라고도 하고 논리 "0"은 간격이라고 합니다.

슬루율

가장 중요한 특성 중 하나는 신호 레벨이 변경되는 속도이며, 이를 슬루율(Slew Rate)이라고 합니다. RS232에서 최대 슬루율은 항상 최대 30V/μs로 유지됩니다. 이러한 표준의 한계로 인해 다른 신호와의 혼선을 줄이는 데 도움이 됩니다.

라인 임피던스

라인 임피던스는 DTE와 DCE 와이어 사이의 저항으로 구체적으로 3Ω에서 7Ω 사이여야 합니다. RS232 표준에 따르면 두 가지 다른 길이의 케이블이 있습니다. 정통 RS232 규격은 케이블의 최대 길이를 15m로 규정하고 있으며, 개정 규격은 케이블의 단위 길이당 용량과 관련된 최대 길이를 명시하고 있다.

기계적 사양

RS232의 기계적 식별에는 표준의 기계적 동맹이 포함됩니다. RS232 표준은 RS232의 전체 기능 유틸리티를 지원하기 위해 23핀 및 D형 커넥터를 제공하는 것을 강력하게 의미합니다.

RS232 – DB9 암수 커넥터 핀아웃

DB25 커넥터의 도움으로 DTE 개체는 수와 함께 암 외부 케이싱이 필요하지만 DCE 장치는 암 핀이 있는 수 외부 케이싱을 사용합니다.

RS232에는 데이터, 제어 및 접지의 세 가지 신호가 있습니다. 이들은 통신 방향, 신호 유형 및 다양한 핀에 따라 작동합니다.
기술이 발전하고 장치의 크기가 작아지면서 DB25와 같은 거대한 커넥터를 위한 공간이 없으며 대부분의 응용 프로그램에서 25핀을 모두 연결할 필요가 없습니다. 따라서 9핀 커넥터의 기능이 많이 저하된 경우가 대부분입니다. D형 초소형 커넥터인 DE -9로 알려져 있습니다.

 

 

 
 

 

DB-9 커넥터(RS232)의 핀 설명

다음 표는 이름과 DTE 및 DCR 신호 방향이 있는 DB9(RS232) 커넥터의 핀을 보여줍니다.

비밀번호 신호 이름 DTE 및 DCE 신호 방향
1 질병 통제 예방 센터 캐리어 감지 DCE에서 IN
2 수신 데이터 수신 DTE에서 입력
3 TxD 데이터 전송 DCE로
4 DTR 데이터 터미널 준비 OUT 핸드쉐이킹 신호
5 접지 지면 접지 참조 전압
6 DSR 데이터 세트 준비 IN 핸드셰이킹 신호
7 RTS 보내기 요청
8 CTS 보내기 지우기 입력
9 RI 링 표시기 DCE에서 IN

기능적 특징

RS232는 공식적으로 전기적 및 기계적 기능 이상을 정의할 수 있는 완전한 표준으로 알려져 있습니다. R232 표준은 인터페이스에서 사용되는 다양한 신호의 기능을 정의하는 기능을 가지고 있습니다 . 신호는 공통, 데이터, 타이밍 및 제어 신호로 알려져 있습니다.

관련 게시물: 퍼지 논리 시스템이란 무엇입니까 – 작동, 예, 장점 및 응용

절차 사양

RS232의 절차 사양은 DTE 및 DCE 전선이 연결될 때 수행되는 작업 패턴에 대해 구체적으로 설명합니다.

라우터(DTE)가 RS232 인터페이스를 통해 모뎀(DCE)에 연결된 경우. 라우터에서 모뎀으로 데이터를 전송하려면 다음 절차를 사용해야 합니다.

  1. 라우터가 정보를 보내고 모뎀이 수신 준비가 되면 DCE 준비 신호를 보냅니다.
  2. 라우터가 데이터를 보낼 준비가 되면 Ready to send 신호를 보냅니다.
  3. 모뎀은 라우터에서 데이터를 보낼 수 있음을 보여주기 위해 Clear to Send 신호라는 신호를 더 보냅니다.
  4. 마지막으로 라우터(DTE)는 TD(Transmit Data) 회선으로 정보를 모뎀(DCE)으로 보냅니다.

관련 게시물: 양자화 및 샘플링이란 무엇입니까? 압축의 종류와 법칙

 
 

RS232는 어떻게 작동합니까?

RS232 표준 장치에서 한 와이어는 변화하는 전압을 전송하고 다른 와이어는 와이어 끝이 단일이므로 접지에 연결됩니다. Driver와 Receiver 회로의 접지 전압 차이로 인해 발생하는 Noise는 Single-ended 신호에 영향을 줍니다. RS232 표준의 정보 또는 데이터는 단일 데이터 라인을 통해 한 방향으로만 직렬로 전송됩니다. 양방향 통신을 통합하려면 제어 신호와 함께 3개의 와이어(RX, TX 및 GND)가 필요합니다. 어떤 순간에도 1바이트의 정보가 전달될 수 있다는 사실을 감안할 때 이전 데이터 바이트는 이미 전송되었습니다.

RS232는 비동기 통신 프로토콜을 엄격히 따릅니다. 즉, 송신기와 수신기를 동기화하기 위한 클록 신호가 없습니다. 따라서 수신기에 데이터를 확인할 시기를 알려주기 위해 시작 및 정지 비트가 필요합니다. 각 비트의 전송 사이에는 특정 시간의 지연이 있습니다. 이 지연은 비활성 상태로 신호가 -12볼트로 설정되거나 로직 "1"로 설정되었음을 의미합니다. 앞서 언급한 바와 같이 RS232에서 로직 1은 -12볼트이고 로직 0은 12볼트입니다.

 

첫째, 송신기, 즉 DTE는 시작 비트를 수신기, 즉 DCE로 보내 데이터 전송이 다음 비트에서 시작됨을 알립니다. 우리는 항상 시작 비트를 논리 0 또는 +12 볼트로 유지하고 다음 5-9 문자는 데이터 비트입니다.

패리티 비트를 사용하면 최대 8비트를 전송할 수 있고, 패리티 비트를 사용하지 않으면 9개의 데이터 비트를 전송할 수 있다. 데이터를 성공적으로 보낸 후 송신기는 1비트, 2비트 또는 5비트 길이가 될 수 있는 정지 비트를 보냅니다.

RS232가 완전한 표준이라는 사실에 따라 많은 제조업체가 표준을 따르지 않습니다. 그들 중 일부는 완전한 식별을 준수하고 일부는 사양을 부분적으로만 따릅니다.

이는 RS232 표준 구현의 이러한 변형이 모든 장치와 애플리케이션이 RS232 프로토콜의 전체 사양과 기능을 필요로 하는 것은 아니기 때문입니다. 예를 들어, RS2323을 사용하는 직렬 모델은 직렬 포트를 사용하는 직렬 마우스보다 더 많은 제어 라인이 필요할 수 있습니다.

 

서로 다른 ID를 모두 사용하는 송수신 프로세스는 Handshaking이라는 다른 프로세스에 의해 백업됩니다.

악수

핸드셰이킹은 통신이 시작되기 전에 송신기와 수신기 간의 통신 매개변수를 능동적으로 배치하는 프로세스입니다. 핸드셰이킹의 요구 사항은 데이터를 수신기로 보내는 송신기의 속도와 수신기가 데이터를 받는 속도에 따라 다릅니다. 비동기식 데이터 전송 시스템의 경우에도 핸드셰이킹이 필요하지 않을 수 있습니다.

핸드셰이킹 없음

핸드셰이킹이 사용되지 않는 소수의 전송에서 수신기(DCE)는 송신기(DTE)가 다음 데이터를 보내기 전에 이미 수신한 데이터를 읽어야 합니다. 수신기는 수신기의 끝에서 사용되는 수신기 버퍼라고 하는 버퍼라는 특수 메모리 위치를 사용해야 합니다.

수신된 데이터는 수신자가 읽기 전에 버퍼에 저장됩니다. 수신기 버퍼는 일반적으로 단일 비트의 데이터를 저장할 수 있으며 다음 데이터가 도착하기 전에 이 데이터를 읽어야 하며 지우지 않으면 현재 데이터를 새 데이터와 함께 덮어씁니다.

 
 
 

핸드셰이킹의 유형

  1. 하드웨어 핸드셰이킹
  2. 소프트웨어 핸드셰이킹

하드웨어 핸드셰이킹

하드웨어 핸드셰이킹(전류 흐름)은 장치가 준비되지 않은 경우 PC가 정보 및 데이터 전송을 중지하도록 하고 장치가 장치에 대한 준비가 전혀 되지 않았을 때 컴퓨터가 데이터를 전송하지 못하도록 합니다.

송신기는 데이터를 전송하고 수신기 버퍼에 로드됩니다. 이것은 수신기가 버퍼의 데이터를 수신기가 읽을 때까지 수신기가 더 이상 데이터를 보내지 않도록 송신기에 지시하는 시간입니다.

 

RS232 프로토콜은 핸드셰이킹 사용을 위한 4가지 신호를 나타냅니다.

 
  • 보낼 준비 완료(RTS)
  • 보내기 지우기(CTS)
  • 데이터 터미널 준비(DTR) 및
  • 데이터 세트 준비(DSR)

관련 게시물: 위상 고정 루프 - 작동, 특성 및 응용

소프트웨어 핸드셰이킹

RS232의 소프트웨어 핸드쉐이킹은 통신을 시작하고 종료하기 위해 두 개의 문자가 필요합니다. 이러한 문자를 X-ON 및 X-OFF(송신기 켜짐 및 송신기 꺼짐)라고 합니다.

수신기가 X-OFF 신호를 보내면 송신기는 데이터 전송을 중지합니다. 송신기는 X-ON 신호를 수신한 후에만 데이터를 보냅니다.

RS232의 한계

  • RS232를 작동하기 위해서는 송신기와 수신기 사이에 공통 플랫폼이 필요합니다. 이것이 RS232 프로토콜에서 DTE와 DCE 사이에 짧은 케이블을 사용하는 이유입니다.
  • 케이블의 길이에 따라 Baud Rate가 증가하면 케이블 사이의 정전용량에 의해 Cross Talk가 잡힐 가능성이 높습니다.
  • 라인의 신호는 내부 및 외부의 노이즈를 매우 잘 수용합니다.
  • RS232의 전압 레벨은 최신 TTL 시스템에 적응할 수 없습니다. 이를 위해서는 외부 레벨 변환기가 필요합니다.

관련 게시물: PIC18 마이크로컨트롤러 프로그래밍 방법. 단계별 자습서

 
 

RS232의 실용화

RS232의 전압 레벨은 최근에 설계된 대부분의 시스템과 매우 다릅니다. 따라서 RS232 인터페이스를 구현하려면 일종의 레벨 변환기가 필요합니다. 이 구현은 Maxim Integrated 의 전용 레벨 컨버터 IC MAX232 에 의해 수행됩니다. 이 IC는 RS232 신호를 수신하고 TTL 레벨 전압을 제공합니다. 이 IC는 또한 신호를 RS232의 낮은 전압 레벨로 반전시킵니다. 직렬 통신 프로세스의 경우 UART(Universal Asynchronous Receiver and Transmitter)는 신호를 보내고 받고 신호는 TTL과 RS232 인터페이스 사이에서 RS232 드라이버에 의해 변환됩니다.

이 예에서 언급된 전체 통신 시스템은 비동기식이며 동기화 비트라고도 하는 시작, 중지 및 패리티 비트가 필요합니다. 예제의 UART는 데이터를 전송할 때 시작, 중지 및 패리티 비트를 생성하고 데이터를 수신하는 동안 오류를 감지하는 역할을 합니다.

 

컴퓨터와 모뎀의 경우, 컴퓨터와 모뎀은 RS232 인터페이스를 이용하여 통신하고 모뎀 간의 통신은 다른 통신 링크를 이용하여 설정합니다.

RS232의 몇 가지 추가 응용 프로그램은 다음과 같습니다.

  • 서보 컨트롤러, PLC 기계, CNC 기계 및 기타 마이크로 컨트롤러 보드에 사용됩니다.
  • 다른 고급 프로토콜은 최근에 RS232를 쉽게 대체했습니다.
  • 마우스, 모뎀과 같은 시리얼 터미널에 사용됩니다.