Mạch ghép nối vào ra song song lập trình được 8255A

Một phần của tài liệu Kỹ thuật vi xử lý (Trang 149 - 170)

V. GHÉP NỐI 8088 VỚI THIẾT BỊ NGOẠI VI

5.4. Mạch ghép nối vào ra song song lập trình được 8255A

8255A là thiết bị xuất nhập song song lập trình được. Đây là một thiết bị I/O đa dụng có thể sử dụng với bất cứ vi xử lý nào, có thể lập trình để truyền dữ liệu, từ I/O thông thường đến I/O interrupt.

8255A có thể chia ra thành 3 cổng (port) PA, PB, PC; mỗi cổng 8 bit dữ liệu trong đó riêng cổng C có thể sử dụng như 8 bit riêng hay chia thành 2 nhóm cao (PCH - từ PC7 → PC4) và thấp (PCL - từ PC3 →PC0).

8255 có thể hoạt động ở hai chế độ (mode): chế độ vào ra (I/O) và chế độ lập xóa bit cổng C (BSR - Bit Set/Reset).

Chế độ BSR: Dùng để đặt hay xóa các bit cổng C.

Chế độ I/O: Được chia ra thành 3 chế độ sau:

Chế độ 0: ở chế độ này tất cả các cổng PA, PB, PC đều được gọi là các cổng vào hoặc ra.

Chế độ 1 (Chế độ bắt tay -handshake): ở chế độ này các cổng PA, PB được định nghĩa là các cổng vào hoặc ra với các tín hiệu móc nối do các bit tương ứng của cổng C trong cùng nhóm đảm nhiệm. Trong chế độ này, các kiểu truyền dữ liệu I/O có thể được cài đặt, kiểm tra trạng thái và ngắt.

142

Chế độ 2:ở chế độ này chỉ còn cổng PA được định nghĩa là cổng vào hoặc ra với các tín hiệu móc nối do các bit tương ứng của cổng C trong nhóm A đảm nhiệm. Cổng PB làm việc ở chế độ 1 hoặc chế độ 0.

Hình 4.22 trình bày sơ đồ chân tín hiệu của 8255A.

Hình 4.22: Sơ đồ chân 8255A 5.4.2. Sơ đồ khối

Hình 4.17: Sơ đồ khối 8255A Hình 4.17 Sơ đồ khối 8255A Điều khiển

nhóm A

Điều khiển nhóm B Bộ đệm

dữ liệu

Logic điều khiển

Nhóm A PA (8) PCH (4)

Nhóm B PB (8) PCL (4) 𝑅𝐷̅̅̅̅

𝑊𝑅̅̅̅̅̅

𝐶𝑆̅̅̅̅

A1

A0 PC3 + PC0

PB7 + PB0 PA7 + PA0

PC7 + PC4

D7 + D0

143

Hình 4.17 biểu diễn sơ đồ khối của 8255A. Logic điều khiển của 8255A gồm có 6 đường:

 𝑹𝑫̅̅̅̅̅ (Read): Cho phép đọc dữ liệu. Chân tín hiệu 𝑅𝐷̅̅̅̅ tích cực ở mức thấp.

 𝑾𝑹̅̅̅̅̅ (Write): Cho phép ghi dữ liệu. Chân tín hiệu 𝑊𝑅̅̅̅̅̅ tích cực ở mức thấp.

RESET: Chân tín hiệu tích cực mức cao để xóa thanh ghi từ điều khiển (CWR- Control Word Register) và đặt các cổng ở chế độ nhập.

 𝑪𝑺̅̅̅̅ (Chip Select): Chân tín hiệu chọn chip, thông thường 𝐶𝑆̅̅̅̅ nối với các địa chỉ giải mã.

A1, A0: Giải mã xác định cổng theo bảng 4.12.

Bảng 4.12: Giải mã tín hiệu chọn cổng

𝑪𝑺̅̅̅̅ A1 A0 Chọn

