Giao tiếp uart là gì

  -  

UART (Universal Asynchronous Receiver-Transmitter – Bộ truyền nhận dữ liệu nối tiếp bất đồng bộ) là một trong những giao thức truyền thông giữa thiết bị với thiết bị được sử dụng nhiều nhất. Bạn có thể thấy giao tiếp UART được sử dụng nhiều trong các ứng dụng để giao tiếp với các module như: Wifi, Bluetooth, Xbee, module đầu đọc thẻ RFID với Raspberry Pi, Arduino hoặc vi điều khiển khác. Đây cũng là chuẩn giao tiếp thông dụng và phổ biến trong công nghiệp từ trước đến nay.

Bạn đang xem: Giao tiếp uart là gì

Khi được cấu hình đúng cách, UART có thể hoạt động với nhiều loại giao thức nối tiếp khác nhau liên quan đến việc truyền và nhận dữ liệu nối tiếp. Trong giao tiếp nối tiếp, dữ liệu được truyền từng bit bằng cách sử dụng một đường dây. Trong giao tiếp hai chiều, chúng ta sử dụng hai dây để truyền dữ liệu nối tiếp thành công. Tùy thuộc vào ứng dụng và yêu cầu hệ thống, truyền thông nối tiếp cần ít mạch và dây hơn, điều này làm giảm chi phí thực hiện.

Trong bài viết này, tôi sẽ trình bày về cách thức hoạt động của giao tiếp UART, nhằm giúp người đọc hiểu rõ hơn và tuân thủ các tiêu chuẩn của UART để tối đa hóa khả năng và ứng dụng, đặc biệt là khi phát triển các sản phẩm mới.


Nội dung bài viết

Cách thức hoạt động của giao tiếp UARTƯu và nhược điểm của UART

Giới thiệu về giao tiếp UART

Giao thức truyền thông đóng một vai trò quan trọng trong việc tổ chức giao tiếp giữa các thiết bị. Nó được thiết kế theo nhiều cách khác nhau dựa trên các yêu cầu của hệ thống và các giao thức này có một quy tắc cụ thể được thống nhất giữa các thiết bị để việc truyền dữ liệu được thực hiện thành công.

Các hệ thống nhúng, vi điều khiển và máy tính hầu hết sử dụng UART như một dạng giao thức giao tiếp phần cứng giữa thiết bị và thiết bị. Trong số các giao thức truyền thông hiện có, UART chỉ sử dụng hai dây cho bên truyền và bên nhận.

Mặc dù là một phương pháp giao thức truyền thông phần cứng được sử dụng rộng rãi, nhưng nó không phải lúc nào cũng được tối ưu hóa hoàn toàn. Việc thực hiện đúng giao thức khung truyền thường bị bỏ qua khi sử dụng module UART bên trong bộ vi điều khiển.

Xem thêm: Tải Game Bài Tiến Lên Miền Nam Miễn Phí, Chơi Game Tiến Lên Miền Nam

Theo định nghĩa, UART là một giao thức truyền thông phần cứng sử dụng giao tiếp nối tiếp không đồng bộ với tốc độ có thể định cấu hình. Không đồng bộ có nghĩa là không có tín hiệu đồng hồ để đồng bộ hóa các bit đầu ra từ thiết bị truyền đi đến bên nhận.

Trong giao tiếp UART, hai UART giao tiếp trực tiếp với nhau. UART truyền chuyển đổi dữ liệu song song từ một thiết bị điều khiển như CPU thành dạng nối tiếp, truyền nó nối tiếp đến UART nhận, sau đó chuyển đổi dữ liệu nối tiếp trở lại thành dữ liệu song song cho thiết bị nhận.

*

Dữ liệu truyền qua UART được tập hợp thành gói (packet). Mỗi gói chứa 1 bit start, 5 đến 9 bit dữ liệu (tùy thuộc vào UART), một bit chẵn lẻ (parity bit) tùy chọn và 1 hoặc 2 bit stop.

*

Data Frame (Khung dữ liệu)

Khung dữ liệu chứa dữ liệu thực tế đang được truyền. Nó có thể dài từ 5 bit đến 8 bit nếu sử dụng bit chẵn lẻ. Nếu không sử dụng bit chẵn lẻ, khung dữ liệu có thể dài 9 bit. Trong hầu hết các trường hợp, dữ liệu được truyền với bit có trọng số bé nhất (LSB – Least Significant Bit) trước tiên.

Xem thêm: Top 8 Tựa Game Xây Dựng Nông Trại, Game Xây Dựng Nông Trại

*

Stop Bit (Bit kết thúc)

Để báo hiệu sự kết thúc của gói dữ liệu, UART gửi sẽ điều khiển đường truyền dữ liệu từ điện áp thấp đến điện áp cao trong ít nhất hai khoảng thời gian bit.