ESP32 RS485
Hướng dẫn này sẽ chỉ cho bạn cách sử dụng giao tiếp RS485 với ESP32. Cụ thể, chúng ta sẽ học những khía cạnh sau:
- Thiết lập kết nối giữa ESP32 và module TTL to RS485.
- Lập trình ESP32 để nhận dữ liệu từ module TTL to RS485.
- Lập trình ESP32 để truyền dữ liệu tới module TTL to RS485.
- Cách gửi dữ liệu từ PC của bạn tới ESP32 qua RS485, và ngược lại.
Linh Kiện Cần Thiết
| 1 | × | mô-đun phát triển ESP-WROOM-32 | ||
| 1 | × | Alternatively, ESP32 Uno-form board | ||
| 1 | × | Alternatively, ESP32 S3 Uno-form board | ||
| 1 | × | Cáp USB Type-C | ||
| 1 | × | Module TTL to RS485 | ||
| 1 | × | Dây Jumper | ||
| 1 | × | (Tùy chọn) Bộ Chuyển Đổi USB to RS485 | ||
| 1 | × | (Tùy chọn) Cáp USB to RS485 | ||
| 1 | × | (Khuyến nghị) Screw Terminal Expansion Board for ESP32 | ||
| 1 | × | (Khuyến nghị) Breakout Expansion Board for ESP32 | ||
| 1 | × | (Khuyến nghị) Power Splitter for ESP32 |
Or you can buy the following kits:
| 1 | × | DIYables ESP32 Starter Kit (ESP32 included) | ||
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về Module TTL to RS485
Khi sử dụng giao tiếp serial trên ESP32 với các hàm như Serial.print(), Serial.read(), và Serial.write(), việc truyền dữ liệu xảy ra qua chân TX, trong khi việc nhận dữ liệu diễn ra thông qua chân RX. Những chân này hoạt động ở mức TTL, có nghĩa là chúng xử lý tín hiệu với phạm vi hạn chế. Do đó, đối với giao tiếp serial trên khoảng cách xa, việc chuyển đổi tín hiệu TTL sang chuẩn tín hiệu RS232, RS485, hoặc RS422 trở nên cần thiết.
Trong hướng dẫn này, chúng ta sẽ khám phá việc sử dụng RS485 (còn được gọi là RS-485) với ESP32 bằng cách sử dụng module TTL to RS485. Module này tạo điều kiện chuyển đổi tín hiệu TTL sang tín hiệu RS485 và ngược lại.
Sơ Đồ Chân
Module RS485 to TTL có hai giao diện:
- Giao diện TTL (kết nối với ESP32):
- Chân VCC: Chân nguồn này nên được kết nối với VCC (5V hoặc 3.3V).
- Chân GND: Chân nguồn này nên được kết nối với GND (0V).
- Chân RXD: Chân dữ liệu này nên được kết nối với chân TX của ESP32.
- Chân TXD: Chân dữ liệu này nên được kết nối với chân RX của ESP32.
- Giao diện RS485:
- Chân D+ (A hoặc TR+): Chân này tạo điều kiện giao tiếp dữ liệu.
- Chân D- (B hoặc TR-): Chân này được sử dụng để truyền dữ liệu.
- Chân GND: Mặc dù tùy chọn, việc bao gồm chân này được khuyến khích mạnh mẽ để giảm thiểu nhiễu, đảm bảo hiệu suất tối ưu.

Sơ Đồ Kết Nối

This image is created using Fritzing. Click to enlarge image
Nếu bạn chưa rõ cách cấp nguồn cho ESP32 và các linh kiện khác, xem: Cách Cung Cấp Nguồn Điện Cho ESP32.
Cách Lập Trình ESP32 để sử dụng module RS485
- Khởi tạo giao diện Serial:
- Để đọc dữ liệu từ RS485, bạn có thể sử dụng các hàm sau:
- Để ghi dữ liệu tới RS485, bạn có thể sử dụng các hàm sau:
- Và nhiều hàm khác để sử dụng với RS485 trong Serial reference
Code ESP32
Kiểm Thử
Bạn có thể thực hiện kiểm thử bằng cách gửi dữ liệu từ PC của bạn tới ESP32 qua RS-485 và ngược lại. Để làm điều này, hãy làm theo các bước dưới đây:
- Kết nối ESP32 với PC của bạn qua cáp RS485-to-USB như dưới đây:

- Mở chương trình Serial Terminal và cấu hình các thông số Serial (cổng COM, tốc độ baud...)
- Nhập một số dữ liệu từ Serial Terminal để gửi tới ESP32.
- Nếu thành công, bạn sẽ thấy dữ liệu echo trên Serial Terminal.
Video Tutorial
Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.