0 0 0 Cổng A (PA) 0 0 1 Cổng B (PB) 0 1 0 Cổng C (PC)

0 1 1 Thanh ghi từ điều khiển 1 x x 8255 không hoạt động Ví dụ:

Giả sử địa chỉ cổng PA bằng 60h. Tính địa chỉ cổng PB, PC và CWR.

Giải:

Từ bảng 4.13 ta có địa chỉ cổng PA = 60h; PB =61h; PC =62h; CWR = 63h.

Bảng 4.13: Xác định địa chỉ cho các cổng

A7 A6 A5 A4 A3 A2 A1 A0 Chọn

0 1 1 0 0 0 0 0 PA

0 1 1 0 0 0 0 1 PB

0 1 1 0 0 0 1 0 PC

0 1 1 0 0 0 1 1 CWR

Thanh ghi từ điều khiển (CWR – Control Word Register)

Như đã biết 8255A có 2 chế độ hoạt động và các cổng của thiết bị có thể có các chức năng I/O khác nhau. Để xác định chức năng của các cổng, 8255A có một

144

từ điều khiển (CR). Thanh ghi từ điều khiển sẽ được truy xuất khi A1 = A0 = 1. Lưu ý rằng ta không thể thực hiện tác vụ đọc đối với thanh ghi này.

 Từ điều khiển định nghĩa cấu hình các cổng PA, PB, PC ở chế độ vào ra được mô tả trong hình 4.18.

Hình 4.18: Dạng từ điều khiển cho 8255 ở chế độ I/O

 Từ điều khiển lập/xóa bit ra PCi được mô tả trong hình 4.19.

Hình 4.19: Dạng từ điều khiển cho 8255 ở chế độ BSR 5.4.3. Mode 0: Xuất nhập đơn giản

Trong chế độ này, mỗi cổng làm việc như các cổng nhập hay xuất với các tính chất các đầu ra được chốt, các đầu vào không được chốt và đặc biệt các cổng không có khả năng bắt tay và ngắt.

Để giao tiếp với ngoại vi thông qua 8255 A cần phải:

Mã hóa PCi 000: PC0 001: PC1 111: PC7

1: Lập PCi 0: Xóa PCi

0 0 0 0 S/R

145

 Xác định địa chỉ các cổng PA, PB, PC và thanh ghi từ điều khiển CWR thông qua các chân chộn chip 𝐶𝑆̅̅̅̅ và giải mã A1, A0.

 Ghi từ điều khiển vào thanh ghi từ điều khiển.

 Ghi các lệnh I/O để giao tiếp với ngoại vi qua các cổng PA, PB, PC.

5.4.4. Mode 1: Nhập/xuất với bắt tay (handshake)

Trong mode 1, các tín hiệu bắt tay được trao đổi giữa vi xử lý và thiết bị ngoại vi trước khi truyền dữ liệu. Các đặc tính ở chế độ này là:

 Hai cổng PA, PB làm việc như các cổng vào ra 8 bit.

 Mỗi cổng sử dụng 3 đường từ cổng C làm các tín hiệu bắt tay. Hai đường còn lại có thể dùng cho các chức năng I/O đơn giản.

 Dữ liệu nhập/xuất được chốt.

 Hỗ trợ ngắt.

Các tín hiệu điều khiển nhập

Hình 4.20: Cấu hình nhập của 8255A ở mode 1

146

Theo hình 4.20, ta thấy cổng A dùng 3 đường tín hiệu trên PC3, PC4 và PC5;

Cổng B dùng 3 đường tín hiệu trên PC0, PC1 và PC2 làm các tín hiệu bắt tay. Cá tín hiệu này có các chức năng sau khi các cổng A và B được đặt cấu hình là nhập:

 𝑺𝑻𝑩̅̅̅̅̅̅ (Strobe Input): Tích cực mức thấp, tín hiệu này được tạo bởi các thiết bị ngoại vi để xác định rằng ngoại vi đã truyền 1 byte dữ liệu. Khi 8255A đáp ứng 𝑆𝑇𝐵̅̅̅̅̅̅, nó sẽ tạo ra IBF và INTR như trong hình 4.21.

