Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
163,06 KB
Nội dung
Tần số xung đồng hồ: 5MHz. Mạch tích xung đồng hồ được tích hợp có thể sử dụng thạch anh, mạch RC, LC bên ngoài. Đơn vò điều khiển được tích hợp. Có 4 vector ngắt, trong đó có một dành cho nhu cầu ngắt không ngăn được (Non – Maskable). Và một tương thích với 8080A. Cổng vào/ra nối tiếp. Tính nhò phân, thập phân và thập lục phân (tính 16 bit). Khả năng đònh đòa chỉ trực tiếp 64 Kbyte. Phần mềm tương thích 100% với Z80. II.2. CẤU TRÚC PHẦN CỨNG 8085: Sơ đồ chân của vi xử lý 8085 và sơ đồ logic ở hình 8. Trong đó chức năng của các chân được trình bày dưới đây: Chân Ký hiệu In/Out 3 state Ý nghóa 1,2 X 1 , X 2 I X 1 , X 2 là 2 ngõ vào của mạch dao động. Tần số ngõ vào được chia bơói 2 mạch chia bên trong. Tần số làm việc phụ thuộc vào loại vi xử lý . Đối với 8085A là 6 MHz. Đối với 8085A1 là 12MHz. Đối với 8085A2 là 10MHz. 3 Reset out O Cho biết CPU đang reset. Tín hiệu này có thể dùng để reset các thành phần khác trong mạch. 4 SOD O Serial output. Ngõ ra dữ kiệu nối tiếp được xác đònh bởi lệnh Sim. 5 SID I Serial input ngõ vào dữ liệu nối tiếp. Nó được nạp vào bit thứ 7 của thanh ghi A khi thực hiện lệnh RIM. 6 TRAP I Trap: tín hiệu ngắt không ngăn được. Ngõ vào Trap được kích bởi cạnh lên. 7,8,9 RST 7,5; 6,5; 5,5 I Restart Interrupt Request: là các tín hiệu ngắt có thể ngăn được. 10 INTR I Interrupt: là tín hiệu ngắt thông dụng có thể che được. Lệnh được kích bằng mức. 11 INTA\ O Interrupt Acknowledge: tín hiệu dùng để báo cho thiết bò yêu cầu ngắt bởi tín hiệu INTR biết rằng vi xử lý đã chấp nhận yêu cầu ngắt. 19-12 AD 7 ÷AD 0 I/O-3 Address/databus: đường đòa chỉ và dữ liệu được tích hợp chung. Ở trạng thái T 1 của chu kỳ máy các ngõ này đóng vai trò là ngõ ra đòa chỉ. Các trạng thái còn lại của chu kỳ máy đóng vai trò đường dữ liệu. 20 Vss O-3 Ground 28-21 A 15 ÷ A 18 O-3 Addess bus: các ngõ này dùng để xuất 8 bit đòa chỉ cao. 30 ALE O Addess Latch Enable: ngõ này tạo ra 1 xung ở trạng thái T 1 của chu kỳ máy để xác đònh A 15 ÷ A 8 và AD 7 ÷ AD 0 là các đường đòa chỉ. 31 WR\ O-3 Write: dùng để xác đònh Microprocessor đang thực hiện ghi dữ liệu lên bộ nhớ hay I/O. 32 RD\ O-3 Read dùng để xác đònh Microprocessor đang thực hiện ghi dữ liệu lên bộ nhớ hay I/O. 29, 33,34 S 0 , S 1 IO/M\ O O-3 Machine Cycle Status: 3 bit này cho biết trạng thái chu kỳ máy. II.3. CẤU TRÚC BÊN TRONG VI XỬ LÝ 8085: Sơ đồ cấu trúc Microprocessor 8085A được trình bày ở hình vẽ. Trong sơ đồ cấu trúc của 8085A có tất cả các khối của một Microprocessor tổng quát, chỉ có vài điểm khác biệt: Một trong hai thanh ghi Temp được thay thế bởi thanh ghi Accumulator do đó các dữ liệu cho khối ALU thực hiện phải có một dữ liệu chứa trong thanh ghi A. Các thanh ghi thông dụng B, C, D, E, H, L thanh ghi Accumulator, thanh ghi trạng thái đều có chiều dài là 8 bit. Program Counter và Stack pointer là các thanh ghi 16 bit do đó dung lượng bộ nhớ 8085A có thể truy xuất là 64K byte. Bus dữ liệu 8 bit D7 – D0 được đa hợp với 8 bit đòa thấp A7 – A0 tạo thành 8 bit AD7 – AD0 do đó khi sử dụng Microprocessor 8085A phải giải mã đa hợp các đường này để tách rời thành các đường đòa chỉ và các đường dữ liệu một cách chính xác. Các thanh ghi thông dụng B, C, D, E, H, L thanh ghi Accumulator, thanh ghi trạng thái F đều có chiều dài là 8 bit. Các thanh ghi này có thể kết hợp lại tạo thành từng cặp thanh ghi như BC, DE, HL, PSW ( chính là cặp thanh ghi AF). Thanh ghi trạng thái Microprocessor 8085A có cấu trúc như sau: S Z X AC X P X C 7 6 5 4 3 2 1 0 Hình sơ đồ chân của vi xử lý 8085 và sơ đồ logic Chức năng của các bit như sau: Bit S (signal): bit dấu S=1 khi kết quả là số âm S=0 khi kết quả là số dương Bit Z(zero) bit zero Z=1 khi kết quả bằng 0 Z=0 khi kết quả khác 0 Bit AC (Auxiliary) bit tràn phụ AC=1 khi phép tính bò tràn lên bit thứ 3 AC=0 khi phép tính không bò tràn lên bit thứ 3 Bit P (Parity) bit chẵn lẻ P=1 khi kết quả là số chẵn. P=0 khi kết quả là số lẻ. Bit C (Carry) bit nhớ C=1 khi kết quả có số nhớ. C= 0 Khi kết quả không có số nhớ. Bit x: là các bit không có ý nghóa. Microprocessor 8085A có ngõ vào Reset In dùng để Reset Microprocessor để thoát khỏi 1 chương trình, khi tác động đến ngõ vào Reset, Microprocessor sẽ đặt lại giá trò trong thanh ghi PC = 0000 H và các chương trình sẽ bắt đầu thực hiện ở ô nhớ có đòa chỉ 0000 H . GIỚI THIỆU 8255A: III.1 CẤU TRÚC PHẦN CỨNG: 8085A là IC ngoại vi được chế tạo theo công nghệ LSI dùng để giao tiếp song song giữa Microprocessor và thiết bò điều khiển bên ngoài. Sơ đồ chân và sơ đồ logic: Tên các chân 8255A: D 7 – D 0 : Data bus (Bi – Direction) RESET: reset input CS\: Chip select RD\: Read input WR\: Write input A 0 -A 1 : Pord Address PA7 – PA0: Port A PB7 – PB0: Port B PC7 – PC0: Port C 8255A giao tiếp với Microprocessor thông qua 3 bus: bus dữ liệu 8 bit D 7 – D 0 , bus đòa chỉ A 1 A 2 , bus điều khiển RD\, WR\, CS\, Reset. Mã lệnh, thông tin trạng thái và dữ liệu đều được truqền trên 8 đường dữ liệu D 7 – D 0 . Microprocessor gởi dữ liệu đến 8255A hoặc Microprocessor đọc dữ liệu từ 8255A tùy thuộc vào lệnh điều khiển. Các đường tính hiệu RD\, WR\, của 8255A được kết nối với các đường RD\, WR\ của Microprocessor. 8255A PA 3 PA 2 PA 1 PA 0 RD\ CS\ GN D A 1 A 0 PC 7 PC 6 PC 5 PC 4 PC 0 PC 1 PC 2 PC 3 PB 0 PB 1 PB 2 PA 4 PA 5 PA 6 PA 7 WR\ RESET D 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7 V CC PB 7 PB 6 PB 5 PB 4 PB 3 RD\ WR\ RESET A 0 A 1 CS\ PA7- PA0 D7 - D0 PC7- PC4 PC3- PC0 PB7- PB0 Tín hiệu Reset dùng để khi khởi động 8225A khi cấp điện, khi bò Reset các thanh ghi bên trong của 8255A đều bò xóa và 8255A ở trạng thái sẳn sàng làm việc. Khi giao tiếp với Microprocessor, ngõ vào tín hiệu Reset này được kết nối với tín hiệu Reset Out của Microprocessor. Tín hiệu Chip select CS\ dùng để lựa chọn 8255A khi Microprocessor giao tiếp với nhiều 8255A. 8255A có 3 port xuất nhập (I/O) có tên là Port A, port B, Port C, mỗi Port 8 bit. Port A gồm các bit PA 0 – PA 7 , Port B gồm các bit PB 0 – PB 7 , Port C gồm các bit PC 0 – PC 7 . Các Port này có thể là các Port Input hoặc Output tùy thuộc vào lệnh điều khiển, lệnh điều khiển do Microprocessor gởi đến chứa trong thanh ghi lệnh (còn gọi là thanh ghi điều khiển) để điều khiển 8255A. Các đường đòa chỉ A 1 A 0 của 8255A dùng để lựa chọn các Port và thanh ghi. A 1 A 0 = 00 2 dùng để chọn các Port A, A 1 A 0 = 01 2 dùng để chọn các Port B, A 1 A 0 = 10 2 dùng để chọn các Port C, A 1 A 0 = 11 2 dùng để chọn thanh ghi điều khiển. Trong sơ đồ khối của 8255A, các Port I/O của 8255A chia ra làm 2 nhóm: nhóm A gồm Port A và 4 bit cao của Port C, nhóm B gồm Port B và 4 bit thấp của Port C. Để sử dụng các Port của 8255A người lập trình phải gởi lệnh điều khiển ra thanh ghi điều khiển để 8255A đònh cấu hình cho các Port đúng theo yêu cầu mà người lập trình mong muốn. Cấu trúc từ điều khiển của 8255A: III.2 CẤU TRÚC PHẦN MỀM: Do các Port ra của 8255A được chia làm 2 nhóm A và B tách rời nên từ điều khiển của 8255A cũng được chia làm 2 nhóm. Các bit D 2 D 1 D 0 dùng để đò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, D 0 = 0: Port C thấp là Port xuất dữ liệu, D 0 = 1: Port C thấp là Port nhập dữ liệu. Bit D 1 dùng để thiết lập Port B, D 1 = 0: Port B là Port xuất dữ liệu, D 1 = 1: Port B là Port nhập dữ liệu. Bit D 2 dùng để thiết lập Mode điều khiển chg nhóm B: D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 PORT C (LOWER) 1 = INPUT 0 = OUTPUT PORT B 1 = INPUT 0 = OUTPUT MODE SELECTION 0 = MODE 0 1 = MODE 1 GROUP B PORT C (UPPER) 1 = INPUT 0 = OUTPUT PORT A 1 = INPUT 0 = OUTPUT MODE SELECTION 00 = MODE 0 01 = MODE 1 1X = MODE 2 GROUP A MODE S ET FLAG 1 = ACTIVE D 2 = 0: Nhóm B hoạt động ở Mode 0. D 2 = 1: Nhóm B hoạt động ở Mode 1. Các bit D 6 D 5 D 4 D 3 dùng để đònh cấu hình cho nhóm A: Bit D3 dùng để thiết lập 4 bit cao của C, D3 = 0: Port C là Port xuất dữ liệu, D3 = 1: Port C là Port nhập dữ liệu. Bit D4 dùng để thiết lập Port A, D4 = 0: Port A là Port xuất dữ liệu, D4 = 1: Port A là Port nhập dữ liệu. Bit D6 D5 dùng để thiết lập Mode điều khiển cho nhóm A: 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 = 11: Nhóm A hoạt động ở Mode 2. III.2.1. CÁC NHÓM A VÀ B ĐƯC CẤU HÌNH Ở MỨC 0: Từ điều khiển khi 2 nhóm A và B làm việc ở Mode 0: Ở các Mode 0 các Port A, Port B, Port C thấp và Port C cao các Port xuất hoặc nhập dữ liệu độc lập. Do có 4 bit để lựa chọn nên có 16 từ điều khiển khác nhau cho 16 trạng thái xuất nhập của 4 Port. III.2.2. CÁC NHÓM A VÀ B ĐƯC CẤU HÌNH Ở MỨC 1: Từ điều khiển khi 2 nhóm A và B làm việc ở Mode 1: Ở Mode 1 các Port A và Port B làm việc xuất nhập có chốt (Strobed I/O). ở Mode này 2 Port A và Port B hoạt động độc lập với nhau và mỗi Port có 1 Port 4 bit điều khiển dữ liệu. Các Port 4 bit điều khiển dữ liệu được hình thành từ 4 bit thấp và 4 bit cao của Port C. Khi 8255A được cấu hình ở Mode 1, thiết bò giao tiếp muốn 8255A nhận dữ liệu, thiết bò đó phải tạo ra 1 tín hiệu yêu cầu 8255A nhận dữ liệu, ngược lại 8255A muốn gởi tín hiệu đến 1 thiết bò khác, 8225A phải tạo ra 1 tín hiệu yêu cầu thiết bò đó nhận dữ liệu, tín hiệu yêu cầu đó gọi là tín hiệu Strobe. Nhóm A làm việc ở cấu hình Mode 1: Port A được cấu hình là Port nhập dữ liệu. 1 0 0 D 4 D 3 0 D 1 D 0 1 0 1 D 4 D 3 1 D 1 D 0 Chức năng của các đường tín hiệu được trình bày ở hình vẽ. Các đường tín hiệu của Port C trở thành các đường điều khiển/ dữ liệu của Port A. Bit PC4 trở thành bit STB A (Strobe input – tác động mức thấp), được dùng để chốt dữ liệu các ngõ vào PA7 – PA0 vào mạch chốt bên trong 8225A. Bit PC5 trở thành bit IBF A ( Input Buffer full – tác động mức cao), dùng để báo cho thiết bò bên ngoài biết dữ liệu đã được chốt vào bên trong. Bit PC3 trở thành bit INTR A (Input request – tác động mức cao), bit này có mức logic 1 khi 2 bit STB A = 1, IBF = 1 và bit INTE A ( Interrupt Enable) ở bên trong 8255A bằng 1. Bit INTE A được thiết lập mức logic 1 hay 0 dưới sự điều khiển phần mềm bằng cấu trúc bit Set/Reset của 8255A. Ở hình vẽ trên bit INTR A bằng 1 dùng để cho phép tín hiệu IBF xuất hiện tại ngõ ra INTR A của cổng AND. Tín hiệu INTR A tác động đến ngõ vào ngắt của Microprocessor để báo cho Microprocessor biết: dữ liệu mới đã xuất hiện ở Port A. Chương trình phục vụ ngắt sẽ đọc dữ liệu vào và xóa yêu cầu ngắt. Các bit còn lại của Port C PC6, PC7 là các bit xuất nhập bình thường tùy thuộc vào bit D3 trong từ điều khiển. Các bit xxx được dùng để thiết lập cho nhóm B. STB A IBF A INTR A I/O PC 3 PC 5 PC 4 PC 6,7 INTE A RD 1 0 1 1 D 3 X X X PA 7 - PA 0 Control Word MODE 1 (PORT A) OBF A ACK A INTR A I/O PC 3 PC 6 PC 7 PC 4,5 INTE A WR 1 0 1 0 D 3 X X X PA 7 - PA 0 Control Word MODE 1 (PORT A) Port A được cấu hình là Port xuất dữ liệu. Chức năng của các đường tín hiệu được trình bày ở hình vẽ: Các đường tín hiệu của Port C trở thành các đường điều khiển dữ liệu của Port A. Bit PC7 trở thành OBF A (Output Buffer Full – tác động mức thấâp), khi có dữ liệu từ Microprocessor gởi ra Port A, tín hiệu OBF A sẽ yêu cầu thiết bò bên ngoài nhận dữ liệu. Bit PC6 trở thành bit ACK A (Acknowledeg 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 tiếp theo. Bit PC3 trở thành bit INTR A (Input request – tác động mức cao), bit này có mức logic 1 khi 2 bit OBF A = 1, ACK = 1 và bit INTE A ( Interrupt Enable) ở bên trong 8255A bằng 1. Tín hiệu INTR A tác động đến ngõ vào ngắt của Microprocessor để báo cho Microprocessor biết thiết bò bên ngoài đã nhận dữ liệu ở Port A. Các bit còn lại của Port C: PC4, PC5 là các bit xuất nhập bình thường tùy thuộc vào bit D3 trong từ điều khiển. Các bit xxx được dùng để thiết lập cho nhóm B. Nhóm B làm việc ở cấu hình Mode 1: Port B được cấu hình là Port nhập dữ liệu. Chức năng của các đường tín hiệu được trình bày như hình vẽ Các đường tín hiệu của Port C trở thành các đường điều khiển/dữ liệu của port B. Chức năng của các bit điều khiển giống như nhóm A hoạt động ở Mode 1. Port B được cấu hình là Port xuất dữ liệu. Chức năng của các đường tín hiệu được trình bày ở hình vẽ STB B IBF B INTR B PC 0 PC 1 PC 2 INTE B RD 1 X X X X 1 1 X PB 7 - PB 0 Control Word MODE 1 (PORT B) [...]... đường tín hiệu của Port C trở thành các đường điều khiển/ dữ liệu của Port B Chức năng của các bit điều khiển giống như nhóm A hoạt độfg ở Mode 1 Các bit xxx được dùng để thiết lập cho nhóm A, bit D0 không có tác dụng trong trường hợp cả 2 nhóm làm vi c ở Mode 1 Control Word 1 X X X X 1 0 INTEB PA7-PA0 X PC2 PC1 ACKB PC0 MODE 1 (PORT A) OBFB INTRB WR III.2.3 CÁC NHÓM A CỦA 8255A LÀM VI C Ở MODE 2:... MODE 2: Mode 2 là kiểu hoạt động Strobed Bi-directional IO, sự khác biệt với các Mode 1 là Port có hai chức năng xuất nhập dữ liệu Từ điều khiển khi hai nhóm A hoạt động ở Mode 2: 1 1 X X X X Chức năng của các đường tín hiệu như hình vẽ: X X . Tần số xung đồng hồ: 5MHz. Mạch tích xung đồng hồ được tích hợp có thể sử dụng thạch anh, mạch RC, LC bên ngoài. Đơn vò điều khiển được tích hợp. Có 4 vector ngắt, trong đó có một. khối của 8255A, các Port I/O của 8255A chia ra làm 2 nhóm: nhóm A gồm Port A và 4 bit cao của Port C, nhóm B gồm Port B và 4 bit thấp của Port C. Để sử dụng các Port của 8255A người lập trình. chức năng của các chân được trình bày dưới đây: Chân Ký hiệu In/Out 3 state Ý nghóa 1,2 X 1 , X 2 I X 1 , X 2 là 2 ngõ vào của mạch dao động. Tần số ngõ vào được chia bơói 2 mạch chia