1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giáo trình hình thành hệ thống ứng dụng kỹ thuật xử lý các lệnh số học logic của bộ vi xử lý p7 doc

10 243 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 180 KB

Nội dung

Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng của 8255A là các ngõ vào, đồng thời tất cả các dữ liệu trên thanh ghi bên trong 8255A đều bò xóa, 8255A trở về trạng thái ban đầu săn sàng làm việc. Chân 6 (CS\): tín hiệu ngõ vào chip select (CS\) được điều khiển bởi vi xử lý, dùng để lựa chọn 8255A làm việc khi vi xử lý giao tiếp với nhiều thiết bò. Chân 5 (RD\): ngõ vào đọc dữ liệu (Read Input). Chân 36 (WR\) : ngõ vào ghi dữ liệu (Write Input). Chân 8,9 (A 1 , A 0 ): ngõ vào đòa chỉ (Address Input), dùng nhận đòa chỉ vào để lựa chọn thanh ghi và các cổng. Bảng đòa chỉ lựa chọn thanh ghi và các cổng: A 1 A 0 Cổng và thanh ghi 0 0 Cổng A 0 1 Cổng B 1 0 Cổng C 1 1 Thanh ghi điều khiển Chân 26 (V cc ) : nguồn 5 V DC. Chân 7 (GND) : GND 0 V DC . III. CẤU TRÚC BÊN TRONG VÀ HOẠT ĐỘNG CỦA VI MẠCH 8255A. 1. Sơ đồ khối cấu trúc bên trong của vi mạch 8255A. Port A Port C (4 bit cao) Nhóm A Port C (4 bit thấp) Port B Nhóm B Điều khiển nhóm A Điều khiển nhóm B Đệm bus dữ liệu Logic điều khiển ghi/đọc R D \ WR \ CS \ A 0 A 1 D 7 – D 0 PA 7 – PA 0 PC 7 – PC 4 PC 3 – PC 0 PB 7 – PC 0 . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng Hình 6.2: Sơ đồ khối cấu trúc bên trong của 8255A 2. Hoạt động của vi mạch 8255A: Từ sơ đồ khối cấu trúc bên trong của vi mạch 8255A ta thấy các cổng của 8255A được chia thành 2 nhóm: Nhóm A gồm cổng A và 4 bit cao của cổng C. Nhóm B gồm cổng B và 4 bit thấp của cổng C. Cấu hình làm việc của 2 nhóm sẽ do nội dung của thanh ghi điều khiển quyết đònh. Vi mạch 8255 giao tiếp với vi xử lý thông qua các đường sau : - Đường dữ liệu: gồm 8 đường dữ liệu (D 0 - D 7 ). Mã lệnh, các dữ liệu đều được truyền đi trên đường này. - Đường đòa chỉ: gồm 2 đường (A 0 – A 1 ) dùng để lựa chọn cổng hoặc thanh ghi điều khiển như đã trình bày ở phần trước. - Đường điều khiển: gồm các đường RD\, WR\, CS\, Reset dùng để điều khiển việc hoạt động của 8255A. Để sử dụng các cổng làm công cụ giao tiếp, người sử dụng phải gửi từ điều khiển ra thanh ghi điều khiển để 8255A đònh cấu hình làm việc cho các cổng đúng như yêu cầu của người lập trình. 3. Từ điều khiển: Từ điều khiển là dữ liệu được gởi tới thanh ghi điều khiển. Giá trò của từ điều khiển sẽ xác đònh cấu hình làm việc cho các cổng của 8255A, đó là việc lựa chọn chức năng nhập hay xuất của các cổng. a. Cấu trúc của từ điều khiển: Do các cổng của 8255A được chia làm hai nhóm nên từ điều khiển cũng được chia làm hai nhóm điều khiển tương ứng. Các bit D 3 , D 4 , D 5 , D 6 dùng để xác đònh cấu hình cho nhóm A: - Bit D 3 dùng để thiết lập 4 bit cao của cổng C. D 3 = 0 cổng C là cổng xuất dữ liệu. D 3 = 1 cổng C là cổng nhập dữ liệu. - Bit D 4 dùng để thiết lập cổng A. D 4 = 0 cổng A là cổng xuất dữ liệu. D 4 = 1 cổng A là cổng nhập dữ liệu. - Bit D 5 và D 6 dùng thiếp lập mode điều khiển của nhóm A. . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng D 6 D 5 = 00 : nhóm A hoạt động ở mode 0. D 6 D 5 = 01 : nhóm A hoạt động ở mode 1. D 6 D 5 = 1x : nhóm A hoạt động ở mode 2. Các bit D 0 , D 1 , D 2 dùng để xác đònh cấu hình cho nhóm B. - Bit D 0 dùng để thiết lập 4 bit thấp của cổng C. D 0 = 0 cổng C là cổng xuất dữ liệu. D 0 = 1 cổng C là cổng nhập dữ liệu. - Bit D 1 dùng để thiết lập cổng B. D 1 = 0 cổng B là cổng xuất dữ liệu. D 1 = 1 cổng B là cổng nhập dữ liệu. - Bit D 2 dùng thiếp lập mode điều khiển của nhóm B. D 2 = 0 : nhóm B hoạt động ở mode 0. D 2 = 1 : nhóm B hoạt động ở mode 1. D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 Đặt trạng thái cờ. 1 = Active Nhóm B Nhóm A Cổng C (4 bit thấp) 1 = Input 0 = Output Cổng B 1 = Input 0 = Output Mode select 1 = mode 0 0 = mode 1 Cổng C (4 bit cao) 1 = Input 0 = Output Cổng A 1 = Input 0 = Output Mode select 00 = mode 0 01 = mode 1 1x = mode 2 . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng Hình 6.3 : Cấu trúc từ điều khiển của vi mạch 8255A . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng b. Cơ chế hoạt động các cổng của 8255A ở các trạng thái. * Nhóm A và Nhóm B cấu hình ở mode 0. Khi được đònh ơ cấu hình này, các cổng của hai nhóm hoạt động xuất hoặc nhập dữ liệu độc lập với nhau. Từ điều khiển: 1 0 0 D 4 D 3 0 D 1 D 0 Với D 0 , D 1 . D 3 , D 4 tùy chọn theo yêu cầu của người sử dụng. * Nhóm A được cấu hình ở mode 1. Ở mode 1, các cổng làm việc có chốt (Strobed I/O), thiết bò giao tiếp muốn 8255A nhận dữ liệu thì thiết bò đó phải tạo ra một tín hiệu yêu cầu 8255A nhận dữ liệu và ngược lại, 8255A muốn gởi dữ liệu cho một thiết bò khác thì nó phải gởi 1 tín hiệu yêu cầu thiết bò đó nhận dữ liệu, tín hiệu đó gọi là tín hiệu chốt. + Khi cổng A được cấu hình là cổng nhập dữ liệu, chức năng các đường tín hiệu được trình bày như hình vẽ: Từ điều khiển : 1 0 1 1 D 3 x x x Hình 6.4 : Chức năng các đường tín hiệu khi cổng A là cổng nhập dữ liệu Các đường tín hiệu của cổng C trở thành các đường điều khiển của cổng A. Trong đó : Bit INTE A (Interrupt Enable) được thiết lập mức logic dưới sự điều khiểf của phần mềm dùng cấu trúc Set/Reset của 8255A. Bit PC 4 trở thành bit STB A (Strobed Input, tác động mức thấp), được dùng để chốt các dữ liệu ở các ngõ vào PA 0 – PA 7 vào mạch chốt bên trong. RD \ PC 4 PC 5 PC 3 PC 6,7 PA 0 – PA 7 INTE A STB A \ IBF A INTR A I/O . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng Bit PC 5 trở thành bit IBF A (Input Buffer Full, tác động mức cao), dùng để báo cho bên ngoài biết dữ liệu đã được chốt bên trong. Bit PC 3 trở thành bit INTR A (Interrupt Request, tác động mức cao), bit này có mức logic 1 khi bit STR A = 1, bit IBF A = 1 và bit INTE A = 1. Thông thường bit này dùng để tác động vào ngõ vào ngắt của vi xử lý để báo cho vi xử lý biết : dữ liệu mới đã xuất hiện ở ngõ vào. Các bit PC 6 , PC 7 của cổng C là các bit xuất/ nhập bình thường tùy thuộc vào từ điều khiển trong thanh ghi điều khiển. Còn cổng B được điều khiển bằng các bit D 0 – D 2 trong thanh ghi điều khiển (nếu cổng B hoạt động ở mode 1 thì các bit PC 0 – PC 2 là các bit điều khiển). + Cổng A được cấu hình là cổng xuất dữ liệu. Chức năng các đường tín hiệu được trình bày ở hình vẽ: Từ điều khiển : 1 0 1 0 D 3 X x x Hình 6.5 : Chức năng các đường tín hiệu khi cổng A là cổng xuất dữ liệu Bit PC 7 trở thành bit OBF A (Output Buffer Full, tác động mức thấp), khi có dữ liệu từ vi xử lý gởi ra cổng A, tín hiểu OBF sẽ yêu cầu thiết bò bên ngoài nhận dữ liệu. Bit PC 6 trở thành bit ACK A (Acknowledge Input, tác động mức thấp), thiết bò nhận dữ liệu dùng tín hiệu này để báo cho 8255A biết dữ liệu đã được nhận và sẵn sàng nhận dữ liệu mới. Bit PC 3 trở thành bit INTR A (Interrupt Request, tác động mức cao), bit này có mức logic bằng 1 khi bit OBF A = 1, ACK A = 1 và bit INTE A = 1. Tín hiệu INTR A tác động đến ngõ vào ngắt của vi xử lý để báo cho vi xử lý biết thiết bò bên ngoài đã nhận dữ liệu từ cổng A. Các bit PC 4 , PC 5 vẫn là bit nhập/ xuất dữ liệu bình thường tùy thuộc vào từ điều khiển. Các bit D 0 – D 2 trong thanh ghi điều khiển dùng để thiết lập cấu hình cho cổng B. * Nhóm B được cấu hình ở mode 1. WR \ PC 7 PC 6 PC 3 PC 4,5 PA 0 – PA 7 INTE A OBF A \ ACK A \ INTR A I/O . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng + Cổng B được cấu hình là cổng nhập dữ liệu. Chức năng các đường tín hiệu được trình bày như hình vẽ: . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng WR \ PC 1 PC 2 PC 0 PB 0 – PB 7 INTE B OBF B \ ACK B \ INTR B Từ điều khiển : 1 p x x X 1 1 x Hình 6.6 : Chức năng các đường tín hiệu khi cổng B là cổng nhập dữ liệu Chức năng của các bit điều khiển giống như khi nhóm A hoạt động ở mode 1 và cổng A được cấu hình là cổng nhập dữ liệu. + Cổng B đươçc cấu hình là cổng xuất dữ liệu. Chức năng các đường tín hiệu được trình bày như hình vẽ : Từ điều khiển: 1 x X x x 1 0 x Hình 6.7 : Chức năng các đường tín hiệu khi cổng B là cổng xuất dữ liệu Chức năng của các từ điều khiển giống như khi nhóm A hoạt động ở mode 1 và cổng A được cấu hình là cổng xuất dữ liệu. * Nhóm A được cấu hình ở mode 2. Mode 2 là kiểu hoạt động strobed bi-directional IO : có hai chức năng nhập xuất dữ liệu. Từ điều khiển khi nhóm A được cấu hình ở mode 2 và chức năng của các đường tín hiệu được trình bày ở hình vẽ: RD \ PC 2 PC 1 PC 0 PB 0 – PB 7 INTE B STB B \ IBF B INTR B . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng Từ điều khiển : 1 0 1 1 D 3 x x x Hình 6.8: Chức năng các đường tín hiệu khi nhóm A hoạt động ở mode 2 Các đường tín hiệu của cổng C trở thành các đường điều khiển của cổng A. Bit PC 7 trở thành bit OBF A , PC 6 trở thành bit ACK A , PC 4 trở thành bit STB A , PC 5 trở thành bit IBF A và bit PC 3 trở thành bit INTR A , chức năng của các bit điều khiển giống như ở mode 1, chỉ khác tín hiệu INTR A = 1 khi OBF A = 1 và INTE 1 = 1 hoặc IBF A = 1 và INTE 2 = 1. Các bit PC 0 – PC 2 là các bit nhập xuất dữ liệu bình thường tùy thuộc vào từ điều khiển trong thanh ghi điều khiển. Một chú ý cần thiết là khi nhóm A được cấu hình ở mode 2 thì nhóm B chỉ được cấu hình ở mode 0. IV. GIAO TIẾP GIỮA VI XỬ LÝ VỚI 8255A: Vi mạch 8255A có thể giao tiếp với vi xử lý theo 2 kiểu: kiểu nhập/xuất (kiểu I/O) và kiểu bộ nhớ. Khi vi xử lý giao tiếp với 8255A theo kiểu I/O nó chỉ dùng được 8 đường đòa chỉ từ A 0 – A 7 mà thôi còn khi giao tiếp kiểu bộ nhớ, nó dùng được cả 16 đường đòa chỉ, vì vậy dung lượng giao tiếp kiểu I/O thấp hơn dung lượng giao tiếp kiểu bộ nhớ. 1. Giao tiếp kiểu I/O. Khi thiết kế vi xử lý giao tiếp với 8255A theo kiểu I/O thì dữ liệu sẽ được truy xuất bằng 2 lệnh : IN addr-port và OUT addr-port. Dữ liệu giao tiếp luôn chứa trong thanh ghi A. Đòa chỉ cổng (addr-port) có độ dài là 8 bit. Cũng giống như bộ nhớ, vi xử lý có thể giao tiếp với nhiều vi mạch 8255, với 8 WR \ PA 0 – PA 7 OBF A \ ACK A \ PC 3 PC 7 PC 6 PC 4 PC 5 STB A \ IBF A RD \ INTE 1 INTE 2 PC 2,1,0 I/O INTE A . . Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng đường đòa chỉ thì có tất cả 256 đòa chỉ, mà mỗi vi mạch chiếm 4 đòa chỉ (3 cổng và thanh ghi điều khiển) nên số vi mạch 8255 tối đa có thể giao tiếp của vi xử lý là 256/4 = 64 vi mạch. Khi kết nối giữa vi xử lý với vi mạch 8255A thì đường đòa chỉ A 0 và A 1 dùng để lựa chọn các cổng và thanh ghi điều khiển, còn các đường đòa chỉ còn lại từ A 2 – A 7 dùng để lựa chọn vi mạch hoạt động, thông thường các đường đòa chỉ này được đưa vào vi mạch giải mã rồi các ngõ ra của vi mạch giải mã sẽ đưa đến CS\ của các vi mạch 8255A. Một ví dụ khi thiết kế vi xử lý giao tiếp với 4 vi mạch 8255A: Sơ đồ kết nối như hình vẽ : (vi mạch 74139). Hình 6.9: Sơ đồ kết nối vi xử lý với vi mạch 8255A Trong đó, đường A 0 và A 1 được nối với 8255A như đã trình bày ở trên, đường A 2 , A 3 được đưa vào vi mạch giải mã 2 đường thành 4 đường để lựa chọn vi mạch 8255A. Từ đó, ta có bảng đòa chỉ của các vi mạch 8255A như sau : IC A 7 A 6 A 5 A 4 A 3 A 2 A 1 A 0 Hex 8255A-1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 00 03 8255A-2 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 04 07 8255A-3 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 08 0B 8255A-4 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 0C 0F 2. Giao tiếp kiểu bộ nhớ. Khi thiết kế 8255A giao tiếp với vi xử lý theo kiểu bộ nhớ thì chức năng của 8255A không thay đổi, chỉ thay đổi kiểu truy xuất. Với kiểu I/O thì đòa chỉ của các cổng và thanh ghi điều khiển là 8 bit thì ở kiểu bộ nhớ, đòa chỉ của các cổng và thanh ghi điều khiển là 16 bit, khi đó cách kết nối cũng tương tự như kết nối vi xử lý với bộ nhớ thông thường, và mỗi vi mạch 8255A cũng được coi như là bộ nhớ với 4 ô nhớ: 3 cổng và thanh ghi điều khiển, truy xuất dữ liệu bằng cách dùng các lệnh truy xuất dữ liệu của bộ nhớ. DECODER 2 TO 4 LINE đến CS \ của 8255A - 1 đến CS \ của 8255A - 2 đến CS \ của 8255A - 3 đến CS \ của 8255A - 4 A 2 A 3 . . . được cấu hình ở mode 0. IV. GIAO TIẾP GIỮA VI XỬ LÝ VỚI 8255A: Vi mạch 8255A có thể giao tiếp với vi xử lý theo 2 kiểu: kiểu nhập/xuất (kiểu I/O) và kiểu bộ nhớ. Khi vi xử lý giao tiếp. chỉ, mà mỗi vi mạch chiếm 4 đòa chỉ (3 cổng và thanh ghi điều khiển) nên số vi mạch 8255 tối đa có thể giao tiếp của vi xử lý là 256/4 = 64 vi mạch. Khi kết nối giữa vi xử lý với vi mạch 8255A. ra của vi mạch giải mã sẽ đưa đến CS của các vi mạch 8255A. Một ví dụ khi thiết kế vi xử lý giao tiếp với 4 vi mạch 8255A: Sơ đồ kết nối như hình vẽ : (vi mạch 74139). Hình

Ngày đăng: 14/08/2014, 10:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN