Arduino RS-422
Trong hướng dẫn này, chúng ta sẽ đi sâu vào cách thiết lập giao tiếp RS422 với Arduino. Chúng ta sẽ đi qua các bước sau một cách kỹ lưỡng:
- Kết nối Arduino với mô-đun TTL sang RS422.
- Lập trình Arduino để nhận dữ liệu từ mô-đun TTL sang RS422.
- Lập trình Arduino để gửi dữ liệu đến mô-đun TTL sang RS422.
- Gửi dữ liệu giữa PC của bạn và Arduino thông qua RS422 hai chiều.
Hướng dẫn cũng cung cấp chỉ dẫn cho cả Serial phần cứng và SoftwareSerial.
Phần cứng cần chuẩn bị
| 1 | × | Arduino Uno R3 | ||
| 1 | × | USB 2.0 cable type A/B (for USB-A PC) | ||
| 1 | × | USB 2.0 cable type C/B (for USB-C PC) | ||
| 1 | × | TTL to RS422 Module | ||
| 1 | × | dây jumper | ||
| 1 | × | (Tùy chọn) RS422 to USB Cable | ||
| 1 | × | (Khuyến nghị) Screw Terminal Block Shield for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Breadboard Shield for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Enclosure for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO |
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | ||
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về Mô-đun TTL sang RS422
Khi sử dụng giao tiếp nối tiếp trên Arduino thông qua các hàm như Serial.print(), Serial.read(), và Serial.write(), Arduino truyền dữ liệu qua chân TX và nhận dữ liệu qua chân RX. Các chân này hoạt động ở mức TTL, có nghĩa là tín hiệu mà chúng xử lý có phạm vi giới hạn. Do đó, để giao tiếp nối tiếp ở khoảng cách dài hơn, cần chuyển đổi tín hiệu TTL sang các chuẩn tín hiệu RS232, RS422, hoặc RS422.
Trong hướng dẫn này, chúng ta sẽ tìm hiểu việc sử dụng RS422 (còn được gọi là RS-422) với Arduino bằng cách sử dụng một mô-đun TTL sang RS422. Mô-đun này hỗ trợ chuyển đổi tín hiệu TTL sang tín hiệu RS422 và ngược lại.
Bố trí chân
Mô-đun RS422 sang TTL có hai giao diện:
- Giao diện TTL (kết nối với Arduino) gồm 4 chân
- Chân VCC: chân nguồn, cần được kết nối với VCC (5V hoặc 3.3V)
- Chân GND: chân nguồn, cần được kết nối với GND (0V)
- Chân RXD: chân dữ liệu, cần được kết nối với chân TX của Arduino
- Chân TXD: chân dữ liệu, cần được kết nối với chân RX của Arduino
- Giao diện RS422 bao gồm các chân sau:
- Chân A (R+): chân RX+ của module, kết nối chân này với chân TX+ (T+ hoặc Y) của thiết bị RS422 khác.
- Chân B (R-): chân RX- của module, kết nối chân này với chân TX- (T- hoặc Z) của thiết bị RS422 khác.
- Chân Y (T+): chân TX+ của module, kết nối chân này với chân RX+ (R+ hoặc A) của thiết bị RS422 khác.
- Chân Z (T-): chân TX- của module, kết nối chân này với chân RX- (R- hoặc B) của thiết bị RS422 khác.

Sơ đồ đấu dây
- Sơ đồ nối dây nếu sử dụng serial phần cứng

This image is created using Fritzing. Click to enlarge image
- Sơ đồ nối dây nếu sử dụng Serial bằng phần mềm

This image is created using Fritzing. Click to enlarge image
Cách lập trình Arduino để sử dụng mô-đun RS422
- Khởi tạo giao diện Serial:
- Nếu bạn sử dụng SoftwareSerial, bạn cần bao gồm thư viện và khai báo một đối tượng SoftwareSerial:
- Để đọc dữ liệu từ RS422, bạn có thể sử dụng các hàm sau:
- Để ghi dữ liệu vào RS422, bạn có thể sử dụng các hàm sau:
- Và còn nhiều hàm khác để sử dụng với RS422 trong Tham khảo Serial
Mã Arduino cho Serial phần cứng
Mã Arduino cho Software Serial
Kiểm tra
Bạn có thể thử nghiệm bằng cách gửi dữ liệu từ PC của bạn đến Arduino thông qua RS-422 và ngược lại. Để thực hiện điều này, hãy làm theo các bước dưới đây:
- Kết nối Arduino với máy tính của bạn bằng cáp RS422 sang USB như dưới đây:

- Mở chương trình Terminal nối tiếp và cấu hình các tham số nối tiếp (cổng COM, tốc độ baud...)
- Gõ một số dữ liệu từ Terminal nối tiếp để gửi cho Arduino.
- Nếu thành công, bạn sẽ thấy dữ liệu phản hồi trên Terminal nối tiếp.
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.