You are on page 1of 18

• 5.

2 Ghép nối VXL 8086 với thiết bị ngoại vi


• 5.2.1 Phân loại thiết bị ngoại vi
• a/ Phân loại thiết bị ngoại vi theo địa chỉ
• b/ Phân loại thiết bị ngoại vi theo giao diện ghép nối
• Ghép nối qua các cổng và/ra song song
• Ghép nối qua các chip (IC) chuyên dụng
• 5.2.2 Thiết kế bộ giải mã địa chỉ để ghép nối VXL với I/O
• 5.2.3 Một số ví dụ điều khiển ngoại vi
• 5.3 Các Phương pháp vào ra dữ liệu
Phân loại thiết bị ngoại vi theo địa chỉ
Các thiết bị ngoại vi có địa chỉ dùng chung Các thiết bị ngoại vi có địa chỉ riêng biệt
- Định nghĩa: Dùng 1 phần bộ nhớ chính - Không sử dụng bộ nhớ chính
- Các bít địa chỉ: 20 bit địa chỉ (A0-A19) - 16 bít địa chỉ (A0-A15)
- Dung lượng bộ nhớ: 1MB - 64KB
- Tín hiệu điều khiển: M (M/IO) - IO
- Lệnh hợp ngữ: MOV - IN/OUT
Phân loại thiết bị ngoại vi theo giao diện ghép
nối
• Ghép nối qua các
cổng và/ra song
song
• Cổng vào
(Buffer/Cổng
đệm/IC
74244/74245)
• Cổng ra
(Latch/Cổng chốt
/ IC
74374/74373)
Phân loại thiết bị ngoại vi theo giao diện ghép
nối
• Ghép nối qua các chip (IC) chuyên dụng
• Phương thức truyền thông:
• Truyền thông nối tiếp:
• Đ/n
• Phân loại: Đồng bộ & Dị bộ
• Đồng bộ
• Dị bộ: Start bit, Stop Bit và Parity bit
• IC 8251
• Truyền thông song song
• Đ/n
• Phân loại:
• IC 8255
• Chế độ vào ra cơ sở: 2 cổng vào ra song song 8 bít là cổng A&B; 2 cổng vào ra song song 4 bít
là cổng C
• Chế độ vào ra thăm dò: 2 cổng vào ra song song 8 bít là cổng A&B, cổng C là cổng các tín hiệu
điều khiển
• PIC 8259, DMA 8237
Phân loại thiết bị ngoại vi theo giao diện ghép
nối
• Ghép nối qua các chip (IC) chuyên dụng:
• 8251, 8255, 8259, 8237

IC Các bit địa chỉ trực tiếp Tín hiệu chọn chip Các địa chỉ đầu vào bộ
giải mã địa chỉ
8251 1 (A0) CS (mức thấp) A19/15-A1
8255 2 (A0-A1) CS (mức thấp) A19/15-A2
8259 1 (A0) CS (mức thấp) A19/15-A1
8237 4 (A0-A3) CS (mức thấp) A19/15-A4
Các cổng vào/ra song Không có CS (mức thấp) A19/15-A0
song
Phân loại thiết bị ngoại vi theo giao diện ghép
nối
• Ghép nối qua các chip (IC) chuyên dụng:
• 8251, 8255, 8259, 8237

IC Các bit địa chỉ trực tiếp Tín hiệu chọn chip Các địa chỉ đầu vào bộ
giải mã địa chỉ
8251 1 (A0) CS (mức thấp) A19/15-A1
8255 2 (A0-A1) CS (mức thấp) A19/15-A2
8259 1 (A0) CS (mức thấp) A19/15-A1
8237 4 (A0-A3) CS (mức thấp) A19/15-A4
Các cổng vào/ra song Không có CS (mức thấp) A19/15-A0
song
Phân loại thiết bị ngoại vi theo giao diện ghép
nối
• Ghép nối qua các chip (IC) chuyên dụng:
• 8251, 8255, 8259, 8237

