Đặc tính

Một phần của tài liệu giáo trình nghề sửa chữa điện tử công nghiệp (Trang 60)

5. VI MẠCH GIAO TIẾP NỐI TIẾP LẬP TRÌNH ĐƯỢC 8251A

5.1Đặc tính

8251A là một thiết kế cải tiến USART chuẩn cơng nghiệp Intel 8251. Vi mạch 8251A làm việc với một dải rộng các họ vi xử lý của Intel và vẩn duy trì sự tương thích với 8251. Ngồi các đặc điễm giống như 8251, 8251A cịn cĩ thêm các tính năng khác như sau:

• 8251A cĩ hai đường dử liệu đệm kép với các thanh ghi điều khiển riêng biệt cho dử liệu vào và dử liệu ra nhờ đĩ làm đơn giản chương trình điều khiển và giãm chi phí về CPU.

Hình 4.35 Write timing Hình 4.36 Read timing

• Trong chế độ khơng đồng bộ, bộ nhận dử liệu sẻ dị và quản lý “break” một cách tự động giúp giãm tải cho CPU.

• Một sự khởi tạo Rx tốt hơn cĩ tác dụng ngăn bộ nhận từ việc khởi động khi trong trạng thái “break”. Khả năng ngăn các ngắt khơng mong muốn từ một USART khơng cịn kết nối.

• Khi kết thúc quá trình phát, đường TxD luơn trở về trạng thái “mark” trừ khi SBRK được lập trình.

• Mạch logic cho phép Tx cải tiên ngăn một lệnh khơng cho phép Tx qua việc dừng quá trình phát cho đến khi dử liệu ghi trước đĩ đã được phát. Mạch logic này cũng ngăn bộ phát chuyển sang off trong khoảng giữa một từ.

• Khi tính năng dị đồng bộ ngồi được lập trình thì mạch dị đồng bộ bên trong mất hiệu lực và trạng thái dị đồng bộ ngồi được cung cấp qua một FF. FF này sẻ tự xĩa ngay khi một trạng thái được đọc.

• Khả năng phát hiện mất đồng bộ được tối thiểu hĩa bằng cách lập trình đồng bộ ký tự kép. Các ký tự được dị liên tục và cũng bằng cách xĩa thanh ghi Rx bất cúa khi nào lệnh entr hunt được tạo trong chế độ đồng bộ.

• Khi nào 8251A cịn khơng được chọn thì tín hiệu RD và WR sẻ khơng ảnh hưởng đến hoạt động nội bộ của vi mạch.

• Trạng thái của 8251A cĩ thể được đọc bất kỳ lúc nào nhưng việc cập nhật trạng thái sẻ bị cấm trong khi đọc trạng thái.

• 8251A cĩ đặc tính AC, DC và khả năng chống nhiểu logic rất tốt nên phạm vi hoạt động và tốc độ làm việc cũng cao hơn

• Tốc độ baud đồng bộ từ DC đến 64 K

5.2 Mơ t chc năng

Tổng quát

Giống như các thiết bị I/O khác trong hệ thống máy tính, cấu hình chức năng của 8251A được lập trình bằng phần mềm hệ thống nhằm đạt độ linh hoạt đến mức tối đa. 8251A hổ trợ hầu hết các cơng nghệ dử liệu nối tiếp bao gồm cả IBM “bi-syn”.

Trong lỉnh vực truyền thơng, một thiết bị giao tiếp phải biến đổi dử liệu song song trong hệ thống sang dử liệu nối tiếp khi phát và biến đổi tín hiệu nối tiếp thu được thành song song cho hệ thống. Thiết bị giao tiếp cung phải cĩ khả năng xĩa, chèn các bít hoặc ký tự sao cho phù hợp với yêu cầu truyền thơng. Thực chất là thiết bị giao tiếp xem như khơng hiện diện đối với CPU trong các thao tác vào ra dử liệu hệ thống dạng byte.

Đệm bus dử liệu

Một bộ đệm 8 bít, hai chiều 3 trạng thái được dùng để giao tiếp giữa 8251A với bus dử liệu hệ thống. Dử liệu được phát hoặc thu trong lúc thực thi lệnh INPUT hoặc OUTPUT của CPU. Từ điều khiển, từ lệnh và thơng tin trạng thái cũng được truyền qua bộ đệm bus dử liệu. các trạng thái lệnh, các thanh ghi dử liệu vào, dử liệu ra được tách ra, các thanh ghi 8 bít đang truyền thơng với bus hệ thống qua bộ đệm bus dử liệu.

