Để trao đổi thông tin với các ngoại vi ở đây là các mô - đun vào ra thông qua 8255, ba bước sau đây là cần thiết : 1 Xác định được địa chỉ các cổng A, B và C và của thanh ghi điều khiển
Trang 1Hình 6: Cấu trúc từ điều khiển của IC ngoại vi 8255
Căn cứ vào từ điều khiển của 8255, có thể klhởi tạo 8255 ở các mode 0 hoặc mode 1 hoặc mode 2, và có thể xác định hướng vào ra dữ liệu cho mỗi port
Để trao đổi thông tin với các ngoại vi (ở đây là các mô - đun vào ra) thông qua
8255, ba bước sau đây là cần thiết :
(1) Xác định được địa chỉ các cổng A, B và C và của thanh ghi điều khiển theo logic chọn chip (CS) và các đường địa chỉ A0, A1
(2) Ghi từ điều khiển vào thanh ghi điều khiển
(3) Ghi các lệnh I/O để thông tin với các ngoại vi thông qua cổng A,B và C Hệ thống Kit đã được đặt cho 8255 làm việc với các ngõ vào / ra ở mốt 0 như
sau :
1 Các ngõ ra được chốt
2 Các ngõ vào không được chốt
3 Các cổng không có khả năng bắt tay và ngắt
Ví dụ:
Để A, C là cổng nhập (8 bít), B là cổng xuất(8bít), và chọn ngoại vi có địa chỉ
từ 00 – 03 thì phải làm như sau:
PORT C (LOWER) 1=INPUT 0=OUTPUT
D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0
PORT B 1=INPUT 0=OUTPUT MODE SELECTION 0=MODE 0 1=MODE 1
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 B
GROUP A
MODE SET FLAG 1=ACTIVE
Trang 2Gởi từ điều khiển 99hex vào thanh ghi điều khiển
Xuất từ điều khiển ra thanh ghi điều khiển có địa chỉ 03hex
I.3 IC GIẢI MÃ HIỂN THỊ 8279:
I.3.1 Cấu trúc 8279 I.3.1.1 Phần cứng:
8279 là một phương pháp phần cứng để giao tiếp với bàn phím ma trận và hiển thị đa hợp Bất lợi của phương pháp dùng phần mềm là vi xử lí bị bận trong lúc kiểm tra và làm tươi hiển thị 8279 sẽ thay thế vi xử lí đảm trách hai nhiệm vụ này
8279 (Hình ) là một thiết bị dạng DIP _ 40, có hai phần chính : bàn phím và hiển thị Phần bàn phím có thể được nối với một ma trận tối đa 64 phím, sự gõ phím được giải nẩy và mãphím được lưu trữ vào bộ nhớ FIFO bên trong (First _ In _ First _ Out : Vào trước, ra trước) , và một tín hiệu ngắt được phát ra mỗi lần gõ phím Phần hiển thị có thể cung cấp một hiển thị có quét tối đa 16 Led Phần này có bộ nhớ RAM 16 x 8, có thể được sử dụng đọc / ghi thông tin cho các mục đích hiển thị Phần hiển thị có thể được khởi tạo ở dạng ghi phải (right entry) hoặc ghi trái (left entry) Tần số xung đồng hồ cấp cho 8279 tối đa là 3,125MHz
Hình 7: Sơ đồ chân logic của 8279
Bảng 3: Chức năng các chân IC 8279
databus:Đường dữ liệu 2
Trang 3chiều
Tất cả các lệnh và dữ liệu giữaCPU và 8279 được truyền trên những đường dữ liệu này
clock Xung clock có tần ố tối đa là 3,125MHz
trạng thái làm việc của
8279 khi ngõ vào này ở mức cao
Sau khi được reset, 8279 có thể làm việc ở chế độ:
Hiển thị 16 ký tự lối vào trái
Lập mã quét phím khóa ngoài 2 phím
thấp cho phép 8279 thực hiện các chức năng kết nối với CPU để truyền và nhận dữ liệu
chỉ này thương được kết nối với đ5a chỉ A0 của vi xử lý dùng để phân biệt lệnh hay dữ liệu
A0=[1]: tín hiệu vào ra là lệnh
A0=[0]:tín hiệu vào ra là dữ liệu
hay ghi dữ liệu lên bus dữ liệu, thanh ghi điều khiển hay bộ nhớ RAM hiển thị
Trang 4IRQ 1 Interrupt Request: đường
tín hiệu yêu cầu ngắt (output) Ngõ ra này sẽ ở mức cao nế có dữ liệu ở trong bộ nhớ FIFO hay SensorRAM, ngõ ra này sẽ ở mức thấp mỗi khicó
trởlại mức cao khi d4có dữ liệu chứa trong RAM
8279
line nàycó thể giải mã ra
16 đường hay mã hóa thành 1 đường, được dùng để quét phím hay ma trận cảm biến và hiển thị
đường scan line thông qua các phím hay công tắc cảm biến Ở chế độ quét phím, sẽ kết hợp với các đường scan lines tạo thành mã của phím được nhấn SHIFT
CTRL/STB
1
1
Shift, Control / Strobe input Mode: trong chế độ quét phím, mức logic của từng ngõ vào này sẽ được lưu trữ với vị trí của phím để tạo ra 1 giá trị của phím được nhấn
OUT A0 – A3
OUT B0 – B3
4
4
Đêy là 2 portngõ ra của thanh ghi hiển thị 16 x 4 bit Dữ liệu từ những thanh ghi này sẽ được đưa ra đồng bộ kết hợp với các
Trang 5đường quét scan lines để
đa hợp thành số hiển thị Hai ngõ ra 4 bit này có thể xóa độc lập và có thể kết hợp với nhau để tạo thành một ngõ ra 8 bit
xóa hiển thị trong quá trình chuyển đổi giữa các số hay khi gặp lệnh xóa hiển thị
Sơ đồ khối logic (Hình 8) trình bày bốn phần chính của 8279 : bàn phím, quét, hiển thị và giao tiếp vi xử lí Các chức năng của các phần này được miêu tả như dưới đây :
IR
BD
DB0-Data Buffer
Control and Timing Registers
Timing and Control
Internal Data Bus (8)
Display
Address
Registers
16 x 8 Display RAM
8 x 8 FIFO/Sensor RAM
Keyboard Debounce and Control
OUT A0-A3 OUT
Display Registers
SL0-Scan Counter
RD WR CS A0
I/O Control
8
FIFO/Sensor RAM Status
RL0-RL7SHIF
Return
Hình 8: Sơ đồ khối của 8279
Để giao tiếp với vi xử lý, 8279 cần tám đường dữ liệu hai chiều (BD0 _ BD7), một đường yêu cầu ngắt (IRQ), và sáu đường giao tiếp, kể cả đường địa chỉ của bộ đệm (A0)
Khi A0 ở mức cao, các tín hiệu được hiểu như là các từ điều khiển và trạng thái Khi A0 ở mức thấp, các tín hiệu được hiểu là dữ liệu
Trang 6Đường IRQ lên mức cao bất kì lúc nào việc ghi nhận dữ liệu vào FIFO Tín hiệu này được sử dụng để ngắt vi xử lí nhằm chỉ thị tính khả dụng của dữ liệu
I.3.1.2 Lập trình cho 8279
Để có sử dụng 8279, cần biết các từ điều khiển của 8279
8279 có tất cả tám từ điều khiển, tùy theo mục đích sử dụng mà sẽ chọn từ điều khiển thích hợp
Đặt mốt hiển thị / bàn phím
Trong đó, D D là mốt hiển thị và K K K là mốt bàn phím
D D
0 0 Hiển thị 8 kí tự 8 bit _ ghi trái
0 1 Hiển thị 16 kí tự 8 bit _ ghi trái
1 0 Hiển thị 8 kí tự 8 bit _ ghi phải
1 1 Hiển thị 16 kí tự 8 bit _ ghi phải
K K K
0 0 0 Bàn phím quét có lập mã _ Khóa ngoài 2 phím
0 0 1 Bàn phím quét có giải mã _ Khóa ngoài 2 phím
0 1 0 Bàn phím quét có lập mã _ Xoay vòng N phím
0 1 1 Bàn phím quét có giải mã _ Xoay vòng N phím
1 0 0 Ma trận cảm biến, quét có lập mã
1 0 1 Ma trận cảm biến, quét có giải mã
1 1 0 Ngõ vào Strob, quét hiển thị có lập mã
1 1 0 Ngõ vào Strob, quét hiển thị có giải mã
Trong suốt thời gian RAM hiển thị đang bị xoá ( 160 S), nó không thể được ghi vào Bit có trọng số cao nhất (MSB) của từ trạng thái được đặt trong suốt thời gian này Khi RAM hiển thị trở nên khả dụng trở lại, bit này tự động được đặt lại
Trang 7 Khởi tạo 8279
Mặc dù 8279 có tới tám từ điều khiển, nhưng không phải lúc nào cũng sử dụng hết tất cả tám từ này
Khi khởi tạo một 8279, thứ tự các từ điều khiển sau đây là cần thiết :
+ Đặt mốt hiển thị / bàn phím
+ Lập trình xung đồng hồ
+ Xoá RAM hiển thị, hoặc FIFO hoặc cả hai
Các từ điều khiển còn lại có thể được gởi ra thanh ghi điều khiển trong lúc này hoặc khi cần
II CÁC THAM SỐ CẦN THIẾT CỦA KIT:
Trên đây, đã giới thiệu các IC quạn trọng để có thể kết nối Kit với máy tính Ngoài ra, các thông số về địa chỉ cũng không kém phần quan trọng
Bảng : Bảng đồ địa chỉ bộ nhớ của kit
Vùng địa chỉ bộ nhớ
ROM1
ROM2
RAM1
RAM2
RAM3
8279
3 bit ứng với 6 trạng
thái của 6 vùng nhớ
Trang 8Dựa vào 3 bit A13, A14, A15 để xác định các vùng ROM, RAM như sau:
Bảng 4 : Bảng đồ địa chỉ I/O của kit
nhớ
8255A
8255B
8253A
8253B
8259
8251
ADC0809
DAC0808
3 bit ứng với 6 trạng thái của 6 vùng nhớ
74138
A13
A14
A15
A
B C
O0
O1
O2
O3
O4
O5
O6
O7
CS\ROM1 CS\ROM2 CS\RAM1 CS\RAM2 CS\RAM3 CS\8279
No use
No use
Hình 9 : chọn bộ nhớ
Trang 9Dựa vào 3 bit A3, A4, A5 có thể xác định ngoại vi sử dụng như sau:
III SỬ DỤNG KIT:
Chức năng các phím:
Phím RESET hoặc Q: khởi động lại toàn bộ hệ thống Kit, các thanh ghi, các điểm dừng, các khởi tạo, đều được reset
Phím A hoặc Address hoặc S: đặt lại địa chỉ ô nhớ để tác động vào: xem dữ liệu, thay đổi nội dung
Phím UP hoặc : lưu trữ dữ liệu ở 2 led trái vào địa chỉ ghi ở 4 led phải
Phím Down hoặc : để xem lại dữ liệu đã nạp
Phím P hoặc PC: đặt địa chỉ chạy chương trình
Phím G hoặc GO: chạy chương trình tại địa chỉ đã chọn sẳn
Phím I hoặc INTR: ngắt chương trình, khởi động nóng hệ thống, các khởi tạo, điểm dừng đều vẫn còn
Các thao tác nhập liệu trên là để đưa các dữ liệu, các lệnh vi xử lý đã được mã hóa ra dạng mã máy, vào những địa chỉ yêu cầu của người thảo chương Vàsau đó, kết quả kiểm tra, chạy thử chương trình sẽ cho biết chương trình đúng hay sai
Mục đích chủ yếu của đề tài là rút ngắn thời gian dịch sang mã máy và thời gian nhập liệu, nghĩa là phải nạp được dữ liệu vào bộ nhớ RAM mà không tốn thời gian nhập liệu
A
B C
O0
O1
O2
O3
O4
O5
O6
O7
74138
A3
A4
A5
CS\8255A CS\8255B CS\8253A CS\8253B CS\8259 CS\8251 CS\ADC0805 CS\DAC0808
Hình 10: Chọn I/O
Trang 10Chương IV:
GIAO TIẾP
MÁY TÍNH VỚI KIT THỰC TẬP
VI XỬ LÝ 8085