Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
357,31 KB
Nội dung
Chương GIAO TIẾP NGOẠI VI 8255A PPI 8255A (PROGRAMABLE PARALLEL INTERFACE) I – TỔNG QUÁT: – Bộ đệm truyền liệu: Bộ đệm Bits, chiều, trạng thái dùng để giao tiếp 8255 với CPU Dữ kiện phát hay nhận đệm thực lệnh IN, OUT CPU Các từ điều khiển truyền qua kiện Điều khiển Nhóm A Đệm kiện Kiểm soát đọc ghi Nhóm A Cửa A PA0-DA7 Nhóm A Cửa C Phần cao Nhóm B Cửa C Phần thấp Điều khiển nhóm B I/O Nhóm B Cửa B I/O PC4-PC7 I/O PC0-PO3 I/O PB0-PB7 Hình 3.1 Cấu trúc khối 8255 – Phần kiểm soát đọc ghi: Chức khối kiểm soát tất truyền đạt bên bên từ điều khiển kiện Nó nhận ngõ vào từ tuyến địa điều khiển CPU, phát lệnh cần thiết cho hai nhóm A B CS: ngõ vào = cho phép truyền tin 8255 CPU RD: = cho phép 8255 gởi kiện đến CPU tuyến kiện chủ yếu cho phép CPU đọc kiện từ 8255 WR=0 – CPU từ điều khiển hay kiện 8255 A0 A1 Chọn cửa 0 Cửa A Cửa B Cửa C 1 Cửa điều khiển RESET: =1 xóa ghi bên gồm ghi điều khiển cửa A, B, C mode nhận – Điều khiển nhóm A B: Cấu hình hoạt động nhóm lập trình phần mềm, chủ yếu CPU xuất phát từ điều khiển đến 8255 Từ điều khiển gồm thông tin chế độ (mode), bit set, bit reset, v.v … khởi động cấu hình hoạt động 8255 Thanh ghi từ điều khiển viết vào mà không đọc – Các cửa A, B, C: 8255 gồm cửa A, B C Mỗi cửa gồm bits Các cửa lập trình phần mềm để hoạt động chế độ thích hợp Cửa A: gồm đệm, cài ngõ bits cài ngõ vào bits Cửa B: gồm đệm, cài ngõ bits cài ngõ vào bits Cửa C: đệm cài ngõ bits đệm bits ngõ vào (không cài) Cửa C chia làm phần, phần bits cho điều khiển mode Mỗi phần dùng kết hợp với cửa A hay B tạo nên tín hiệu điều khiển II – MÔ TẢ CHI TIẾT: – Chọn chế độ (Mode): Có chế độ hoạt động thích hợp cho phần mềm: Mode : Vào/ra Mode : Vào/ra “bắt tay” (chỉ cho phép chiều) Mode : Truyền kiện hai chiều Khi RESET, tất cửa thiết lập chế độ nhập (input), tức 24 đường trạng thái Sau RESET 8255 trì chế độ nhập mà không cần khởi động thêm Trong thực chương trình hệ thống, chọn mode cách xuất đến 8255 từ điều khiển Điều cho phép cần 8255 mà phục vụ nhiều kiểu thiết bị ngoại vi Các chế độ cửa A B định nghóa riêng biệt Còn C chia làm hai phần cho hai nhóm tùy yêu cầu định nghóa chế độ cửa A B Ta có từ điều khiển cho 8255 sau: (trang sau) – Đặc tính xóa/thiết lập bit cho cửa C dùng làm tín hiệu trạng thái/điều khiển cho cửa A/B: Ta dùng lệnh OUT xuất từ điều khiển, bit D7 = D D D D D D D D Nhóm B 1:in Cửa C(phần thấp) 0: Mode set flag out 1-active 1:in Cửa B 0:out Chọn chế độ 0:mode 1: mode NhómA Cửa C (phần cao) Cửa A 1: in 0: out 00: mode Choïn mode 01: mode 1X: mode Hình 3.2 1:in 0:out Khi chọn mode cho port A, bit D3, D4, D5 không ý nghóa Lúc cửa A hai chiều, phần cao cửa C làm tín hiệu điều khiển trạng thái cho cửa A (Bitset reset flag), phần lại điều khiển có ý nghóa sau: D D D D D D D D x x x Bit set / Reset 0: Reset 1:set Bit select Bit set / Reset fleg - active 01010101 00110011 00001111 01234567 Hình 3.3 Mỗi lần xuất từ điều khiển đến 8255 với D7 = 0, tác động đến bit cửa C (được chọn Bit select) – Chức kiểm soát ngắt quãng: Khi 8255 lập trình mode hay 2, tín hiệu điều khiển cung cấp dùng để yêu cầu ngắt quãng CPU Tín hiệu yêu cầu ngắt quãng phát từ cửa C bị cấm hay cho phép cách set hay reset flip-flop INTE tương ứng, dùng chức set/reset bit cửa C Chức cho phép CPU cấm hay cho phép thiết bị I/O xác định ngắt quãng CPU mà không làm ảnh hưởng thiết bị khác cấu trúc ngắt quãng III – CHẾ ĐỘ HOẠT ĐỘNG: – Mode (Vào/ra bản) Không có “bắt tay”, kiện ghi đọc cách dơn giản đến phức tạp hay từ cửa Các đặc tính mode 0: cửa bits cửa bits Bất kỳ cửa hay vào Ngõ cài Ngõ vào không cài Cho phép 16 dạng vào / mode Ví dụ : Từ điều khiển 83h xáx định cửa A ra, B vào Phần cao C : ra, phần thấp C : vào – Mode (Vào/ra có bắt tay): Ở mode 1, cửa A B dùng đường cửa C để phát hay nhận tín hiệu bắt tay Định nghóa tín hiệu bắt tay cho phần nhập: STB (Strobe Input): mức thấp ngõ vào nạp liệu vào 8255 IBF (Input Buffer Full): ngõ =1 để thông báo kiện nạp vào mạch cài nhập Nói cách khác, mức thấp STB thiết lập IBF = 1, IBF bị xóa cạnh lên RD * INTR (Interput Request): ngõ = để yêu cầu ngắt khoảng CPU, INTR set STB = IBF = 1, INTR = INTR bị reset cạnh xuống RD INTR A kiểm soát bit set / reset PC INTR B kiểm soát bit set / reset PC Hình 3.4 Định nghóa tín hiệu điều khiển phần xuất: OBF (Output Buffer Full FF) Ngã xuống để báo CPU ghi thông tin cửa xác định OBF FF set cạnh lên xung WR từ CPU bị reset ACK = ngoại vi (tức mức không tích cực) *ACK (Acknowledge Input) Mức thông báo cho 8255 biết thông tin từ cửa A hay B nhận ngoại vi *INTR (Interput Request) Mức ngõ dùng để yêu cầu ngắt quãng CPU ngoại vi nhận kiện phát CPU INTR set ACK = 1, OBF = INTE = INTR bị xóa cạnh xuống xung WR INTE A kiểm soát bit set / reset PC INTE B kiểm xoát bit set / reset PC Hình 3.5 Các kết hợp mode 1: Cửa A : vào, B : từ điều khiển Cửa A : ra, B : vào từ điều khiển 1: in PC 4,5 0: out 1 1/ x x x 1 1/0 1 x 1: in PC 4,5 0: out Hình 3.6 – Mode : Xuất nhập chiều bắt tay Các đặc tính mode 2: * Chỉ dùng cho nhóm A * cửa chiều bits (A) cửa điều khiển bits (C) cho cửa A * Cả / vào có cài Định nghóa tín hiệu điều khiển xuất nhập chiều: * INTR (Interput Request): Mức ngõ báo cho CPU biết yêu cầu ngắt khoảng cho phép nhập hay xuất (chung) * Phép xuất : OBF (Output Buffer Full FF) output OBF xuống để báo cho ngoại vi biết CPU ghi kiện cửa ACK (Acknowledge) Input Mức từ ngoại vi cho phép đệm trạng thái cửa A mở để phát kiện, đệm trạng thái INTE (INTE FF liên quan với OBF) Kiểm soát bit set / reset PC * Phép nhập: STB: Mức thấp ngõ vào cài data vào mạch cài ngõ nhập IBF: (Input Buffer Full FF) output Mức thông báo cho CPU biết kiện nhập vào mạch cài nhập INTE (liên quan với IBF) Kiểm soát bit set/reset PC Hình 3.7 Kết hợp mode mode khác: Mode mode (in) : từ điều khiển : 11 XXX 01 1/0 Mode mode (out) : từ điều khiển : 11 XXX 01 1/0 Mode mode (in) : từ điều khiển : 11 XXX 00 X Mode mode (in) : từ điều khiển : 11 XXX 10 X Sự kết hợp mode đặc biệt: Có số tổ hợp mode mà tất cửa C dùng làm điều khiển hay trạng thái, bit lại dùng sau: Nếu lập trình ngõ vào: Các bit phần cao cửa C (C4-C7) phải truy xuất riêng rẽ dùng chức bit set / reset Các bit phần thấp cửa C (C0-C3) truy xuất dùng chức bit set/reset thay truy xuất nhóm cách ghi cửa C – Đọc trạng thái cửa C: Ở mode o, cửa C truyền kiện đến hay từ ngoại vi 8255 lập trình mode hay 2, cửa C trở nên tính điều khiển bắt tay cho cửa A C Đọc nội dung cửa C cho phép người lập trình kiểm tra trạng thái thiết bị ngoại vi thay chiều chương trình tương ứng Không có lệnh đặc biệt để đọc thông tin trạng thái từ C Phép đọc bình thường C dùng để thực chức D7 D1 D0 I/ O D6 I/ O D5 D4 D3 D2 IBF INTE INTR INTE IBFB INTR A A A B B NHOÙM A MODE (Input) OBF INTE I/O I/ O A A NHOÙM A NHOÙM B INTR IOB1 OBIB INTR A B B NHOÙM B MODE (Output) OBF INTE IBF INTE INTR A A NHOÙM A A NHOÙM B Định nghóa chọn mode hay MODE ... RESET, tất cửa thiết lập chế độ nhập (input), tức 24 đường trạng thái Sau RESET 8255 trì chế độ nhập mà không cần khởi động thêm Trong thực chương trình hệ thống, chọn mode cách xuất đến 8255... 1: Cửa A : vào, B : từ điều khiển Cửa A : ra, B : vào từ điều khiển 1: in PC 4, 5 0: out 1 1/ x x x 1 1/0 1 x 1: in PC 4, 5 0: out Hình 3.6 – Mode : Xuất nhập chiều bắt tay Các đặc tính mode 2: *... ngoại vi thay chiều chương trình tương ứng Không có lệnh đặc biệt để đọc thông tin trạng thái từ C Phép đọc bình thường C dùng để thực chức naøy D7 D1 D0 I/ O D6 I/ O D5 D4 D3 D2 IBF INTE INTR