Cổng COM RS-232 là cổng nối tiếp, thường dùng đầu DE-9 (9 chân), truyền dữ liệu từng bit theo tốc độ baud cài đặt. Nó vẫn phổ biến ở máy POS, cân điện tử, máy CNC, thiết bị đo, cổng console của router và switch, thường nối với máy mới qua cáp chuyển USB sang RS-232.
Cổng COM là gì và vì sao còn tồn tại
RS-232 là chuẩn truyền thông nối tiếp có từ rất sớm, truyền từng bit một qua dây dẫn. Điểm mạnh là đơn giản, ổn định, dễ gỡ lỗi và không cần giao thức phức tạp. Nhiều thiết bị công nghiệp, máy bán hàng, cân điện tử và thiết bị mạng vẫn dùng vì phần mềm điều khiển viết sẵn đã chạy tốt và không cần đổi.
Trong Windows, cổng này xuất hiện với tên COM1, COM2… trong Device Manager, mục Ports (COM và LPT).
Đầu nối DE-9 và sơ đồ chân
Đầu DE-9 (thường gọi nhầm là DB-9) có chín chân. Với thiết bị đầu cuối dữ liệu (DTE) như máy tính, ý nghĩa các chân như sau:
| Chân | Tên | Chức năng |
|---|---|---|
| 1 | DCD | Phát hiện sóng mang |
| 2 | RXD | Nhận dữ liệu |
| 3 | TXD | Gửi dữ liệu |
| 4 | DTR | Thiết bị đầu cuối sẵn sàng |
| 5 | GND | Mass tín hiệu |
| 6 | DSR | Thiết bị dữ liệu sẵn sàng |
| 7 | RTS | Yêu cầu gửi |
| 8 | CTS | Sẵn sàng nhận |
| 9 | RI | Báo chuông |
Thông số kết nối cần khớp hai đầu
RS-232 không tự dò tốc độ, nên hai thiết bị phải cài cùng thông số:
- Baud rate: tốc độ truyền, phổ biến như 9600 hoặc 115200.
- Data bits: thường là 8.
- Parity: thường là None.
- Stop bits: thường là 1.
- Flow control: None, phần cứng (RTS/CTS) hoặc phần mềm tùy thiết bị.
Bộ thông số hay gặp được viết gọn là 8N1. Tài liệu của thiết bị là nơi cần tra để biết chính xác. Sai một thông số là dữ liệu nhận được thành ký tự rác.
Về điện, RS-232 dùng mức điện áp dương và âm khoảng từ 3V đến 15V. Điều này khác tín hiệu TTL hay UART của vi điều khiển (0 đến 3.3V hoặc 5V), nên không được nối trực tiếp hai kiểu này, dễ làm hỏng thiết bị.
Nối với máy mới không còn cổng COM
- Dùng cáp chuyển USB sang RS-232 loại chất lượng tốt, chip rõ nguồn gốc; cài driver theo hướng dẫn.
- Mở Device Manager để xem số cổng COM mà Windows gán, rồi nhập đúng số đó vào phần mềm.
- Kiểm tra chéo dây: thiết bị cùng loại (hai máy tính) cần cáp null modem đảo TXD với RXD, còn thiết bị DTE nối DCE thường dùng cáp thẳng.
- Với máy tính để bàn, có thể dùng card PCIe có cổng COM, hoặc mainboard công nghiệp có sẵn cổng.
Chiều dài cáp RS-232 thường được khuyến cáo khoảng 15 mét ở tốc độ thấp; đường dài hơn dễ lỗi dữ liệu.
Lỗi thường gặp và khi nào cần hỗ trợ
- Không thấy cổng COM trong Device Manager: driver bộ chuyển chưa cài hoặc bộ chuyển giả chip.
- Có cổng nhưng không có dữ liệu: sai thông số baud, sai chéo dây, hoặc dùng nhầm cáp thẳng và cáp null modem.
- Dữ liệu rác: lệch baud, parity hoặc stop bits.
- Cổng COM bị đổi số sau khi cắm vào cổng USB khác: cần đặt lại số trong phần mềm hoặc đổi số cổng trong thuộc tính thiết bị.
Nếu chắc đã đúng thông số mà thiết bị vẫn không phản hồi, có thể do cổng COM trên mainboard hỏng hoặc thiết bị đầu kia lỗi. Với các hệ thống bán hàng hoặc máy chuyên dụng nối qua COM, nên nhờ kỹ thuật viên sửa máy tính kiểm tra thay vì tự tháo cắm nhiều lần.
Khi cài lại Windows hoặc đổi máy cho hệ thống dùng COM, ghi lại thông số baud, parity, stop bits và số cổng COM đang dùng trước khi thay. Đây là thông tin thường không có sẵn tài liệu và rất dễ quên.
Máy không nhận cổng, màn hình hay cáp? Kỹ thuật viên PCTech hỗ trợ tại TP.HCM.
Câu hỏi thường gặp
Cổng COM và cổng LPT khác nhau thế nào?
COM là cổng nối tiếp, truyền từng bit, thường 9 chân. LPT là cổng song song, truyền nhiều bit cùng lúc, đầu 25 chân, từng dùng cho máy in cũ. Cả hai ít còn trên máy mới.
Cáp USB sang RS-232 nào tốt?
Nên chọn cáp có chip rõ nguồn gốc, có driver ổn định cho Windows hiện hành và được nhà cung cấp hỗ trợ. Chip làm giả có thể không chạy được với driver mới hoặc chạy chập chờn, nên cân nhắc nơi bán đáng tin.
RS-232 và RS-485 có phải một không?
Không. RS-485 dùng tín hiệu vi sai, chạy xa hơn và có thể nối nhiều thiết bị trên cùng một đường dây, thường gặp trong công nghiệp. RS-232 chủ yếu nối từng cặp thiết bị với khoảng cách ngắn hơn.
Có thể nối tín hiệu UART TTL vào cổng RS-232 không?
Không nối trực tiếp. Mức điện áp khác nhau và có thể làm hỏng thiết bị. Cần mạch chuyển mức (như chip MAX232) hoặc bộ chuyển USB sang TTL đúng loại cho mức điện áp của thiết bị.
Bài viết liên quan
- Cổng eSATA, FireWire và các cổng cũ còn dùng được không
- Cổng VGA D-sub là gì? Còn dùng được không
- USB-A, USB-B và USB-C khác nhau thế nào
- Cách đọc ký hiệu cổng sau mainboard