Khối chức năng này nhận các tín hiệu vào từ bus điều khiển hệ thống và tạo ra các tín hiệu điều khiển cho tồn bộ hoạt động. Nĩ cịn bao gồm thanh ghi điều khiển và thanh ghi lệnh, các thanh ghi này lưu trử các dạng thức điều khiển khác nhau phục vụ cho việc định nghĩa chức năng của thiết bị.

RESET

Mức cao ở ngỏ vào này sẻ cưởng bức 8251A vào trạng thái nghĩ, thiết bị sẻ duy trì trạng thái này cho đến khi cĩ một tập hợp các từ điều khiển mới được ghi vào 8251A để xác định chức năng của nĩ, bề rộng xung reset ít nhất phải bằng 6 chu kỳ đồng hồ. Một xung reset cũng đưa thiết bị đi vào trạng thái nghĩ

Hình 4.39 Bộđệm dử liệu và chức năng đọc/ghi

CLK (Clock)

Ngỏ vào CLK được dùng để tạo xung định thời cho thiết bị và thường được nối đến ngỏ ra phase 2 (TTL) của khối dao động đồng hồ. Khơng cần tín hiệu vào hoặc tín hiệu ra bên ngồi tham chiếu đến CLK nhưng tần số của CLK phải lớn hơn 30 lần tốc độ bít khi thu hoặc phát dử liệu.

WR (Write)

Mức thấp ở ngỏ vào này cho 8251A biết là CPU đang ghi dử liệu hoặc từ điều khiển vào 8251A.

RD (Read)

Mức thấp ở ngỏ vào này báo cho 8251A biết là CPU đang đọc dử liệu hoặc thơng tin trạng thái của 8251A.

D

C/ (Control/Data) (adsbygoogle = window.adsbygoogle || []).push({});

Tín hiệu này kết hợp với WR và RD báo cho 8251A biết dử liệu trên bus là từ điều khiển hoặc thơng tin trạng thái.

1 – CONTROL/STATUS; 0 = DATA. CS (Chip select)

Mức thấp ở ngỏ vào này dùng để chọn 8255A. Thao tác đọc hoặc viết sẻ khơng xảy ra nếu vi mạch khơng được chọn. Khi CS mức cao, bú dử liệu bị treo và các lệnh đọc ghi khơng ảnh hưởng.

Điều khiển MODEM

8251A cĩ một tập hợp các tín hiệu điều khiển vào và ra. Các tín hiệu này được dùng nhằm đơn giản hĩa yêu cầu giao tiếp với hầu hết các modem. Ngồi cơng dụng thơng thường các tín hiệu điều khiển modem cịn được dùng cho các chức năng khác khi cần thiết.

DSR (Data Set ready)

Đây là một ngỏ vào cơng dụng chung, cổng vào đảo bít 1, giá trị của nĩ cĩ thể được thử bởi CPU bằng một thao tác đọc trạng thái. Ngỏ vào DSR thường được dùng để kiểm tra trạng thái của modem

DTR (Data Terminal Ready)

Đây là một ngỏ ra cơng dụng chung, cổng ra đảo bít 1, nĩ cĩ thể được đưa về mức thấp bằng cách lập trình bít tương ứng trong từ điều khiển lệnh. Ngỏ ra này thường được dùng để điều khiển modem.

RTS (Request to Send)

Đây là ngỏ ra cơng dụng chung, cổng ra đảo bít 1, cĩ thể được đưa về mức thấp bằng cách lập trình bít tương ứng trong từ điều khiển lệnh. Ngỏ ra này thường được dùng để điều khiển modem.

CTS (Clear to Send)

Mức thấp ở ngỏ vào này cho phép 8251A phát dử liệu nối tiếp nếu bít cho phép Tx trong byte lệnh được đặt bằng 1. Nếu một trong hai bít cho phép Tx hoặc RTS off trong khi Tx đang hoạt động thì Tx sẻ phát tất cả dử liệu trong USART đã được ghi vào trước lệnh ngăn Tx trước khi tắt máy.

Bộđệm phát

Bộ đệm phát nhận dử liệu song song từ bộ đệm bus dử liệu, biến đổi thành chuổi bít nối tiếp, chèn thêm vào các ký tự hoặc các bít thích hợp (theo yêu cầu truyền thơng) và xuát một luịng dử liệu nối tiếp tổng hợp ra chân TxD tại cạnh xuống của TxC , bộ phát bất đầu phát trong lúc đang được cho phép nếu CTS = 0. Đường TxD sẻ được giử ở trạng thái mark khi reset, khi bít cho phép Tx hoặc CTS off hoặc bộ phát rổng.