IBF (Input Buffer Full): Tín hiệu này dùng để xác nhận 8255A đã nhận byte dữ liệu. Nó sẽ bị xóa khi vi xử lý đọc dữ liệu.

INTR (Interrupt Request): Đây là tín hiệu xuất dùng để ngắt vi xử lý. Nó được tạo ra nếu 𝑆𝑇𝐵̅̅̅̅̅̅, IBF và INTE (flipflop bên trong) đều ở mức logic 1 và bị xóa bởi cạnh xuống của tín hiệu 𝑅𝐷̅̅̅̅ như trong hình 4.21.

Hình 4.21: Biểu đồ thời gian các tín hiệu của 8255A ở chế độ 1 - vào

INTE (Interrupt Enable): là một flipflop đùng để cho phép hay cấm quá trình tạo ra tín hiệu INTR. Hai flipflop INTEA và INTEB được đặt/xóa dùng BSR mode thông qua PC4 và PC2.

Tín hiệu trạng thái vào được trình bày trong hình 4.22.

I/O I/O IBFA INTEA INTRA INTEB IBFB INTRB Hình 4.22: Tín hiệu trạng thái vào

147

Các tín hiệu điều khiển xuất

Hình 4.23: Cấu hình xuất của 8255A ở mode 1 Theo hình 4.23, chức năng các đường tín hiệu:

 𝑶𝑩𝑭̅̅̅̅̅̅ (Output Buffer Full): Tín hiệu này sẽ xuống mức thấp khi vi xử lý ghi dữ liệu vào cổng xuất của 8255A. Tín hiệu này đưa đến thiết bị ngoại vi để xác định dữ liệu sẵn sàng đưa vào ngoại vi như trong hình 4.23. Tín hiệu này sẽ lên mức cao khi 8255A nhận 𝐴𝐶𝐾̅̅̅̅̅̅ từ ngoại vi.

 𝑨𝑪𝑲̅̅̅̅̅̅ (Acknowledge): Đây là tín hiệu nhập từ ngoại vi (tích cực mức thấp) xác nhận dữ liệu đã nhập vào ngoại vi.

INTR (Interrup Request): Đây là tín hiệu xuất, đặt bằng sườn lên của tín hiệu 𝐴𝐶𝐾̅̅̅̅̅̅. Tín hiệu này có thể dùng để ngắt vi xử lý theo yêu cầu của cổng PA. INTR được đặt khi 𝑂𝐵𝐹̅̅̅̅̅̅, 𝐴𝐶𝐾̅̅̅̅̅̅ và INTE ở mức logic 1 và được xóa bởi cạnh xuống của tín hiệu 𝑊𝑅̅̅̅̅̅ như trong hình 4.24.

148

Hình 4.24: Biểu đồ thời gian các tín hiệu của 8255A ở chế độ 1- ra

INTE (Interrupt Enable): Đây là flipflop nội dùng để tạo tín hiệu INTR.

Hai flipflop INTEA và INTEB điều khiển bằng các bit PC6 và PC2 thông qua BSR mode.

Tín hiệu trạng thái ra được trình bày trong hình 4.25.

𝑂𝐵𝐹̅̅̅̅̅̅ INTEA I/O I/O INTRA INTEB OBFB̅̅̅̅̅̅̅ INTRB Hình 4.25: Tín hiệu trạng thái ra

5.4.5. Mode 2: Bus hai chiều - Truyền dữ liệu theo 2 hướng

Trong chế độ này, cổng PA dùng làm cổng hai chiều và cổng PB làm việc ở chế độ 1 hoặc 0. Cổng PA sử dụng 5 tín hiệu tại cổng PC làm các tín hiệu điều khiển để truyền dữ liệu. Ba tín hiệu còn lại của cổng PC được dùng làm I/O đơn giản hay bắt tay cho cổng PB.

