Tổng quát về chíp nhớ 8255

3. Đọc và kiểm tra trạng thái: - Các lệnh đọc vào o Thanh ghi trạng thái nếu cửa dùng chế độ 1, 2 o Một cửa bất kỳ ở chế độ 0 dùng để ghi trạng thái của TBN. - Lệnh và logic (AND) để chắn các bit không cần kiểm tra - Lệnh so sánh (CMP) với các giá trị 1 của bit đó - Lệnh trở về vị trí có lệnh đọc trạng thái nếu kết quả so sánh không đúng trạng thái cần xét

pdf20 trang | Chia sẻ: hao_hao | Lượt xem: 7296 | Lượt tải: 4download
Bạn đang xem nội dung tài liệu Tổng quát về chíp nhớ 8255, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Mục Lục Chương I: Tổng quát về chíp nhớ 8255……………………………….1 1.1: Sơ Đồ Chân…………………………………………………...1 1.2: Các chế độ làm việc…………………………………………...5 1.2.1 Từ điều khiển định nghĩa cấu hình cho các cổng……... ......6 1.2.2 Thanh ghi từ điều khiển việc thiết lập/ xóa bít ra Pci……7 1.2.3- Các chế độ làm việc của 8255……………………………7 Chương II: Ghép lối với VXL và TNB…………………………………13 1.Ghép lối với VXL…………………………………………………13 2.Ghép lối với TNB…………………………………………………15 1 Chương I: Tổng Quát Về Chíp Nhớ 8255. 1.1. Sơ Đồ Chân. Vi mạch gồm 40 chân trong đó. Gồm: PA0PA7 , PB0 ÷ PB7 , PC0 ÷ PC7, D0 ÷ D7, A0, A1 , , , CS, Reset, Vcc và GND. Có 24 đường dẫn lối vào/ra xếp thành 3 cổng song song ( portA, portB, portC). Ba cổng vào ra của nó được lập trình thành các nhóm 12 chân. - Nhóm A bao gồm cổng portA (PA7 ÷ PA0), và nửa cao của cổng portC (PC7 ÷ PC4). - Nhóm B bao gồm cổng portB (PB7 ÷ PB0), và nửa thấp của cổng portC (PC3 ÷ PC0). Chân Reset phải được nối với tín hiệu Reset chung của toàn hệ thống (khi Reset các cổng được định nghĩa là cổng vào để không gây ra sự cố cho các mạch điều khiển). RESET =1: Xoá tất cả các thanh ghi bên trong của 8255, kể cả thanh ghi điều khiển (control register) và tất cả các cổng (A,B,C ) được đặt về chế độ các cổng vào. 2 Tín hiệu CS được nối với mạch tạo xung chọn thiết bị để đặt mạch 8255 vào một địa chỉ cơ sở nào đó. Các tín hiệu địa chỉ A0, A1 sẽ chọn ra 4 thanh ghi bên trong 8255: một thanh ghi để ghi từ điều khiển (CWR – control word register) cho hoạt động của 8255 và 3 thanh ghi khác ứng với các cổng là PA, PB, PC để ghi đọc dữ liệu theo bảng: A1 A0 Lệnh (của VXL) Hướng chuyển số liệu với VXL 0 0 0 0 1 Đọc PortA PortA →D0 ÷ D7 0 1 0 0 1 Đọc portB PortB →D0 ÷ D7 1 0 0 0 1 Đọc portC PortC →D0 ÷ D7 1 1 0 0 1 Không có giá trị 0 0 0 1 0 Ghi PortA D0 ÷ D7→ PortA 0 1 0 1 0 Ghi PortB D0 ÷ D7→ PortB 1 0 0 1 0 Ghi PortC D0 ÷ D7→ PortC 1 1 0 1 0 Ghi thanh ghi điều khiển D0 ÷ D7→ thanh ghi điều khiển x x 1 x x Vi mạch ở trạng thái trở kháng cao Không có trao đổi số liệu 3 Tính linh hoạt của vi mạch này thể hiện ở khả năng lập trình. Ta có thể đặt các mode hoạt động thông qua thanh ghi điều khiển. Các chân D0 đến D7 tạo nên kênh dữ liệu 2 hướng có độ rộng 8 bit. Tất cả dữ liệu khi truy nhập ghi hoặc đọc được dẫn qua kênh dữ liệu này. Trạng thái logic ghi/đọc được nhận biết qua các tín hiệu điều khiển , . Trao đổi thông tin với 8255 chỉ có thể được tiến hành khi CS = 0. Khi RD= 0 dữ liệu của cổng được chọn được đưa ra kênh dữ liệu và có thể được sử dụng bởi các vi mạch khác. Khi WR = 0, thì moi việc xảy ra ngược lại. Các bit địa chỉ A0 và A1 cùng với các tín hiệu ghi đọc báo cho biết sẽ truy nhập lên cổng nào. Sơ đồ khối mô tả chức năng của 8255: 4 1.2 Các chế độ làm việc của 8255. Để xác lập chế độ làm việc cho 8255 ta ghi từ điều khiển vào thanh ghi từ điều khiển CWR ( Control Word Register ). Có 2 loại từ điều khiển cho 8255: - Từ điều khiển định nghĩa cấu hình cho các cổng PA, PB, PC. - Từ điều khiển lập/xoá từng bit ở đầu ra của PC. - Tuỳ theo từ lệnh được ghi vào thanh ghi điều khiển khi khởi động của vi mạch mà ta có các PortA,B,C hoạt động ở: Vi mạch 8255 có ba chế độ hoạt động cơ bản (Mode) ,có thể chọn các chế độ hoạt động như sau. Mode 0: Chế độ vào ra cơ bản. Mode 1: Chế độ vào ra có hội thoại (Strobe Input/Output ). Mode 2: Chế độ vào ra bus hai chiều. Hình vẽ sau minh họa chế độ làm việc của 8255. 5 Khi tín hiệu RESET bằng 1 tất cả các cổng được đưa về trạng thái là các cổng vào (Input port) nghĩa là tất cả 24 đường của ba cổng đều ở trạng thái trở kháng cao ). Sau khi tín hiệu RESET bằng 0 thì 8255 có thể duy trì trạng thái trên nếu như không có sự thiết lập trạng thái bổ xung nào nữa. Trong quá trình thực hiện chương trình của hệ thống, bất kỳ một chế độ nào khác có thể được chọn nhờ sử dụng lệnh máy OUT. 1.2.1 Từ điều khiển định nghĩa cấu hình cho các cổng. Các chế độ của cổng A và cổng B có thể được định nghĩa một cách riêng biệt, trong khi đó cổng C được chia thành hai phần vì lý do các định cho cổng A và cổng B. Tất cả các thanh ghi nội và thông tin trạng thái sẽ được xoá khi chế độ thay đổi. Nhóm B (Group B) có thể được lập trình ở mode 0 để điều khiển các chuyển mạch đơn giản hoặc hiển thị các kết quả tính toán… Nhóm A có thể được lập trình hoạt động trong mode1 để điều khiển bàn phím hoặc bộ đọc băng từ hoặc một bộ điều khiển ngắt cơ bản. 6 1.2.2- Thanh ghi từ điều khiển việc thiết lập/ xóa bít ra Pci. Bất cứ bit nào trong 8 bit của cổng C đều có thể được thiết lập hoặc được xoá nhờ sử dụng các lệnh ghi ra thanh ghi điều khiển các bit phù hợp. Như vậy khi cổng C đang được dùng để điều khiển, ghi trạng thái cho cổng A hoặc cổng B thì những bit của cổng C có thể được xoá hoặc được thiết lập nhờ sử dụng các lệnh xoá, thiết lập bit như khi cổng C là cổng ra dữ liệu. 1.2.3- Các chế độ làm việc của 8255. Chíp 8255A có 3 chế độ làm việc. a.Mode 0: Vào ra cơ sở (còn gọi là vào ra đơn giản). Trong chế độ 0, 8255 cho một khả năng xuất và nhập dữ liệu đơn giản qua 3 cổng A,B,C. PA, PB, PC được sử dụng độc lập với nhau, 3 đường dây đều được dùng để trao đổi số liệu hoặc thông tin về điều khiển và trạng thái một cách bình đẳng với nhau và tuỳ ý lựa chọn. 7 b. Mode 1: - Vi mạch hoạt động gồm 2 nhóm, nhóm A và nhóm B. - Mỗi nhóm chứa một cổng 8 bit và một cổng điều khiển 4 bít. - Cổng 8 bit có thề là cổng vào, hoặc cổng ra, hoặc cả hai cổng vào ra dều là chốt. Xuất dữ liệu ra trong mode 1. OBF (Output Dufer Full F/F) - Tín hiệu ra OBF chuyển xề múc thấp để thông báo rắng CPU đã ghi dữ liệu ra một cổng xác định. Tín hiệu OBF F/F sẽ được xá lập ở sườn tín hiệu WR và bị xóa khi tín hiệu vào ACK ở mức thấp. Cổng PA, PB có tín hiệu đối thoại tương tự nhau. Tín hiệu , báo rằng bộ đệm ra đã đầy cho ngoại vi biết CPU đã ghi dữ liệu vào cổng để chuẩn bị đưa ra. Tín hiệu này thường nối với tín hiệu của thiết bị nhận. Tín hiệu , là tín hiệu của ngoại vi cho biết nó đã nhận được dữ liệu từ các cổng PA, PB. Tín hiệu INTRA, INTRB là tín hiệu yêu cầu ngắt từ PA, PB. INTEA, INTEB là tín hiệu của một mạch lật bên trong 8255 để cho phép hoặc cấm yêu cầu ngắt INTRA hoặc INTRB của PA hoặc PB. INTEA được lập/xoá thông qua bit PC6. INTEB được lập/xoá thông qua bit PC2. Khi làm việc ở chế độ xuất thông tin mode 1, thanh ghi trạng thái của 8255 cung cấp các thông tin phản ánh trạng thái hiện hành của mình. 8 Sơ đồ ghép nối của 8255 ở mode 1: (Output Bufer A full): Báo hiệu bộ đệm cổng ra A đã đầy (Output Bufer B full): Báo hiệu bộ đệm cổng ra B đã đầy INTEA ( Interrupt Enable For PortA): cho phép PA chạy ở chế độ ngắt. INTEB ( Interrupt Enable For PortB): cho phép PB chạy ở chế độ ngắt. INTRA ( Interrupt PortA ): PA ngắt INTRB ( Interrupt PortB ): PB ngắt Nội dung thanh ghi trạng thái của 8255 ở mode 1 cho huớng ra: - Nhận dữ liệu vào trong mode 1 Khi nhận dữ liệu vào trong mode 1 các cổng PA, PB có tín hiệu đối thoại tương tự nhau: STB ( cho phép chốt dữ liệu). Khi dữ liệu đã sẵn sàng trên kênh PA, PB ngoại vi phải dùng STB để báo cho 8255 biết để chốt dữ liệu vào cổng PA hoặc PB. Sau khi 8255 chốt được dữ liệu do thiết bị ngoại vi đưa đến, nó đưa ra tín hiệu IBF (In Buffer full) để báo cho ngoại vi biết. Nội dung thanh ghi trạng thái của 8255 ở mode 1 cho hướng vào: 9 Trong mode 1, hai cổng A và B có thể được lập trình riêng biệt là cổng vào hoặc ra để hoạt động trong các ứng dụng vào/ra có hội thoại khác nhau. Các từ lệnh hoạt động trong chế độ này như sau. c. Mode 2: Trong chế độ này cung cấp khả năng chao đổi dư liệu với các thiết bị ngoại vi sử dụng một đường truyền 8 bit để vừa truyền vừa nhận dữ liệu (Bus vào/ra hai chiều). Các tín hiệu hội thoại được dùng trong chế dộ này để điều khiển việc truyền dữ liệu cũng tương tự mode 1. Chế độ này chỉ dùng cho cổng PA với vào/ra 2 chiều và các bit PC3 ÷ PC7 dùng làm tín hiệu giao tiếp. - Cổng A là cổng vào/ra hai chiều 8 bit. - Các tín hiệu vào ra được chốt lại. 10 - 5 bit của cổng C được sử dụng làm điều khiển, trạng thái cho cổng A 8 bit. Mạch logic của 8255 ở mode 2 và các tín hiệu giao tiếp: Cổng PB có thể làm việc ở mode 1 hoặc mode 0 tuỳ theo bit điều khiển trong thanh ghi CWR. INTRA: yêu cầu ngắt cho dữ liệu 2 chiều vào/ra. INTE 1, INTE 2: là 2 tín hiệu của 2 mạch lật bên trong 8255 để cho phép hoặc cấm yêu cầu ngắt của PA, các bit này được lập xoá bởi PC6 và PC4. Khi dùng 8255 trong chế độ bus 2 chiều để trao đổi dữ liệu theo cách thăm dò, phải kiểm tra xem bit IBFA có bằng 0 (đệm vào rỗng) hay không trước khi dùng lệnh IN để nhận dữ liệu từ cổng PA. Khi làm việc ở chế độ truyền thông tin 2 chiều của mode 2, thanh ghi trạng thái của 8255 cung cấp các thông tin phản ánh trạng thái hiện hành của mình. Nội dung thanh ghi trạng thái: 11 d. Kết hợp các chế độ hoạt động. Ngoài việc hoạt động riêng rẽ theo tưng chế độ, 8255 còn có khả năng hoạt động đồng thời các chế độ khi không phải tất cả các bit trong cổng C được sử dụng để điều khiển hoặc dành cho trạng thái. Các bit còn lại có thể được dùng để thực hiện các chức năng sau: - Khi lâp trình là đường truyền vào tín hiệu. Tất cả các đương vào tín hiệu có thể được try cập trong suốt quá trình đọc cổng C thông thương. Như trong hình vẽ minh họa sau. 12 - Khi lập trình là các đường tín hiệu ra. Các bit trong số các bit cao của cổng C (PC7- PC4) phải được truy cập một cách riêng rẽ bằng cách sử dụng chức năng xóa/lập bit. Các bit trong số các bit thấp của cổng C có thể truy cập bằng chức năng xóa/lập bit hoặc dùng 3 bit tương ứng ghi ra cổng C. • Đọc trạng thái cổng C. Trong mode 0, cổng C truyền dư liệu tới hoặc từ thiết bị ngoại vi. Khi 8255 được lập trình trong chế độ mode 1 hoặc mode 2, cổng C được sử dụng để tạo ra hoặc nhận tín hiệu hôi thoại trao đổi với các thiết bị ngoại vi. Đọc nội dung cổng C cho phép người lập trình kiểm tra trạng thái của các thiết bị ngoại vi và điều khiển quá trình trao đổi dữ liệu. Không có lênh đặc biệt nào dùng để đọc thông tin trạng thái từ cổng C mà chỉ có thao tác đọc thông thương thực hiện chức năng nay. 13 Chương II: Ghép lối với VXL và TNB. 1.Ghép lối với VXL. PPI 8255A là vi mạch ghép nối ngoại vi lập trình được ( Programmable periferal interface), thường được gọi là mạch ghép nối vào ra song song lập trình được. Do khả năng mềm dẻo trong các ứng dụng thực tế, nó là mạch ghép nối được dùng rất phổ biến trong các hệ vi xử lý 8 bit, 16 bit và 32 bit. Và được ứng dụng khá rộng rãi. - Ghép nối với hệ vi xử ly. Bộ đệm dữ liệu để trao đổi đữ liệu hai chiều MTV và đường đây dẫn dữ liệu trong. Bộ logic điều khiển đọc viết. Tức là bộ giải mã địa chỉ lệnh cho các thanh ghi đệm và thanh ghi điểu khiển. Với tập hợp các tín hiệu địa chỉ (A0, A1). Chọn vi mạch (CS ) Tập các lệnh đọc RD và ghi WR của VXL ta có các lênh ghi đọc khác nhau cho các cổng (A, B, C) và từ điều khiên (Control word) như bảng sau. A1 A0 CS RD WR Lệnh( Của VXL) Chiều di chuyển số liệu với VXL 0 0 1 0 1 0 0 0 0 0 0 0 1 1 1 Đọc cửa A Đọc cửa B Đọc cửa C Cửa A→ D0…… D7 Cửa B→ D0…… D7 Cửa C→ D0…… D7 1 1 0 0 1 Không có giá trị 0 0 0 1 1 1 0 0 1 1 Ghi cửa A Ghi cửa B D0…… D7 → Cửa A D0…… D7 → Cửa B 14 11 0 1 1 1 0 0 1 1 Ghi cửa C Ghi thanh ghi điều khiển D0…… D7 → Cửa C D0…… D7 → Thanh ghi điều khiển x x 1 x x Vi mạch ở trạng thái trở kháng cao. Không có trao đổi số liệu. Sơ Đồ ghép nối 8255 vơi VXL 15 2. Ghép lối với TNB. Sơ đồ ghép nối cửa vào ra theo chương trình với VXL và TBN như hình dưới. PPI 8255A đặt giữa VXL và TBN, đóng vai trò trung chuyển tin giữa VXL và TBN qua các đường dây của MVT và TBN. 16 Phần ghép nối với thiết bị ngoài: Tuỳ thuộc loại TBN, số bit của đường dây số liệu và phương thức trao đổi tin mà ta có cách mắc đường dây khác nhau. - Chế độ 0: Ba đường dây PA, PB, PC đều được dùng để trao đổi số liệu hoặc tin về điều khiển và trạng thái một cách bình đẳng với nhau và tuỳ ý lựa chọn. Ở chế độ này có thể: Article III. Không cần đối thoại giữa 8255 và TBN, chỉ có trao đổi số liệu trên 1 trong 3 cổng Article IV. Nếu cần tin về điều khiển hay đọc trạng thái của TBN ta sử dụng thêm các cửa khác cho mục đích này ngoài cửa trao đổi số liệu - Chế độ 1: Chỉ có hai cửa A,B trao đổi số liệu độc lập nhau, còn các đường PCi của cửa PC để dùng để hội thoại cho các cửa A,B ở trên. Các đường này có chiều và vai trò xác định do đó không thể thay đổi. - Chế độ 2: Chỉ cho cửa PA với số liệu vào/ra hai chiều. Các bit của PC cũng có vai trò và chiều xác định Ở các chế độ bắt tay (đối thoại), giữa 8255 và TBN chỉ trao đổi hai tín hiệu hỏi đáp mà thôi Một số ứng dụng ghép nối 8255 với thiết bị ngoài: Mạch ghép nối 8255 ở chế độ 0: Ở hình 4.x giới thiệu cách ghép nối 8255 với máy in qua cổng PA có chiều ra, và ghép nối với một bộ biến đổi tương tự - số qua cổng PB có chiều vào. Cổng C được dành cho các tín hiệu đối thoại. Trong đó: - Nửa C thấp là cửa vào, đọc trạng thái của máy in và ADC Article V. PC0 cho trạng thái máy in bận (busy) Article VI. PC1 cho tín hiệu ACK của máy in Article VII. PC2 Cho tín hiệu EOC (End of Convertion) của ADC - Nửa C cao để đưa ra các tin về điều khiển Article VIII. PC4 đưa ra tín hiệu chốt dữ liệu cho máy in Article IX. PC5 đưa ra tín hiệu Start cho ADC. 17 • Ghép nối 8255 ở chế độ 1: Chương trình trao đổi tin cho 8255A Tuỳ theo cách mắc và TBN, chương trình cần có các khối lệnh cơ bản sau: 1. Khởi tạo: đó là lênh ghi vào thanh ghi điều khiển của 8255 với địa chỉ thấp A0, A1 = 11 tới từ điều khiển. Các bit từ điều khiển này được xác định bởi: - Chế độ của các cửa - Chiều (vào/ra) của các cửa 2. Điều khiển TBN: Cần đưa nội dung của các bit cho các cửa dùng để điều 18 khiển TBN. Nếu ở chế độ 1,2 các bit nay là các bit PCi của đối thoại, ta không cần phải viết lệnh đưa giá trị ra nữa. Còn trường hợp ở chế độ 0 ta có thể dùng một trong hai cách sau: - Lập/ xoá từng bit PCi của cửa PC - Đưa tin ra các bit của các cửa 3. Đọc và kiểm tra trạng thái: - Các lệnh đọc vào o Thanh ghi trạng thái nếu cửa dùng chế độ 1, 2 o Một cửa bất kỳ ở chế độ 0 dùng để ghi trạng thái của TBN. - Lệnh và logic (AND) để chắn các bit không cần kiểm tra - Lệnh so sánh (CMP) với các giá trị 1 của bit đó - Lệnh trở về vị trí có lệnh đọc trạng thái nếu kết quả so sánh không đúng trạng thái cần xét 4. Trao đổi số liệu: - Đưa số liệu vào (IN đv VXL họ 86) hay chuyển số liệu MOV (của VXL 8085) - Đưa số liệu ra (OUT ) hay chuyển số liệu MOV. Nhận xét của thầy giáo …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… 19 …………………………………………………………………………………………… …………………………………………………………………………………………… ………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… ………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… ………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… ………………………… 20

Các file đính kèm theo tài liệu này:

  • pdf69972954_8255_3979.pdf
Tài liệu liên quan