Điều khiển phát

Khối điều khiển phát quản lý tất cả các thao tác liên quan đến việc phát dử liệu nối tiếp. Nĩ thu nhận và tạo ra các tín hiệu bên trong cũng như bên ngồi để hồn thành nhiệm vụ này.

TxRDY (Transmitter Ready)

Là tín hiệu ra báo cho CPU biết bộ phát sẳn sàng nhận một ký tự dử liệu. Chân ra này cĩ thể được dùng như một ngắt hệ thống. Do nĩ bị che bởi TxEnable hoặc đối với thao tác thăm dị CPU cĩ thể kiểm tra TxRDY bằng cách dùng một lệnh đọc trạng thái. TxRDY bị xĩa tự động bởi cạnh lên của WR khi một ký tự dử liệu được nạp từ CPU.

Lưu ý rằng khi dùng phương pháp thăm dị, bít trạng thái TxRDY khơng bị che bởi TxEnable nhưng sẻ chỉ cho biết trạng thái empty/full của thanh ghi nhập liệu Tx.

TxE (Transmitter Empty)

Khi 8251A khơng cĩ một ký tự nào để gởi, ngỏ ra TxEmty sẻ lên mức cao. Ngỏ này reset khi nhận một ký tự từ CPU nếu bộ phát được cho phép. TxE vẩn duy trì mức cao

khi bộ phát khơng được cho phép. TxE cĩ thể được dùng để báo chế độ phát kết thúc cho CPU biết để chuyển hướng trong chế độ truyền thơng song cơng bán phần.

Trong chế độ đồng bộ, một mức cao ở ngỏ ra này cho biết một ký tự đã được nạp và là ký tự đồng bộ hoặc các ký tự ở trên hoặc đang tự động được phát. TxE khơng xuống thấp khi các ký tự đồng bộ đang dịch chuyển.

TxC (Transmitter Clock)

TxC điều khiển tốc độ phát ký tự. Trong chế độ đồng bộ tốc độ baud bằng với tần số của TxC . Trong chế độ khơng đồng bộ, tốc độ baude là một phần của tần số TxC và được xác định bởi lệnh chọn chế đơ, tỉ số này cĩ thể là: 1, 1/16 hoặc 1/64.

Ví dụ:

Nếu tốc độ baud là 110 baud TxC là 110 Hz ở chế độ 1x TxC là 1,72 KHz ở chế độ 16x TxC là 7,04 KHz ở chế độ 64x

Cạnh xuống của TxC dịch chuyển dử liệu ra khỏi 8251A

Bộđệm thu (adsbygoogle = window.adsbygoogle || []).push({});

Bộ nhận biến đổi dử liệu nối tiếp nhận được thành song song, kiểm tra các bít hoặc các ký tự bái lổi truyền thơng và sau đĩ gởi một ký tự hợp thành đến CPU. Dử liệu nối tiếp được nhập vào chân RxD và đồng bộ với cạnh lên của RxC

Điều khiển thu

Khối chức năng này quản lý tất cá các thao tác liên quan đến việc thu nhận dử liệu. Khối này gồm cĩ các tính năng sau đây:

Mạch khởi tạo RxD ngăn lổi cho 8251A từ một ngỏ vào khơng xử dụng đối với các đường dử liệu tích cực mức thấp trong điều kiện hở mạch. Trước khi bắt đầu nhận ký tự nối tiếp từ đường RxD, đầu tiên một giá trị “1” hợp lệ phải được nhận ra tín hiệu reset thiết bị. Mỗi lần điều này được xác định, một sự tìm kiếm mức thấp hợp lệ (start bit) được

Hình 4.31 Sơđồ khối modem, bộđệm phát và chức năng điều khiển

cho phép. Tính năng này chỉ hoạt động trong chế độ khơng đồng bộ và chỉ làm một lần cho mỗi lần reset.

Mạch dị lổi bít khởi động ngăn lổi khởi động do nhiểu logic bằng cách trước tiên dị cạnh xuống và sau đĩ nhấp trung tâm của start bít (RxD = 0)

Quá trình tìm lổi chẳn lẻ sẻ thiết lập bít tương ứng.

Bít trạng thái lổi khuơn dạng được đặt nếu khơng cĩ stop bít ở cuối byte dử liệu (chế độ khơng đồng bộ).

