ESP8266 - RS232 | ESP8266 - RS232
이 튜토리얼에서는 RS232 통신을 ESP8266과 함께 사용하는 방법에 대해 자세히 다룰 것입니다. 다룰 내용은:
- ESP8266을 TTL에서 RS232 모듈에 연결하여 통신을 개선합니다.
- ESP8266이 TTL에서 RS232 모듈로부터 데이터를 효과적으로 읽을 수 있도록 프로그래밍합니다.
- ESP8266에게 TTL에서 RS232 모듈로 데이터를 보내도록 지시합니다.
튜토리얼에는 하드웨어 시리얼과 소프트웨어시리얼 모두에 대한 지침이 포함되어 있습니다.
준비물
1 | × | ESP8266 NodeMCU | Amazon | |
1 | × | Micro USB Cable | Amazon | |
1 | × | TTL to RS232 Module | 쿠팡 | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) RS232 to USB Cable | Amazon | |
1 | × | (Optional) RS232 Gender Changer | Amazon | |
1 | × | (Optional) Screw Terminal Expansion Board for ESP8266 | 쿠팡 | Amazon |
TTL에서 RS232 모듈에 대하여
ESP8266에서 직렬 작업을 수행하고 Serial.print(), Serial.read(), Serial.write()를 사용할 때, ESP8266이 TX 핀을 통해 데이터를 보내고 RX 핀으로 들어오는 데이터를 받는 일이 일어납니다. 이제 중요한 점은 TX와 RX의 신호가 TTL 수준이라는 것인데, 이것 자체는 좋지만 신호가 너무 멀리 가지는 않습니다. 그래서, 멀리 떨어진 곳과 데이터를 교환하려면 신호를 업그레이드해야 합니다.
TTL을 RS232 모듈로 변환합니다. 이 멋진 장치는 TTL 신호를 RS232로 변환하고 다시 변환합니다. 이것은 마치 마법처럼 통신이 멀리까지 도달하게 만듭니다.
핀아웃
RS232에서 TTL 모듈은 두 가지 인터페이스를 가지고 있습니다:
TTL 인터페이스(ESP8266에 연결됨)는 4개의 핀을 포함합니다.
- VCC 핀: 전원 핀으로, VCC(5V)에 연결해야 합니다.
- GND 핀: 전원 핀으로, GND(0V)에 연결해야 합니다.
- RXD 핀: 데이터 핀으로, ESP8266의 RX 핀에 연결해야 합니다.
- TXD 핀: 데이터 핀으로, ESP8266의 TX 핀에 연결해야 합니다.
RS232 인터페이스: DB9 암성 D-Sub 커넥터로, 이를 직렬 장치에 연결하세요.
선연결
하드웨어 시리얼을 사용하는 경우의 배선도
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266의 핀 배치 및 ESP8266 및 다른 구성 요소에 전원을 공급하는 방법에 대해 더 많이 보십시오.
소프트웨어 시리얼을 사용하는 경우의 배선도
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266을 RS232 모듈을 사용하도록 프로그래밍하는 방법
시리얼 인터페이스를 초기화합니다:
SoftwareSerial을 사용하려면 라이브러리를 포함시키고 SoftwareSerial 객체를 선언해야 합니다.
RS232에서 데이터를 읽기 위해 다음 함수들을 사용할 수 있습니다:
RS232에 데이터를 쓰기 위해 다음 함수들을 사용할 수 있습니다:
RS232와 함께 사용할 수 있는 더 많은 함수들은 Serial reference에서 확인할 수 있습니다.
하드웨어 시리얼용 ESP8266 코드
소프트웨어 시리얼을 위한 ESP8266 코드
테스팅
다음 단계를 따라 PC에서 RS232를 통해 ESP8266으로 데이터를 보내거나 그 반대로 테스트를 할 수 있습니다:
아래와 같이 ESP8266을 RS232-to-USB 케이블을 사용하여 PC에 연결하세요:
- 시리얼 터미널 프로그램을 열고 시리얼 매개변수를 설정하세요 (COM 포트, 보레이트...)
- 시리얼 터미널에서 일부 데이터를 입력하여 ESP8266에 보내세요.
- 성공하면, 시리얼 터미널에 에코 데이터가 표시됩니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.