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à PC còn đợc gọi là cổng COM1, COM2. Qua cổng nối tiếp có thể ghép nối chuột, modem, bàn phím... và đợc ứng dụng rất nhiều trong các kỹ thuật đo lờng và điều khiển. Số lợng và chủng loại đợc ghép nối qua cổng nối tiếp đứng hàng đầu trong số các khả năng phối ghép với máy tính. u điểm chính của phơng pháp ghép nối này là sử dụng hai đờng dây độc lập để truyền và nhận tín hiệu, do đó giảm thiểu đợc chi phí khi lắp đặt và hạn chế tối đa nhiễu do các tín hiệu khác gây ra đồng thời tín hiệu có khả năng truyền xa hơn rất nhiều so với phơng pháp truyền song song. Tuy nhiên, phơng pháp này cũng có nhợc điểm là tốc độ truyền dữ liệu thấp do dữ diệu đợc truyền theo từng bit. Phiên bản giao diện nối tiếp RS232 đang đợc sử dụng rộng rãi nhất hiện nay là RS232C, thờng đợc gọi là chuẩn RS232 hay chuẩn V24.
Các kỹ thuật đặc trng của giao diện nối tiếp RS232
Giao diện nối tiếp RS232 sử dụng 9 chân tín hiệu, tuy nhiên trên thực tế có hai cổng giao diện nối tiếp thờng đợc dùng là cổng 9 chân và cổng 25 chân, trong đó cổng 9 chân là cổng đang đợc sử dụng phổ biến nhất hiện nay.
Hình 2.33 : Sơ đồ chân của cổng giao diện nối tiếp RS232
Chức năng và vị trí của từng chân áp dụng cho cả hai loại cổng 9 chân và 25 chân đợc trình bầy chi tiết trong bảng 2.37.
Bảng 2.37 : Vị trí và chức năng tơng ứng của các chân
Cổng
9 chân 25 chânCổng Tên chân Chức năng I/O
1 8 Data Carier Detect (DCD) Phát hiện có cáp dẫn Input
2 3 Receive Data (RxD) Nhận dữ liệu Input
3 2 Transmit Data (TxD) Phát dữ liệu Output
4 20 Data Terminal Ready (DTR) Tín hiệu sẵn sàng Output
5 7 Gound (GND) Nối 0V
6 6 Data Set Ready (DSR) Sẵn sàng nhận dữ liệu Input
7 4 Request To Send (RTS) Yêu cầu phát dữ liệu Output
8 5 Clear To Send (CTS) Yêu cầu nhận dữ liệu Input
9 22 Ring Indicator (RI) Báo máy chủ đợc goi Input
• Tốc độ truyền dữ liệu
Do phơng thức trao đổi dữ liệu theo giao diện nối tiếp RS232 đợc thực hiện theo từng bit. Dữ liệu đợc chuyển từ dạng song song sang dạng nối tiếp ở đầu phát để thực hiện truyền nối tiếp từng bit, sau đó dữ liệu đợc chuyển ngợc lại từ dạng nối tiếp sang dạng song song ở phía đầu thu. Công việc này đợc thực hiện thông qua vi mạch nhận phát không đồng bộ vạn năng UART, đợc tích hợp trong các àC sử dụng giao diện nối tiếp RS232. Chính vì điều này làm cho ph- ơng pháp trao đổi dữ liệu theo chuẩn RS232 có tốc độ truyền dữ liệu xác định, điều này có nghĩa là thiết bị nhận và thiết bị phát đều phải làm việc trên cùng một tần số (cùng tốc độ Baud). Các giá trị tốc độ truyền dữ liệu có thể đợc sử dụng trong thực tế là : 300, 600, 1.200, 2.400, 4.800, 9.600, 19.200 và 115.200 baud.
Hình 2.34 : Dạng thức truyền 1 byte dữ liệu theo chuẩn RS232
• Định dạng khuôn dữ liệu.
Trong phơng pháp truyền không đồng bộ, dữ liệu đợc đồng bộ theo từng ký tự. Do đó, ký tự cần truyền phải đợc gắn thêm 1 bit Start để báo bắt đầu ký tự và 1 hoặc 2 bit Stop để báo kết thúc ký tự. Vì mỗi ký tự đợc nhận dạng một cách riêng biệt nên giữa các ký tự truyền đi có thể có khoảng cách về thời gian.
Tuỳ thuộc vào loại mã đợc sử dụng trong khi truyền, độ dài của mã ký tự có thể là 5, 6, 7 hay 8 bit. Ngoài ra, ngời sử dụng có thể tuỳ chọn có hay không có 1 bit Parity để kiểm tra lỗi có thể xuất hiện trong quá trình truyền dữ liệu. Nh vậy, để truyền đi một ký theo phơng pháp không đồng bộ thì ngoài những
khung dữ liệu cho ký tự đó, vì thế phơng pháp truyền này tuy đơn giản nhng có hiệu xuất không cao.
• Các phơng pháp trao đổi thông tin giữa PC và thiết bị ngoại vi
Truyền một chiều (Simplex) : Dữ liệu chỉ đợc truyền một chiều từ PC ra hoặc vào PC. Trong trờng hợp thứ nhất dữ liệu đợc truyền qua dờng TxD, đờng RxD không đợc nối. Thiết bị ngoại vi không sử dụng đờng RTS. Tín hiệu DCD luôn ở trạng thái không tích cực vì thiết bị ngoại vi chỉ nhận dữ liệu. Tín hiệu DSR luôn ở trạng thái tích cực.
Truyền hai chiều riêng biệt (Half-duplex) : Dữ liệu đợc truyền theo cả hai chiều giữa PC và thiết bị ngoại vi. Trong trờng hợp này chỉ có đờng TxD hoặc RxD làm việc tại một thời điểm. Tín hiệu bắt tay RTS và CTS đợc sử dụng. Néu PC muốn truyền dữ liệu nó đa tín hiệu RTS lên trạng thái tích cự và đợi thiết bị ngoại vi trả lời qua tín hiệu CTS. Nếu thiết bị ngoại vi muốn truyền dữ liệu nó đa tín hiệu DCD về PC, tín hiệu DSR không đợc sử dụng. PC báo sẵn sàng nhận dữ liệu qua DTR và cho phép hay cấm thiết bị ngoại vi (PC luôn đảm nhiệm vai trò chủ trong quá trình trao đổi dữ liệu). Hớng truyền dữ liệu đợc thay đổi bằng cách chuyển hai tín hiệu RTS và CTS.
Truyền hai chiều đồng thời (Full-duplex) : Dữ liệu đợc truyền theo cả hai chiều cùng một lúc. Trong trờng hợp này, PC và thiết bị ngoại vi có thể đồng thời đảm nhiệm chức năng máy phát và máy thu tại cùng một thời điểm. Tín hiệu RTS và CTS không có ý nghĩa, DTR đảm nhiệm việc chuyển mạch.
2.1.3.2. IC Max232.
Hiện nay, trên các PC đều đợc trang bị hai cổng giao diện tuần tự RS232 hay còn gọi là COM1 và COM2. Khi PC muốn trao đổi thông tin với các thiết bị ngoại vi thông qua giao diện tuần tự RS232, vấn đề đặt ra là các thiết bị ngoại vi cần phải có một bộ UART đảm nhiệm việc truyền dữ liệu qua giao diện tuần tự. Tuy nhiên, giao diện RS232 cần điện thế tín hiệu cao hơn mức TTL (0V và 5V) để truyền tín hiệu đợc xa. Tham số điện áp tín hiệu của giao diện RS232 đợc quy định nh sau :
Mức logic 0 : + 3 đến + 25V (gọi là Space)
Mức logic 1 : - 3 đến - 25V (gọi là Mark)
Mọi điện áp tín hiệu giữa mức - 3V và + 3V đềukhông có ý nghĩa. Vì các mức điện áp bên trong các thiết bị ngoại vi chỉ có điện thế từ 0 đến 5V (TTL) hay thấp hơn, nên tín hiệu từ bộ UART của thiết bị ngoại vi ra giao diện RS232 và ngợc lại phải qua bộ chuyển mức tín hiệu. IC Max232 là một bộ chuyển mức tín hiệu đợc sử dụng nhiều nhất hiện nay, vi mạch này chỉ cần nguồn nuôi 5V. Bộ bơm điện tích bên trong vi mạch có khả năng tạo điện áp tín hiệu mức + 10V và - 10V từ5V.
Hình 2. 35 : Sơ đồ chân và sơ đồ nguyên lý của IC Max232
Các thông số của vi mạch
Điện áp nguồn nuôi : VCC = 5V
Công suất tiêu thụ : 842 mW
Dải nhiệt độ làm việc : 00C - 700C
Từ sơ đồ chân và sơ đồ nguyên lý của IC Max232 có thể thấy vi mạch này cung cấp hai bộ chuyển mức điện áp cho mỗi chiều, đó là các cặp chân tín hiệu (T1IN,T1OUT), (T2IN,T2OUT), (R1IN,R1OUT) và (R2IN,R2OUT). Ngoài ra, để IC Max232 có thể hoạt động đợc nó cần 4 tụ điện ngoài sử dụng trong bộ bơm điện tích, các tụ này có điện dung 10uF hoặc thấp hơn và đợc nối mạch theo sơ đồ nguyên lý.
Khi ghép nối IC Max232 với vi mạch thu phát không đồng bộ vạn năng UART và cổng giao diện nối tiếp RS232, chân tín hiệu TxD của UART có thể đợc nối trực tiếp tới chân 11 (T1IN) hoặc chân 10 (T2IN) của IC Max232. Trong khi đó bộ đệm ở lối ra của IC Max232 trên chân 14 (T1OUT) hoặc chân 7 (T2OUT) đợc nối trực tiếp với chân 3 (RxD) của cổng giao diện nối tiếp RS232. Tơng tự, chân tín hiệu RxD của UART có thể đợc nối trực tiếp tới chân 12 (R1OUT) hoặc chân 9 (R2OUT) của IC Max232, đồng thời chân 13 (R1IN) hoặc chân 8 (R2IN) của IC Max 232 đợc nối trực tiếp tới chân 2 (TxD) của cổng giao diện nối tiếp RS232.