Ví dụ:

1. Giả thiết mạch 8255A có các địa chỉ sau:

PA = 7Ch; PB = 7Dh; PC = 7Eh; CWR = 7Fh

Lập trình để định nghĩa chế độ 0 cho 8255A với cấu hình các cổng như sau:

Cổng A ra, cổng B vào , PCH ra, PCL vào.

Sau đó đọc các giá trị dữ liệu có tại PB rồi đưa ra PA và PCL rồi đưa ra PCH.

Giải:

Định nghĩa các hằng cho cổng, thanh ghi từ điều khiển và cho từ điển khiển nhờ lệnh giả EQU.

149

PA EQU 7Ch PB EQU 7Dh PC EQU 7Eh CWR EQU 7Fh

CW EQU 83h ; từ điều khiển cho yêu cầu trên 83h = 10000011 Sau đó dùng hằng đó vào việc định nghĩa cấu hình cho 8255A:

MOV AL, CW OUT CWR, AL IN AL, PB OUT PA, AL IN AL, PC MOV CL, 4 ROL AL, CL OUT PC, AL

; từ điều khiển trong AL

; đưa CW vào CWR

; đọc cổng PB

; đưa dữ liệu đọc được ra cổng PA

; đọc cổng PCL

; số lần quay AL

; chuyển 4 bit thấp thành 4 bit cao

; đưa dữ liệu đọc được ra cổng PCH.

2. Lập trình để bit PC4 của 8255A ở ví dụ trên tạo ra 256 xung với T = 50ms, độ rộng 50%. Giả thiết đã có sẵn chương trình con trễ 25ms là TRE25MS.

Giải:

Sử dụng các ký hiệu ở ví dụ trên và các định nghĩa mới PC4ON EQU 09h

PC4OFF EQU 08h

; từ điều khiển để PC4 = 1 (ON) - 00001001b

; từ điều khiển để PC4 = 0 (OFF) - 00001000b

Ta có mẫu chương trình sau:

LAP:

MOV CX, 100h CLI

MOV AL, PC4ON OUT PC, AL

CALL TRE25MS MOV AL, PC4OFF CALL TRE25MS

; số xung cần tạo ra

; cấm ngắt để yên tâm tạo xung

; từ điều khiển cho PC4 = 1

; PC4 =1

; kéo dài 25ms

; PC4 = 0

; kéo dài 25ms

150

LOOP LAP STI

...

; lặp cho đủ số xung

; cho phép ngắt trở lại

Trong ví dụ trên ta chú ý lệnh CLI (để cấm ngắt) và lệnh STI (để cho phép ngắt) ở đầu và cuối đoạn chương trình tính thời gian tạo ra dãy xung.

Điều này là cần thiết vì ta dùng chương trình để tạo ra các khoảng thời gian và vì thế ta muốn các yêu cầu ngắt (nếu có) không ảnh hưởng tới việc tạo ra các khoảng thời gian đó.

3. Cho mạch 8255A với địa chỉ cơ sở là 30H nối với các phần tử ngoại vi đơn giản (hình 4.27). Lập trình để có U1 > U2 thì đọc trạng thái công tắc K, nếu K đóng thì cho đèn LED tắt, nếu K mở thì cho đèn LED sáng.

Giải:

Ta phải định nghĩa các hằng và từ điều khiển để định nghĩa cấu hình cho cổng PA vào, cổng PB vào và cổng PCH là ra.

Khi U1 > U2 thì ta đọc được PB7 = 1 (còn khi U1 < U2 thì PB7 = 0). Lúc này ta phải đọc trạng thái công tắc K để điều khiển đèn LED, nếu K đóng thì ta đọc được PB7 = 0 và ta phải đưa ra PC4 = 0 để tắt đèn.

Hình 4.26: 8255A và các thiết bị ngoại vi đơn giản Định nghĩa các hằng số:

