Bộ truyền nhận không đồng bộ vạn năng 8250

Một phần của tài liệu Bài giảng thiết bị ngoại vi và kĩ thuật ghép nối (Trang 56 - 58)

CHƯƠNG 3 GHÉP NỐI QUA CỔNG NỐI TIẾP

3.3.1. Bộ truyền nhận không đồng bộ vạn năng 8250

UART 8250 (Universal Asynchronous Receiver/Transmitter) đảm nhiệm các chức năng chính:

- Chuyển đổi tín hiệu song song từ CPU thành tín hiệu nối tiếp để truyền ra khỏi

máy tính và chuyển đổi tín hiệu nối tiếp từ ngoại vi thành song song để chuyển

tới CPU.

- Bổ sung các bit: Start, chẵn/lẻ và Stop vào mỗi ký tự để hình thành khung

truyền, đồng thời tách các bit đó ra từ khung truyền nhận được.

- Duy trì trạng thái các bit riêng biệt được phát ra với tốc độ truyền dữ liệu thích

hợp, tính tốn các bit chẵn/lẻ trên từng ký tự nhận và truyền đồng thời thông báo cho các hệ thống biết bất kỳ sai sót đã được phát hiện.

- Thiết lập các tín hiệu bắt tay phần cứng thích hợp và thơng báo trạng thái của

các mạch đó.

UART 8250 là chip cơ bản, hiện nay các chip thông dụng là UART 16450, 16550A, 16750... Cấu trúc và chức năng của chúng dựa trên nền tảng của 8250

Lập trình cho 8250 được thực hiện bằng cách đọc và viết các thanh ghi của nó. Các thanh ghi đó là:

55

Base Address Mode Name +0 (DLAB=0) Write Transmitter Holding Buffer THR

+0 (DLAB=0) Read Receiver Buffer RBR +0 (DLAB=1) Rd/Wr Divisor Latch Low Byte DLL +1 (DLAB=0) Rd/Wr Interrupt Enable Register IER +1 (DLAB=1) Rd/Wr Divisor Latch High Byte DLM +2 Read Interrupt Idendification Register IIR

+2 Write FIFO Control Register FCR

+3 Rd/Wr Line Control Register LCR

+4 Rd/Wr Modem Control Register MCR

+5 Read Line Status Register LSR

+6 Read Modem Status Register MSR

+7 Rd/Wr Scratch Register SCR

PC có 4 cổng nối tiếp là COM1 - COM4 được phân biệt qua các vị trí địa chỉ

trong vùng vào/ ra của PC và các số ngắt tương ứng. Địa chỉ đầu tiên của UART (của thanh ghi đệm truyền / nhận) gọi là địa chỉ cơ sở.

Thông thường địa chỉ cơ sở và IRQ được quy định nhờ các cầu nối (jumper) trên card vào/ra hoặc trên bản mạch chính.

Name Port address IRQ COM 1 3F8h IRQ4

COM 2 2F8h IRQ3 COM 3 3E8h IRQ4 COM 4 2E8h IRQ3

Ta thấy COM 1, 3 và COM 2, 4 đều dùng chung một kênh ngắt, do vậy ở cùng 1 thời điểm chỉ có thể sử dụng 1 phần mềm cho ngắt của 1 trong 2 cổng và chỉ có thể sử

dụng nhiều hơn 2 cổng nối tiếp khi trong chương trình khơng sử dụngngắt

10 thanh ghi trong UART 8250 chia ra làm 3 loại:

 Thanh ghi điều khiển (Control Register): dùng để nhận và thực hiện các lệnh

từ CPU.

 Thanh ghi trạng thái (Status Register): dùng để thông báo cho CPU biết về

trạng thái của UART hay UART đang làm gì?

 Thanh ghi đệm (Buffer Register): dùng để giữ ký tự trong lúc truyền hoặc xử

56

Một phần của tài liệu Bài giảng thiết bị ngoại vi và kĩ thuật ghép nối (Trang 56 - 58)

Tải bản đầy đủ (PDF)

(101 trang)