H _R am CS# O U T B E #
2.1.2.1 Chức năng và tiêu chuẩn cho cổng nối tiếp
Cổng nối tiếp đảm bảo thông tin nối tiếp giữa hệ vi xử lý với thiết bị ngoại vi. Cơ chế truyền tin nối tiếp được thể hiện trên hình 2.6.
Hình 2.6 Phương thức truyền nối tiếp
Để truyền tin nối tiếp, trước hết, các byte dữ liệu phát (từ CPU) phải được chuyển đổi thành các bit nối tiếp bằng cách thực hiện sự biến đổi vào – song song, ra - nối tiếp. Sau đó nó có thể được truyền qua một đường dữ liệu đơn. Điều này cũng có nghĩa là ở đầu thu cũng phải thực hiện một biến đổi sao cho tín hiệu vào - nối tiếp, ra – song song. Để dữ liệu truyền được xa, việc truyền thông nối tiếp yêu cầu một modem để điều chế (chuyển các
bit 0 và 1 thành tín hiệu âm tần) và sau đó giải điều chế (chuyển tín hiệu âm tần thành các bit 0, 1).
Tiêu chuẩn: để tương thích giữa các thiết bị truyền thông dữ liệu được sản xuất bởi các hãng khác nhau, người ta sử dụng chuẩn giao diện được gọi là RS232. Trong RS232, mức 1 được biểu diễn bởi – 3V đến -25V, mức 0 ứng với điện áp +3V đến +25V. Vì vậy, để kết nối một RS232 bất kỳ đến một hệ logic TTL (hệ vi điều khiển, hệ vi xử lý) ta phải sử dụng các bộ biến đổi điện áp như MAX232 để chuyển đổi các mức logic TTL về mức điện áp RS232 và ngược lại.
Các tín hiệu trong chuẩn phối ghép RS232 (hình 2.7):
- Lúc bắt đầu làm việc DTE1 đưa ra xung /DTR (Data Terminal Ready) = 0 để báo cho DCE1 biết là nó đã sẵn sàng làm việc. Khi bắt đầu làm việc DCE1 đưa ra xung /DSR (Data Set Ready) = 0 để báo cho DTE1 biết là nó đã sẵn sàng thu phát thông tin. Sau đó, DCE1 được điều khiển để phát xung gọi sang phía bên kia để kết nối liên lạc.
- Nếu DTE2 sẵn sàng làm việc, nó sẽ gửi trả lời sang phía bên DTE1 những xung âm tần theo quy ước.
- Khi DTE1 có ký tự cần gửi, nó đưa ra đầu /RTS (Request To Send) = 0. DCE1 sẽ đưa ra /CD (Carrier Detect) = 0 để báo là đường truyền đã thông. Khi DCE1 sẵn sàng nhận dữ liệu để chuyển đi thì nó sẽ đưa ra /CTS (Clear To Send) = 0. Nhận được thông báo này, DTE1 gửi các ký tự sang DCE1 qua đầu phát TxD. Sau khi truyền xong ký tự này, DTE1 đưa ra /RTS = 1 để báo kết thúc. DCE1 cũng kết thúc công việc và đưa ra /CTS = 1 để thông báo.
Hình 2.7 Các tín hiệu trong chuẩn RS232
Để tổ chức đường truyền tin nối tiếp với hệ vi xử lý và để giảm tối đa các mạch phụ thêm ở bên ngoài, công nghệ vi điện tử đã chế tạo ra các vi mạch tổ hợp cỡ lớn LSI lập trình được, có khả năng thực hiện phần lớn các chức năng truyền dẫn và phối ghép với hệ vi xử lý như: IN8250/16450, 8251A USART, Motorola 6850 ACIA… trong đó 8251A [5, tr.206] là một USART được dùng rộng rãi nhất. Khả năng lập trình được của 8251 đã cung cấp một giao tiếp truyền bất đồng bộ khá linh hoạt.
2.1.2.2 Một số đặc điểm của mạch thu phát đồng bộ và dị bộ vạnnăng USART 8251