RxRDY (Receiver Ready)

Ngỏ ra này cho biết 8251A chứa một ký tự sẳn sàng chuyển vào CPU. RxRDY cĩ thể được nối đến cấu trúc ngắt của CPU hoặc, đối với hoạt động thăm dị, CPU cĩ thể kiểm tra RxRDY bằng lệnh đọc trạng thái.

RxRDY được giữ ở trạng thái reset khi RxEnable mức thấp. Trong chế độ khơng đồng bộ để đặt RxRDY, bộ thu phải được cho phép để tìm start bít và tạo thành một ký tự đầy đủ sau đĩ chuyển đến thanh ghi dử liệu ra. Trong chế độ đồng bộ để đặt RxRDY, bộ thu phải được cho phép và một ký tự phải được tạo ra sau đĩ chuyển đến thanh ghi dử liệu ra.

Việc đọc sai ký tự nhận được từ thanh ghi dử liệu ra Rx trước khi tạo ký tự Rx kế tiếp sẻ gây ra lổi tràn và ký tụ trước đĩ sẻ bị ghi tràn và mất. Nếu dử liệu Rx đang được đọc bởi CPU trong khi việc truyền nội bộ đang xảy ra, lổi tràn sẻ được thiết lập và ký tự củ bị mất.

RxC (Receiver Clock)

RxC điều khiển tốc độ nhận ký tự. Trong chế độ đồng bộ, tốc độ baud bằng tần số của RxC . Trong chế độ khơng đồng bộ tốc độ baud là một phần của tần số RxC , hệ số này cĩ thể là 1, 1/16, 1/64 và được chọn bởi lệnh chọn chế độ. Ví dụ: Với tốc độ baud là 300 baud thì

RxC là 300 Hz ở chế độ 1x RxC là 4800 Hz ở chế độ 16x RxC là 19,2 KHz ở chế độ 64x Với tốc độ baud là 2400 baud thì

RxC là 2400 Hz ở chế độ 1x RxC là 38,4 KHz ở chế độ 16x RxC 153,6 KHz ở chế độ 64x

Dử liệu được lấy mẫu và đưa vào 8251A tại cạnh lên của RxC

Chú ý: Trong hầu hết các hệ thống truyền dử liệu, 8251A sẻ quản lý cảc hai thao tác thu và phát của một liên kết đơn. Do tốc độ baud khi thu và phát bằng nhau, cả hai tín hiệu RxC và TxC cũng phải cĩ tần số bằng nhau và cĩ thể nối chung đến một nguồn tạo xung tốc độ baud duy nhất nhằm làm đơn giản việc giao tiếp.

SYNDET (SYNC Detect) / BRKDET (Break Detect)

Chân này được dùng trong chế độ đồng bộ và cĩ thể được lập trình là ngỏ vào hoặc ngỏ ra bằng từ điều khiển. Nĩ reset chế độ ra mức thấp khi RESET. Khi được xử dụng là ngỏ ra (chế độ đồng bộ nội), mức cao ở chân SYNDET cho biết 8251A đã định vị ký tự SYNC trong chế độ thu. Nếu 8251A được lập trình để dùng các ký tự đồng bộ kép (bi-sync) thì SYNDET sẻ lên mức cao ở khoảng giữa của bít cuối cùng trong ký tự đồng bộ thứ hai. SYNDET bị xĩa tự động bởi lệnh đọc trạng thái.

Khi được dùng làm ngỏ vào (chế độ dị đồng bộ ngồi). Một xung dương sẻ điều khiển 8251A bắt đầu quá trình tạo ký tự tại cạnh lên của tín hiệu RxC kế tiếp. Mỗi lần đồng bộ, mức cao của tín hiệu vào cĩ thể khơng cịn cần thiết. Khi chế độ dị đồng bộ ngồi được lập trình, chế độ dị đồng bộ trong sẻ mất hiệu lực.

BREAK (Chỉ ở chế độ khơng đồng bộ)

Ngỏ ra này lên mức cao khi bộ thu cịn ở mức thấp qua hai chuổi stop bít liên tiếp nhau (bao gồm start bít, data bít và parity bít). Bít này cũng cĩ thể được đọc như một bít trạng thái, nĩ chỉ reset khi reset thiết bị hoặc dử liệu Rx trở về trạng thái 1.

Một phần của tài liệu giáo trình nghề sửa chữa điện tử công nghiệp (Trang 60)