PA EQU 30h PB EQU 31h PC EQU 32h CWR EQU 33h

CW EQU 92h ; từ điều khiển cho yêu cầu trên 92h = 10010010

8255A +

-

U1 U2

Bộ so sánh số

LED

K

CPU PC4

+ 5V

PA1

PB7

151

Đoạn chương trình còn lại là:

ĐọcPB:

Tắt:

RA:

MOV AL, CW OUT CWR, AL IN AL, PB AND AL, 80h JZ DocPB IN AL, PA AND AL, 01h JZ Tat MOV CL, 4 ROL AL, CL OUT PC, AL JMP RA OUT PC, AL

; từ điều khiển trong AL

; đưa CW vào CWR

; đọc cổng PB

; PB7 = 1?

; đọc lại

; đọc cổng PA

; khóa K đóng (PA1 - 0)?

; đúng thì tắt đèn

; đổi bit 0 lên bit 4

; đưa tín hiệu thắp đèn

; đưa tín hiệu ra tắt đèn

152

BÀI TẬP ÔN TẬP Bài tập trắc nghiệm

1. Số lần ROM có thể ghi là:

a. Một lần b. Vài trăm lần c. Vài nghìn lần d. Tùy loại ROM

2. Tín hiêu nào báo trên các chân đa hợp AD0 đến AD15 đang có tín hiệu địa chỉ?

a. ALE b. ~DEN c. IO/~M d. Cả a và c

3. Dung lượng tối đa của RAM có thể cắm trên main board của máy tính phụ thuộc:

a. Số đường địa chỉ của CPU

b. Số đường địa chỉ của CPU và cách quản lý địa chỉ của CPU c. Số lượng khe cắm RAM có ở trên main

d. Không gian địa chỉ đã được định sẵn dành cho RAM 4. Cấp nào của bộ nhớ có dung lượng lớn nhất?

a. Cấp 2, bộ nhớ ROM b. Cấp 2, bộ nhớ RAM c. Cấp 3, các ổ đĩa ngoài d. Cấp 4, bộ nhớ mạng

5. Vi xử lý 8088 có mấy nhóm chân?

a. 2 b. 3 c. 4 d. 5

6. "Vừa phát ra tín hiệu địa chỉ, vừa phát/nhận tín hiệu dữ liệu" là mô tả cho nhóm chân nào?

a. Nhóm chân địa chỉ/dữ liệu

b. Nhóm chân điều khiển chung cho cả 2 chế độ

c. Nhóm chân tín hiệu điều khiển ở chế độ MIN (tối thiểu) d. Nhóm chân tín hiệu điều khiển ở chế độ MAX (tối đa)

153

7. Khi cần tạo xung nhịp cho 8088, người ta thường dùng vi mạch phụ trợ nào?

a. 8284 b. 8288 c. 9257 d. 8286

8. Khi cần tạo tín hiệu điều khiển bus cho 8088, người ta thường dùng vi mạch phụ trợ nào?

a. 8284 b. 8288 c. 9257 d. 8286

9. Dùng các ma trận nhớ flipflop để lưu trữ dữ liệu là đặc trưng của loại RAM nào?

a. SRAM b. DRAM c. SDRAM d. DDRAM

10. Được tạo ra bằng các cổng transistor và lưu trữ bằng các điện tích là đặc trưng của loại RAM nào?

a. SRAM b. DRAM c. ROM

d. Cả a, b, c đều đúng

11. Tín hiệu điều khiển đọc ô nhớ là:

a. 𝑅𝐷̅̅̅̅

b.𝑊𝑅̅̅̅̅̅

c.CS̅̅̅

d. Cả a, b, c đều sai

12. Tín hiệu điều khiển ghi ô nhớ là:

a. 𝑅𝐷̅̅̅̅

b.𝑊𝑅̅̅̅̅̅

c.CS̅̅̅

d. Cả a, b, c đều đúng

154

