Cổng RS232 được coi là cổng truyền thông phổ biến nhất hiện nay trên toàn cầu. Có thể bạn đã từng nghe nói về cổng Com RS232, tuy nhiên vẫn chưa thực sự hiểu rõ khái niệm này. Bài viết dưới đây sẽ cung cấp cho bạn những thông tin chính xác và chi tiết nhất, giúp bạn có cái nhìn tổng quan về nó.
Đầu tiên, để hiểu về cổng Com RS232 là gì, ta cần phải hiểu về chuẩn truyền thông RS232. Đây là một chuẩn được tạo ra và phát triển bởi EIA/TIA - một tổ chức hàng đầu trong lĩnh vực công nghệ viễn thông. Chuẩn RS232 có hai phiên bản chính là RS232B (cũ) và RS232C (mới). Tuy nhiên, hiện nay, phiên bản cũ RS232B đã trở nên lỗi thời và ít được sử dụng. Thay vào đó, phiên bản mới RS232C được ưa chuộng và sử dụng rộng rãi hơn.
Cổng RS232 là tên gọi của các cổng kết nối trên máy tính sử dụng chuẩn RS232C, hay còn được gọi là cổng Com. Thường thì, một chiếc máy tính sẽ có từ một đến hai cổng Com, giúp kết nối và truyền tải dữ liệu từ máy tính đến các thiết bị ngoại vi như chuột, modem, thiết bị đo lường,... Có những máy tính có nhiều hơn hai cổng Com, tuy nhiên số lượng này thường không quá 4 và được đánh số từ Com 1, Com 2,...
Số lượng chân của cổng Com trên máy tính sẽ phụ thuộc vào đời máy và mainboard. Ngay cả khi bạn không có kiến thức về máy tính, bạn cũng có thể dễ dàng nhận ra cổng Com trên mainboard bởi vì nó có số chân nhiều hơn so với cổng USB, thường là 9 hoặc 25 chân. Do đó, kích thước của cổng Com cũng lớn hơn các cổng khác.
Trong tiêu chuẩn cổng RS232, có mức giới hạn trên và dưới (logic 0 và 1) là +-12V. Hiện nay, đang được áp dụng cố định trở kháng tải trong khoảng từ 3000 ôm đến 7000 ôm. Mức điện áp của logic 1 nằm trong khoảng -3V đến -12V, còn logic 0 từ +-3V đến 12V. Tốc độ truyền nhận dữ liệu tối đa là 100kbps (hiện nay có thể cao hơn). Các lối vào thường phải có điện dung nhỏ hơn 2500pF. Trở kháng tải phải lớn hơn 3000 ôm nhưng không quá 7000 ôm.
Độ dài cáp kết nối giữa máy tính và thiết bị ngoại vi thông qua cổng nối tiếp cổng RS232 không vượt quá 15m. Điện trở dây và sự suy giảm điện áp trở thành vấn đề khi cáp dài hơn. Điều này là một trong những lý do khiến cổng RS232 không được sử dụng nhiều như các công nghệ mới hơn để cài đặt từ xa. Các giá trị tốc độ truyền dữ liệu thông thường được sử dụng là: 9600, 19200, 28800, 38400... 56600, 115200 bps.
Giao tiếp cổng RS232 sử dụng phương thức truyền thông không đối xứng, có nghĩa là sử dụng tín hiệu điện áp chênh lệch giữa một dây dẫn và đất. Vì vậy, từ khi được ra đời, chuẩn này đã mang tính lỗi thời của chuẩn TTL, vẫn sử dụng các mức điện áp tương thích với TTL để biểu diễn các mức logic 0 và 1. Ngoài ra, nó cũng quy định các giá trị trở kháng tải và trở kháng đầu ra của bộ phận kết nối vào bus và bộ phát. Mức điện áp theo chuẩn RS232C (thường được sử dụng hiện nay) được mô tả như sau: + Mức logic 0: +3V, +12V + Mức logic 1: -12V, -3V Các mức điện áp trong khoảng từ -3V đến 3V được coi là trạng thái chuyển tuyến.
Tuy nhiên, vì không có định nghĩa cụ thể cho khoảng này, khi có sự thay đổi giá trị logic từ thấp lên cao hoặc từ cao xuống thấp, tín hiệu phải vượt qua khoảng không được định nghĩa trong một khoảng thời gian ngắn. Điều này yêu cầu hạn chế về điện dung của các thiết bị và đường truyền. Tốc độ truyền dẫn tối đa thường phụ thuộc vào chiều dài của dây dẫn. Hiện nay, hầu hết các hệ thống chỉ hỗ trợ tốc độ 19,2 kBd.
Xem thêm:
Hầu hết các máy tính cá nhân hiện nay đều được trang bị ít nhất một cổng Com hoặc cổng nối tiếp cổng RS232. Số lượng cổng Com có thể lên tới 4 tùy thuộc vào loại mainboard của máy tính. Các cổng Com này được đánh số từ Com 1, Com 2, Com 3... và có thể sử dụng hai loại đầu nối là DB9 (9 chân) hoặc DB25 (25 chân). Mặc dù hai loại đầu nối này có cùng chức năng song song nhưng chúng được phân biệt bởi cổng đực (DB9) và cổng cái (DB25).
Chúng ta có thể xem sơ đồ chân của cổng Com 9 chân như sau:
Các chân của cổng Com có các chức năng sau:
Hiện nay, hầu hết các mainboard mới ra đều không có cổng DB25 nữa, vì vậy tôi không đề cập đến nó trong bài viết này.
Truyền dữ liệu qua cổng nối tiếp cổng RS232 được thực hiện theo phương thức không đồng bộ, có nghĩa là chỉ một bit được truyền tại một thời điểm (tương đương với một kí tự). Trước khi gửi một kí tự, bộ truyền sẽ gửi một bit bắt đầu (bit start) để thông báo cho bộ nhận biết về việc một kí tự sẽ được gửi trong lần truyền bit tiếp theo. Bit này luôn có giá trị 0. Tiếp theo đó là các bit dữ liệu (bits data) được gửi dưới dạng mã ASCII, có thể là 5, 6, 7 hoặc 8 bit dữ liệu. Sau đó, một bit kiểm tra chẵn hoặc lẻ (parity bit) sẽ được gửi và cuối cùng là bit dừng (stop bit), có thể là 1, 1.5 hoặc 2 bit dừng.
Đây là một tham số quan trọng của chuẩn cổng RS232. Tham số này đại diện cho tốc độ truyền dữ liệu qua cổng nối tiếp cổng RS232, còn được gọi là tốc độ bit. Tốc độ bit là số lượng bit được truyền trong một giây hoặc số lượng bit được truyền trong một khoảng thời gian nhất định. Để đảm bảo tính hiệu quả của quá trình truyền dữ liệu, tốc độ bit phải được thiết lập giống nhau ở cả bên gửi và bên nhận (bao gồm cả vi điều khiển và máy tính).
Ngoài tốc độ bit, tốc độ Baud là một tham số khác để mô tả tốc độ truyền dữ liệu. Tốc độ Baud liên quan đến tốc độ của các thành phần mã hóa dữ liệu, trong khi tốc độ bit phản ánh tốc độ thực tế của quá trình truyền dữ liệu. Vì mỗi thành phần chỉ có thể mã hóa một bit, do đó tốc độ bit và tốc độ Baud phải được đồng bộ với nhau.
Có nhiều tốc độ Baud thông dụng, bao gồm 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 28800, 38400, 56000, 115200... Tuy nhiên, trong các thiết bị hiện đại, tốc độ Baud thường được sử dụng là 19200.
Khi sử dụng chuẩn cổng RS232, yêu cầu quan trọng là thời gian chuyển đổi giữa hai mức logic không được vượt quá 4% thời gian truyền của một bit. Do đó, khi tốc độ bit càng cao, thời gian truyền của một bit càng ngắn, và thời gian chuyển đổi giữa hai mức logic cũng phải ngắn hơn. Điều này giới hạn tốc độ Baud và khoảng cách truyền dẫn của chuẩn cổng RS232.
Đây là một phương pháp kiểm tra lỗi trên đường truyền dữ liệu. Quá trình này bổ sung thêm dữ liệu để tìm và sửa các lỗi xảy ra trong quá trình truyền. Trong chuẩn cổng RS232, kỹ thuật kiểm tra chẵn lẻ được áp dụng.
Một bit chẵn lẻ được thêm vào dữ liệu truyền để xác định số lượng bit 1 có trong một khung truyền là chẵn hay lẻ. Tuy nhiên, kỹ thuật này chỉ có thể phát hiện được các lỗi có số lượng bit 1 lẻ như 1, 3, 5, 7, 9,... Nếu một bit chẵn bị lỗi, Parity bit sẽ có cùng giá trị với trường hợp không có lỗi, do đó không thể phát hiện được lỗi. Vì vậy, kỹ thuật này không được sử dụng khi có khả năng một vài bit bị lỗi.
Trên đây là những chia sẻ của Cân Điện Tử Minh Phúc về phương pháp kiểm tra lỗi trên đường truyền dữ liệu. Nếu bạn thấy hữu ích, hãy chia sẻ trực tiếp với bạn bè của bạn nha!