회로 설계 전 확인할 내용
1. 기존 회로도 확인
2. RS-232 전압출력 방식에 대한 이해
RS-232는 데이터를 전송할 때 신호선과 접지간의 전압을 사용한다. 출력 전압 사양은 +5V에서 +25V(논리적으로 0)과 -5V에서 -25V(논리적으로 1)이다. 그러나 최대 전압인 ±25V는 일반적으로 사용되지 않으며 보통 ±12V가 사용된다(참고로 리시버는 최소 ±3V만 되면 시그널을 처리할 수 있다)
아래 그림은 실제 데이터가 RS-232를 통해 전송되는 모습을 보여준 것이다.
대부분의 마이크로 컨트롤러 내부에는 UART를 포함하고 있다. 그런데 UART의 출력은 +5V Logic이므로 RS-232 통신을 위해서는 +5V Logic의 데이터를 RS-232의 전압 Level로 변환해주는 소자(Device)가 필요하다. 마찬가지로 RS-232 Level로 수신된 정보도 +5V Level로 변환하여 UART로 보내야 한다. 이 역할을 MAX232, MAX233이 하게 된다.
아래 그림은 마이크로 컨트롤러의 출력핀에서 0-5V Logic 비트 스트림을 생성해서 RS232가 어떻게 동작하는지 보여준다.
3. 회로에서 사용된 R1IN, T1OUT의 전압출력 확인
1) 회로도에서 232RXD, 232TXD에 연결된 핀의 기능 확인
<참고> SP3232ECY- Datasheet
2) R1IN(receiver input)의 출력전압, LOW & HIGH 인식 값 확인
Input Voltage Range
출력 전압은 ±15V인 것을 확인할 수 있다.
Input Threshold LOW(어디서부터 LOW로 인식하는지)
회로의 전원이 5V이므로 최소값이 0.8V, 평균값이 1.5V인 것을 확인할 수 있다. 다시 말해서 평균적으로 1.5V 이하를 LOW로 인식하는데 0.8V 이하는 무조건 LOW로 인식한다는 뜻이다.
Input Threshold HIGH(어디서부터 HIGH로 인식하는지)
회로의 전원이 5V이므로 평균값이 1.8V, 최대값이 2.4V인 것을 확인할 수 있다. 다시 말해서 평균적으로 1.8V 이상을 HIGH로 인식하는데 2.4V 이상은 무조건 HIGH로 인식한다는 뜻이다.
※ 참고
driver output과는 다르게 receiver input에 input threshold low와 input threshold high가 있는 이유는 회로 설계 전 확인할 내용 2번에서 설명한 것처럼 RS-232 Level로 수신된 정보를 +5V Level로 변환하여 UART로 보내야 하기 때문이다.
3) T1OUT(driver output)의 출력전압 확인
Output Voltage Swing
출력 전압은 ±5V인 것을 확인할 수 있다.
4. LED 작동 방식 확인
RS-232 출력 전압이 HIGH일 때 LED를 켜는 방식으로 설계
즉, -15V에서 LED ON, +15V에서 LED OFF
잘못된 회로 설계 분석
1. 잘못된 회로도
2. 잘못된 회로도 분석
1) 회로도 간략화
2) 잘못된 회로에 대한 이유
- 제대로 된 신호를 받을 수 없다.
RS-232는 전압 출력이다. 따라서 전압 값에 따라 High와 Low가 결정되는데 중간에 LED를 넣으면 2V가 High와 Low상태에 영향을 미치게 된다.
- LED의 파손
LED는 다이오드로 버틸 수 있는 역 전압 값이 정해져 있다(여기서는 5V). 그런데 전압 출력에 의해서 전달되는 역 전압은 최대 15V로 LED가 버틸 수 있는 역 전압이 아니다. 따라서 바로 파손된다.
바람직한 회로 설계
1. 변경한 회로도
2. 회로도 분석
1) LED 쪽을 병렬 연결
위에 잘못된 회로 설계 분석 2-2)번에서 LED를 직렬로 달면 LED의 Vf(2V)에 의해서 RS-232 전압 신호 값(HIGH, LOW)에 영향을 미치는 것을 설명했다. 하지만 병렬로 달면 RS-232 전압 신호 값에 LED의 Vf값은 영향을 주지 않게 된다.
2) 역전압 방지 다이오드 추가(B5817W)
위에 회로 설계 전 확인할 내용 3-2),3)번에서 R1IN의 출력 전압은 ±15이고 T1OUT의 출력 전압은 ±5V이다. 그래서 역 전압이 걸릴 때 LED가 견딜 수 있는 역 전압(5V)을 넘으므로 파손될 우려가 있다. 따라서 역전압 방지 다이오드를 추가하여 이 전압을 차단시켜야 한다.
그림10을 보면 B5817W의 V(BR)이 20V, VF는 약 1V라는 것을 확인할 수 있다. 따라서 B5817W는 역 전압을 20V까지 견딜 수 있고 Vf는 1V라는 것을 알 수 있다.
3) 다이오드와 LED의 방향
RS-232가 ±15V의 출력 전압을 가진다고 했을 때 -15V를 HIGH로 +15V를 LOW로 인식한다. 그런데 위에서 LED가 켜지는 조건을 RS-232가 HIGH일 때라고 정의했으므로 -15V일 때 켜져야 한다. 따라서 다이오드와 LED의 방향을 회로도처럼 해야 한다.
4) 저항 선정
LED에 1mA의 전류면 충분히 밝다고 생각하여 추가된 회로에 1mA가 흐른다고 생각하고 저항을 선정했다.
R1IN에서는 15V에서 B5818W의 Vf(1V)와 LED의 Vf(2V)를 제외하면 12V가 된다. 여기에 1mA가 흐르면 옴의 법칙에 의해 12kΩ의 저항이 필요하다.
T1OUT에서는 5V에서 B5818W의 Vf(1V)와 LED의 Vf(2V)를 제외하면 2V가 된다. 여기에 1mA가 흐르면 옴의 법칙에 의해 2kΩ의 저항이 필요하다.
<참고>
'Hardware > 회로설계' 카테고리의 다른 글
Power ON LED 추가 (0) | 2021.11.30 |
---|---|
DI 입력 LED 추가 (0) | 2021.11.29 |