Chuẩn giao tiếp RS232 sử dụng trong đồ án này nhằm mục đích sử dụng cổng COM sẵn cĩ của máy tính. Ghép nối qua cổng nối tiếp RS232 là một trong những kỹ thuật được sử dụng rộng rãi nhất để ghép nối các thiết bị ngoại vi với máy tính. Chuẩn giao tiếp này sử dụng phương pháp truyền thơng theo kiều nối tiếp, trong đĩ ở một thời điểm chỉ cĩ một bit được truyền đi dọc theo một đường dẫn. Đặc điểm này khác với truyền thơng theo kiểu song song, trong đĩ nhiều bit được truyền đi một cách đồng thời. Ưu điểm chính của kiểu truyền nối tiếp so với kiểu truyền song song là một đường dẫn dùng để truyền và một đường dẫn dùng để nhận.
♦ Sơ lược về chuẩn RS232
Chuẩn RS232 khi mới ra đời chỉ là chuẩn khơng chính thức nhưng đã được nhiều cơng ty máy tính và thiết bị đo lường chấp nhận . Sau đĩ, hiệp hội các nhà cơng nghiệp điện tử (EIA) đã xây dựng thành một tiêu chuẩn chính thức vào năm 1962. Chữ RS là viết tắt của Recommended Standard (tiêu chuẩn đã giới thiệu).
Khuyết điểm của chuẩn giao tiếp này là chỉ cho phép sử dụng đường truyền ngắn với tốc độ bit thấp ví dụ như truyền với tốc độ 19.600 bps với khoảng cách tối đa là 20 m.
Cĩ hai phiên bản của chuẩn này được lưu hành trong một thời gian tương đối dài là RS232B và RS232C. Hiện nay thì hầu như chỉ cịn tồn tại chuẩn RS232C, hay thường được gọi ngắn gọn là RS232. Ở Tây Âu, người ta cịn gọi chuẩn này là V24.
Việc thiết kế sử dụng cổng RS232 cũng tương đối dễ dàng đặc biệt khi chọn chế độ hoạt động khơng đồng bộ và tốc độ truyền dữ liệu thấp chẳng hạn như trong khoảng 110 đến 1200 baud.
Các mạch điện tích hợp cả bộ phát và bộ nhận RS232 đã được các nhà sản xuất khác nhau thiết kế và chế tạo, ví dụ như Motorola, National Semiconductors. Các chip bộ phát/ bộ đệm RS232 tiếp nhận mức điện áp TTL ở ngõ vào và biến đổi thành mức dành riêng cho RS232 để truyền. Các bộ nhận RS232 làm việc theo nguyên tắc ngược lại : tiếp nhận tín hiệu lối vào theo tiêu chuẩn RS232 và biến đổi các tín hiệu sang mức TTL tương ứng. Các bộ phận này thường nằm trên một bản mạch chính hay trên một card vào/ ra, nghĩa là ở phía sau của cổng RS232. ♦ Các đặc trưng về điện :
Chuẩn RS232 đầu tiên ngay từ khi ra đời đã mang vẻ lỗi thời của các chuẩn TTL. Lý do là chuẩn RS232 vẩn sử dụng các mức điện áp tương thích TTL để mơ tả các mức logic 0 và 1, giống như trường hợp cổng song song của máy in. Ngồi mức điện áp, tiêu chuẩn này cũng cố định các giá trị trở kháng tải được đấu vào bus của bộ nhận và các trở kháng ra của bộ phát /bộ đệm (drivers).
Hình 3.1Các mức điện áp của chuẩn RS232
Trong phiên bản cũ hơn, RS232B, mức logic1 là một điện áp bất kỳ, trong phạm vi từ -5 đến -25V, trong khi mức logic 0 là bất cứ mức điện áp nào nằm trong khoảng từ +5V đến +25V. Các mức điện áp trong phạm vi -3V đến +3V là trạng thái chuyển tiếp, trong khi các phạm vi từ ±3 đến ±5V khơng được xác định và sẽ dẫn đến các kết quả khơng thể dự tính trước nếu như được sử dụng, tình trạng này đã xảy ra trong các hệ thống được thiết kế sơ sài.
Các đặc trưng điện của tiêu chuẩn RS232 quy định cụ thể điện áp cực đại và cực tiểu của các mức logic 0 và 1. Mức điện áp bằng 0V ở bộ nhận được hiểu như việc đường truyền bị đứt hay xảy ra chập mạch.
Trong chuẩn RS232, để cĩ được tốc độ truyền dữ liệu nhanh hơn người ta đã sử dụng khoảng chênh lệch hẹp hơn giữa mức logic 0 và 1. Các giới hạn trên đối với mức logic 0 và 1 là ±12V chứ khơng dùng giới hạn ±25V như trong chuẩn RS232B. Nếu khơng cĩ các xung xuất hiện trên đường dẫn thì mức điện áp tương đương với mức HIGH, tức là -12V
Ngồi việc thu hẹp giới hạn điện áp, chuẩn RS232 mà ngày nay đang áp dụng cịn cố định trở kháng tải trong phạm vi từ 3000 đến 7000Ω, và trở kháng ra của bộ đệm thấp hơn tiêu chuẩn trước đĩ. Đồng thời bộ đệm phải duy trì một tốc độ tăng điện áp (Slow Rate) bằng 30V trong một micro giây (30V/µs).
♦ Các loại đầu nối trên máy tính :
Hầu hết các máy tính cá nhân được chế tạo gần đây đều cĩ hai cổng nối tiếp RS232, đĩ là cổng COM1 và COM2. Cĩ hai kiểu đầu nối sử dụng cho cổng nối tiếp RS232 là đầu nối loại 25 chân và đầu nối loại 9 chân. Đa số các máy tính
hiện đại hiện nay thì đều dùng loại đầu nối 9 chân. Hình 2.3 giới thiệu cấu tạo, hình dáng của hai loại cổng nối tiếp phục vụ chuẩn RS232 :
Hình 3.2: Sắp xếp chân ở cổng nối tiếp của
Tiêu chuẩn RS232 quy định rõ việc sử dụng đầu nối thống nhất để tất cả các sản phẩm đều tương thích với nhau. Vì vậy thứ tự và chức năng của các chân đã được quy định rất cụ thể và phải tuân thủ một cách nghiêm ngặt. Để dễ dàng nhận ra thứ tự các chân, bên cạnh các chân đều cĩ in rõ số thứ tự trên phần nhựa của phích cắm cũng như ổ cắm. Nhận xét này cần được lưu ý khi kiểm tra cáp nối hoặc thứ tự hàn một cáp mới.
Chức năng các chân được cho trên bảng 2.3 sau đây :
Loại 25 chân Loại 9 chân
Tên Viết tắt Chức năng
1 - Frame
Ground (Đất- Vỏ máy)
FG Chân này thường được nối với vỏ bọc kim của dây cáp, với vỏ máy, với đai bao ngồi đầu nối hay nối đất thật sự.
2 3 Transmit Data (Truyền dữ liệu) TXD ⇐
Dữ liệu được gửi từ DTE (máy tính hoặc thiết bị đầu cuối) tới DCE qua đường dẫn TD.
3 2 Receive
Data (Nhận
RXD Dữ liệu được nhận từ DCE tới DTE qua RD
dữ liệu) ⇒ 4 7 Request To Send (Yêu cầu gửi) RTS ⇐
DTE đặt đường dây này lên mức hoạt động khi sẵn sàng tham gia cuộc truyền dữ liệu. 5 8 Clear To Send (Xố để gửi) CTS ⇒
DCE đặt đường này lên mức hoạt động để thơng báo cho DTE là phải sẵn sàng nhận dữ liệu. 6 6 Data Set Ready (Dữ liệu sẵn sàng) DSR ⇒
Tính hoạt động giống với CTS nhưng được kích hoạt bởi DTE khi nĩ sẵn sàng nhận dữ liệu)
7 5 Signal
Ground (Đất của tín hiệu)
SG Tất cả các tín hiệu được so sánh với đất của tín hiệu (GND)
8 1 Data Carrier Detect
DCD ⇒
Phát hiện tín hiệu mang dữ liệu
20 4 Data Terminal Ready (Đầu cuối dữ liệu sẵn sàng) DTR ⇐
Tính hoạt động giống như RTS nhưng được kích hoạt bởi DCE khi muốn truyền dữ liệu. 22 9 Ring Indicate (Báo chuơng) RI ⇒
Chỉ cho thấy là DEC đang nhận tín hiệu rung chuơng.
Bảng 3.3: Các chân và chức năng trên đầu nối 25 và 9 chân
DCE : Data Communication Equipment, DTE : Data Terminal Equipment
♦ Khuơn mẫu khung truyền
Việc truyền dữ liệu qua cổng nối tiếp thực hiện theo kiểu khơng đồng bộ. Khuơn mẫu dữ liệu với các bit bắt đầu và dừng, như trong hình 2.4. Ta cĩ thể
thấy rõ là tại một thời điểm chỉ cĩ một ký tự được truyền và cĩ một khoảng thời gian phân cách giữa chúng. Khoảng thời gian trì hỗn này thực chất là khoảng thời gian hoạt động khơng hiệu quả và được đặt ở mức logic cao (-12V). Bộ truyền gửi Start bit để thơng báo cho bộ nhận biết sẽ cĩ một ký tự được gửi đến trong lần truyền bit tiếp theo. Bit Start này luơn ở mức 0. Tiếp theo, 5,6 hay 7 bit dữ liệu được gửi dưới dạng mã ASCII, rồi đến là một bit chẵn lẻ và cuối cùng là 1, 1.5 hay 2 bit dừng (Stop bit). Hình 2.5 thể hiện một khuơn dạng khung truyền một ký tự “A” và sử dụng tính chẵn lẻ là lẻ. Khoảng thời gian phân cách một bit đơn quy định tốc độ truyền. Cả bộ truyền và bộ nhận phải được đặt cùng khoảng thời gian bit. Tín hiệu giữ nhịp cho cả hai bên đặt độ kéo dài cho khoảng cách này. Việc thiết lập đồng bộ chỉ mang tính tương đối để bộ truyền và bộ nhận cĩ tốc độ xấp xỉ nhau, lý do là tín hiệu mang dữ liệu chỉ xuất hiện trong một khoảng thời gian tương đối ngắn.
Hình 3.4: Truyền thơng theo kiểu khơng đồng bộ
Trên hình 2.5 thể hiện một giản đồ logic khung truyền dữ liệu nối tiếp với 1 start bit, 7 bit data, 1 bit chẵn lẻ, 2 bit dừng, dùng mã hĩa ASCII và tính chẵn lẻ.
Ký tự truyền Ký tự truyền Ký tự truyền
Trạng thài khơng kích hoạt
Stop bit Parity bit Start bit Ký tự ASCII
Hình 3.5: Mức logic và khuơn mẫu khung truyền RS232 Tốc độ baud Ký tự/s 110 300 600 1200 2400 4800 9600 19200 11 30 60 120 240 480 960 19200
Bảng 3.6: Tốc độ bps liên quan với số các ký tự được truyền trong mỗi giây.
Bảng 3.6 minh họa mối quan hệ giữa tốc độ truyền theo bit và số các ký tự được truyền trong mỗi giây (giả sử là 10 bit được truyền cho mỗi ký tự). Tốc độ bit được đo dựa vào số bit được truyền trên mỗi giây.
Ngồi tốc độ bit, cịn cĩ một thuật ngữ khác được sử dụng để mơ tả tốc độ truyền là tốc độ baud. Tốc độ bit phản ánh tốc độ thực tế mà các bit được truyền, trong khi tốc độ baud liên quan với tốc độ mà các phần tử mã hĩa dữ liệu được sử dụng để diễn tả các bit được truyền. Bởi vì một phần tử báo hiệu sự mã hĩa một bit, nên khi đĩ hai tốc độ là đồng nhất. Chỉ trong các modem do cĩ thêm quá trình biến đổi nên tốc độ bit khác với tốc độ baud
♦ Phân chia khoảng thời gian trên luồng bit:
Truyền thơng khơng đồng bộ là kiểu truyền thơng với các bit start/ stop và cả bộ truyền lẫn bộ nhận phải được thiết lập với cùng khoảng thời gian truyền một bit hay nĩi ngắn gọn là khoảng thời gian bit. Một bit start xác định vị trí bắt đầu
cuộc truyền và luơn luơn là mức logic thấp (LOW). Tiếp theo, bit cĩ trọng số nhỏ nhất (LSB) được gửi đi rồi đến phần cịn lại của các bit ký tự mã ASCII 7 bit. Sau đĩ, bit parity được gửi đi và kế tiếp là các bit dừng. Khoảng thời gian thực tế để truyền mỗi bit liên quan với tốc độ baud và cĩ thể được quy định bằng cách sử dụng cơng thức sau:
Khoảng thời gian bit =Ġ[s]
Chẳng hạn, nếu tốc độ baud là 9600 baud (hay bps) thì chu kỳ thời gian cho mỗi bit gửi là (1/9600)s hay 104µs. Bảng 2.4 chỉ ra mối liên hệ giữa một vài khoảng thời gian bit với tốc độ baud. Một ví dụ về các mức điện áp và các khoảng thời gian bit khi truyền ký tự mã ASCII “V” được mơ tả trên hình 2.12.
Tốc độ baud Thời gian bit
1200 2400 9600 19200 833 417 104 52
Bảng 3.7: Khoảng thời gian bit cĩ liên quan với tốc độ baud