ESP32 RS422
이 튜토리얼은 ESP32에서 RS422 통신을 사용하는 방법을 알려줍니다. 우리는 다음 단계를 통해 배울 것입니다:
- ESP32를 TTL에서 RS422 모듈로 연결하기.
- ESP32가 TTL에서 RS422 모듈로부터 데이터를 수신하도록 프로그래밍하기.
- ESP32가 TTL에서 RS422 모듈로 데이터를 전송하도록 프로그래밍하기.
- PC와 ESP32 사이에 RS422를 통해 양방향으로 데이터를 전송하기.
준비물
1 | × | ESP32 ESP-WROOM-32 개발 모듈 | 쿠팡 | 아마존 | |
1 | × | USB 케이블 타입-C | 쿠팡 | 아마존 | |
1 | × | TTL-RS422 변환 모듈 | 쿠팡 | 아마존 | |
1 | × | 점퍼케이블 | 아마존 | |
1 | × | (옵션) RS422 to USB 변환 케이블 | 아마존 | |
1 | × | (추천) ESP32용 스크루 터미널 확장 보드 | 쿠팡 | 아마존 | |
1 | × | (추천) ESP32용 전원 분배기 | 쿠팡 | 아마존 |
TTL에서 RS422 모듈에 대해
ESP32에서 Serial.print(), Serial.read(), Serial.write()와 같은 함수를 사용하여 직렬 통신을 사용할 때, 데이터 전송은 TX 핀을 통해 이루어지고 데이터 수신은 RX 핀을 통해 이루어집니다. 이 핀들은 TTL 레벨에서 작동하며, 이는 한정된 범위의 신호를 처리한다는 것을 의미합니다. 따라서 더 긴 거리에서의 직렬 통신을 위해서는 TTL 신호를 RS232, RS422, 또는 RS485 표준으로 변환하는 것이 필수적입니다.
이 가이드에서는 RS422(또한 RS-422로도 언급됨)를 TTL에서 RS422 모듈을 통합하여 ESP32와 함께 사용하는 방법을 탐구할 것입니다. 이 모듈은 TTL 신호를 RS422 신호로 변환하고 그 반대의 변환을 용이하게 합니다.
핀배열
RS422에서 TTL 모듈에는 두 가지 인터페이스가 있습니다:
- TTL 인터페이스(ESP32에 연결됨):
- VCC 핀: 이 전원 핀은 VCC(5V 또는 3.3V)에 연결되어야 합니다.
- GND 핀: 이 전원 핀은 GND(0V)에 연결되어야 합니다.
- RXD 핀: 이 데이터 핀은 ESP32의 TX 핀에 연결되어야 합니다.
- TXD 핀: 이 데이터 핀은 ESP32의 RX 핀에 연결되어야 합니다.
- RS422 인터페이스:
- A (R+) 핀: 이 핀은 모듈의 RX+ 핀입니다. 이 핀을 다른 RS422 장치의 TX+ 핀(T+ 또는 Y 핀)에 연결하십시오.
- B (R-) 핀: 이 핀은 모듈의 RX- 핀입니다. 이 핀을 다른 RS422 장치의 TX- 핀(T- 또는 Z 핀)에 연결하십시오.
- Y (T+) 핀: 이 핀은 모듈의 TX+ 핀입니다. 이 핀을 다른 RS422 장치의 RX+ 핀(R+ 또는 A 핀)에 연결하십시오.
- Z (T-) 핀: 이 핀은 모듈의 TX- 핀입니다. 이 핀을 다른 RS422 장치의 RX- 핀(R- 또는 B 핀)에 연결하십시오.
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP32 및 다른 구성 요소에 전원을 공급하는 방법에 대해 잘 알지 못하는 경우, 다음 튜토리얼에서 안내를 찾을 수 있습니다: ESP32를 구동하는 방법.
ESP32를 RS422 모듈을 사용하도록 프로그래밍하는 방법
시리얼 인터페이스를 초기화합니다:
RS422에서 데이터를 읽으려면 다음 함수들을 사용할 수 있습니다:
RS422에 데이터를 쓰려면 다음 함수들을 사용할 수 있습니다:
그리고 RS422에서 사용할 수 있는 더 많은 함수들은 Serial 참조에서 확인할 수 있습니다.
ESP32 코드
테스팅
아래 단계를 따라 PC에서 ESP32로 RS-422를 통해 데이터를 전송하여 테스트를 수행하거나 그 반대로 수행할 수 있습니다.
아래와 같이 ESP32를 RS422-to-USB 케이블로 PC에 연결하세요:
- 시리얼 터미널 프로그램을 열고 시리얼 매개변수(COM 포트, 보레이트 등)를 설정하세요.
- 시리얼 터미널에서 일부 데이터를 입력하여 ESP32로 보내세요.
- 성공하면, 시리얼 터미널에 에코 데이터가 보일 것입니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.