IC Các bit địa chỉ trực tiếp Tín hiệu chọn chip Các địa chỉ đầu vào bộ
giải mã địa chỉ
8251 1 (A0) CS (mức thấp) A19/15-A1
8255 2 (A0-A1) CS (mức thấp) A19/15-A2
8259 1 (A0) CS (mức thấp) A19/15-A1
8237 4 (A0-A3) CS (mức thấp) A19/15-A4
Các cổng vào/ra song Không có CS (mức thấp) A19/15-A0
song
5.2.2 Thiết kế bộ giải mã địa chỉ để ghép nối
VXL với I/O (4 bước)
• B1: Xác định các đường địa chỉ trực tiếp và loại thiết bị ngoại vi
• Loại cổng nào/IC chuyên dụng nào->Các đường địa chỉ trực tiếp
• Thuộc loại thiết bị ngoại vi nào (theo phân loại địa chỉ)->A19/A15
• B2: Xác định số đường tín hiệu chọn chip
• B3: Phân giải địa chỉ cơ sở của các tín hiệu chọn chip
• Các địa chỉ A19/A15 – A0
• B4: Vẽ mạch
5.2.3 Một số ứng dụng ghép nối VXL với ngoại
vi
• a/ Điều khiển LED đơn
• b/ Điều khiển LED 7 đoạn
• c/ Điều khiển bàn phím
• d/ Điều khiển nhiệt độ
5.2.3 Một số ứng dụng ghép nối VXL với ngoại
vi
• a/ Điều khiển LED đơn
• 0: Tắt
• 1: Bật
Bdau:
MOV AL, 0000 0001B
Lap: OUT ĐC cổng, AL
MOV CX,100
Delay: NOP
LOOP Delay
ROL AL, 1
JMP Lap
5.2.3 Một số ứng dụng ghép nối VXL với ngoại
vi
• b/ Điều khiển LED 7 đoạn

; Hiển thị số dư của AX/10 ra LED


MOV BL,10
DIV BL ; AH số dư
MOV AL, AH
OUT ĐC cổng, AL
5.2.3 Một số ứng dụng ghép nối VXL với ngoại
vi
• b/ Điều khiển LED 7 đoạn:
• Quét nguồn
• Lưu ảnh trên võng
(Đèn bị nháy)

-> Lưu ảnh trên võng mạc


(ít nhất 25 lần xuất hiện/1s
-> 40ms xuất hiện lại 1 lần
-> 1 đèn sáng 5ms/40ms
• (Port A)
ĐK cấp nguồn Dữ liệu đèn (Port B)
1111 1110 Đèn D0 (Q7)
1111 0111 Đèn D3 (Q4)
5.2.3 Một số ứng dụng ghép nối VXL với ngoại
vi
• c/ Điều khiển bàn phím
Điều khiển Trạng thái (Cổng Trạng thái phím bấm
5.2.3 Một số ứng dụng ghép nối VXL với ngoại
(Cổng ra) vào)
DDDD DDDD DDDD
vi
3 2 1 0

1111
7 6 5 4

1111 1111
3 2 1 0

Nghỉ, Ko xác định được


phím bấm

1110 c/ Điều 1110
khiển
1111bàn phím
Chưa có phím bấm
1110 1110 0111 Phím C bấm
1110 1110 1011 Phím D bấm
1110 1110 1101 Phím E bấm
1110 1110 1110 Phím F bấm
1101 1101 1111 Chưa có phím bấm
1101 1101 0111 Phím 8 bấm
1101 1101 1011 Phím 9 bấm
1101 1101 1101 Phím A bấm
1101 1101 1110 Phím B bấm
1011
0111
5.2.3 Một số ứng dụng ghép nối VXL với ngoại
vi
• c/ Điều khiển nhiệt độ
• Cổng sensor nhiệt (cổng vào)
• Cổng điều khiển thiết bị (máy lạnh, bếp, đèn, quạt): dữ liệu tắt/bật
• VD: Viết chương trình điều khiển lò ấp trứng. Yêu cầu lò phải duy trì nhiệt độ
trong khoảng từ 30-40 độ, nhiệt độ mỗi trường luôn nhỏ hơn 30 độ. Biết cổng
sensor nhiệt độ là 200 và cổng điều khiển đèn nhiệt là 100 với dữ liệu 1 là tắt
và 0 là bật. Mỗi lần kiểm tra nhiệt độ cách nhau khoảng thời gian tương ứng
1000 lệnh NOP.
. Model Tiny

5.2.3 Một số ứng dụng ghép nối VXL với ngoại


.Stack 100h
.Code
org 100h
viJMP Bdau

Bdau:
• iN
c/AL, 200
Điều khiển nhiệt độ
CMP AL,30
• VD: Viết chương trình điều khiển
JB NH30
lò ấp trứng. Yêu cầu lò phải duy trì
CMP AL,40
JA LH40
nhiệt độ trong khoảng từ 30-40
JMP Xong1lan
độ, nhiệt độ mỗi trường luôn nhỏ
NH30: XOR AL, AL
hơnAL30 độ. Biết cổng sensor nhiệt
OUT 100,
độ là 200 và cổng điều khiển đèn
JMP Xong1lan
LH40: MOV nhiệt
AL,1 là 100 với dữ liệu 1 là tắt và
OUT 100,
0 làALbật. Kiểm tra nhiệt độ thực
JMP Xong1lan
Xong1lan:
hiện sau khoảng thời gian tương
MOV đương
CX, 1000 1000 lệnh NOP.
Delay: NOP
LOOP Delay
JMP BDau

You might also like