13. Tín hiệu điều khiển chọn ô nhớ là:

a. 𝑅𝐷̅̅̅̅

b.𝑊𝑅̅̅̅̅̅

c.CS̅̅̅

d. Cả a, b, c đều đúng

14. Bước thứ 2 cần thực hiện khi ghép nối 8086 với bộ nhớ RAM là?

a. Xác định số đường địa chỉ b. Xác định số IC

c. Xác định dải địa chỉ cho RAM d. Xác định dải địa chỉ cho ROM 15. Dung lượng của vi mạch ROM 27256 là:

a. 32 KB b. 64 KB c. 213B d. 128 Kbit

16. Vi xử lý truy nhập tới bộ nhớ thuộc cấp nào nhanh nhất?

a. Cấp 0, tệp các thanh ghi nội b. Cấp 1, Cache

c. Cấp 2, bộ nhớ ROM d. Cấp 2, bộ nhớ RAM

17. Nếu dùng vùng địa chỉ từ FFFF0H đến FFFFF(H) thì có thể quản lý được bao nhiêu địa chỉ ?

a. 256 b. 16 c. 64

d. Cả a, b, c đều sai

18. Bước thứ 3 cần thực hiện khi ghép nối 8086 với bộ nhớ RAM là?

a. Xác định số IC

b. Xác định dải địa chỉ cho RAM c. Xác định dải địa chỉ cho ROM d. Xây dựng sơ đồ ghép nối cho RAM

155

19. Đặc trưng của bộ nhớ ROM là:

a. Chỉ đọc b. Chỉ ghi

c. Vừa đọc, vừa ghi được d. Không đọc và không ghi 20. Đặc trưng của bộ nhớ RAM là:

a. Chỉ đọc b. Chỉ ghi

c. Vừa đọc, vừa ghi được d. Không đọc và không ghi

21. "Số ngăn nhớ x khả năng nhớ được của một ngăn nhớ" là cách tính dung lượng nhớ của bộ nhớ tổ chức theo kiểu:

a. Tuyến tính b. Theo hàng c. Theo cột

d. Ma trận hàng và cột

22. "Dung lượng các ngăn nhớ hàng x Số ngăn nhớ cột " là cách tính dung lượng nhớ của bộ nhớ tổ chức theo kiểu:

a. Tuyến tính b. Theo hàng c. Theo cột

d. Ma trận hàng và cột

23. Bước đầu tiên cần thực hiện khi ghép nối 8086 với bộ nhớ RAM là?

a. Xác định số đường địa chỉ b. Xác định số IC

c. Xác định dải địa chỉ cho RAM d. Xác định dải địa chỉ cho ROM

24. Bước thứ 4 cần thực hiện khi ghép nối 8086 với bộ nhớ RAM là?

a. Xác định số IC

b. Xác định dải địa chỉ cho RAM c. Xác định dải địa chỉ cho ROM d. Xây dựng sơ đồ ghép nối cho RAM

156

25. Hình vẽ dưới đây minh họa cho cách ghép nối 8088 với bộ nhớ bằng?

a. NAND b. IC giải mã c. PROM

d. Cả a, b, c đều sai

26. Hình vẽ dưới đây minh họa cho cách ghép nối 8088 với bộ nhớ bằng?

a. NAND b. IC giải mã c. PROM

d. Cả a, b, c đều sai

157

27. Hình vẽ dưới đây minh họa cho cách ghép nối 8088 với bộ nhớ bằng?

a. NAND b. IC giải mã c. PROM

d. Cả a, b, c đều sai

28. Có mấy cách phối ghép CPU với các thiết bị ngoại vi a. 1

b. 2 c. 3 d. 4

29. Kiểu xuất nhập của vi mạch 8255A là:

a. Song song b. Tuần tự c. Rẽ nhánh d. Lặp

30. Vi mạch 8255A gồm có mấy cổng?

a. 1 b. 2 c. 3 d. 4

158

31. Vi mạch 8255A hoạt động ở mấy chế độ a. 1

b. 2 c. 3 d. 4

32. Chế độ BSR của 8255A là:

a. Chế độ nhập/xuất với bắt/tay b. Chế độ lập hay xóa các bit cổng C c. Chế độ bus 2 chiều

d. Chế độ ngắt 33. Mode 0 của 8255A là:

a. Chế độ nhập/xuất với bắt/tay b. Chế độ nhập/xuất đơn giản c. Chế độ bus 2 chiều

d. Chế độ ngắt 34. Mode 1 của 8255A là:

a. Chế độ nhập/xuất với bắt/tay b. Chế độ nhập/xuất đơn giản c. Chế độ bus 2 chiều

d. Chế độ ngắt 35. Mode 2 của 8255A là:

a. Chế độ nhập/xuất với bắt/tay b. Chế độ nhập/xuất đơn giản c. Chế độ bus 2 chiều

d. Chế độ ngắt

36. Trong các tín hiệu sau đây, tín hiệu nào không phải là tín hiệu điều khiển nhập?

a. 𝑆𝑇𝐵̅̅̅̅̅̅

b. IBF c. INTE d. INTR

159

37. Trong các tín hiệu sau đây, tín hiệu nào không phải là tín hiệu điều khiển xuất?

a. 𝑆𝑇𝐵̅̅̅̅̅̅

b. OBF̅̅̅̅̅̅

c. INTE d. INTR

38. Logic điều khiển của 8255A gồm bao nhiêu đường:

a. 2 b. 4 c. 6 d. 8

39. Cổng vào ra của vi mạch 8255 có:

a. 2 bit b. 4 bit c. 6 bit d. 8 bit

40. Vi mạch 8255 là:

a. Mạch ghép nối song song lập trình được b. Mạch tạo tín hiệu điều khiển

c. Mạch tạo xung đồng bộ d. Mạch tạo tín hiệu ngắtD

160

Bài tập tự luận

1. Ghép nối 8088 với bộ nhớ, sử dụng bộ giải mã 74LS138 hoặc 74LS139 để xây dựng mạch ghép nối có 192 KB bộ nhớ SRAM sử dụng SRAM 62256, bắt đầu từ địa chỉ 30000H.

2. Ghép nối 8086 với IC nhớ 27256 để được vùng nhớ có địa chỉ bắt đầu là C0000H và địa chỉ kết thúc là EFFFFH

3. Cho sơ đồ sau:

(a)

(b)

Từ sơ đồ ghép nối xác định tên IC nhớ. Xác định dải địa chỉ cần ghép nối (làm bước 1 và bước 2). Lưu ý: Chân CE = Chip Enable  CS = Chip Select.

4. Cho địa chỉ cổng vào ra cơ sở là C00H, C02H, C04H. Hãy biện luận và vẽ lại mạch ghép nối.

161

5. Cho 8255 có địa chỉ cổng cơ sở là 100H, sử dụng chân A2 – A1 của VXL 8086 với chân A1 – A0 của 8255. Cổng A4 được nối với 1 Công tắc SW và được nối đầu còn lại của SW lên nguồn. Có 8 LED đơn được mắc vào PB0->PB3 và PC4->PC7 theo kiểu Catot chung. Lập trình điều khiển 8 LED để khi bấm SW thì 8 LED sáng lần lượt với hàm trễ 1s đã được thiết lập trước: DELAY_1S.

6. Cho mạch sau:

Giải mã địa chỉ cổng và lập trình cho 8255 hoạt động ở chế độ 0. Thực hiện khởi tạo LCD bằng chương trình con LCD_Init. Sau đó nếu chân PC5 phát tín hiệu cho R/~Wđể ghi dữ liệu thì LCD được ghi “Hello TC406” bằng chương trình con LCD_Write.

Một phần của tài liệu Kỹ thuật vi xử lý (Trang 149 - 170)

Tải bản đầy đủ (PDF)

(251 trang)