1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài giảng Kỹ thuật Vi xử lý

45 159 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 45
Dung lượng 0,97 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Khuyết điểm của thăm dò• Tốn nhiều thời gian • NgườI sử dụng có thể nhả phím trước khi lệnh in al, dx được thực hiện, do đó bộ vi xi xử lý sẽ không biết rằng ngườI sử dụng đã nhấn phím

Trang 1

Bài giảng Kỹ thuật Vi xử lý

Ngành Điện tử-Viễn thông Đại học Bách khoa Đà Nẵng của Hồ Viết Việt, Khoa ĐTVT

Tài liệu tham khảo [1] Kỹ thuật vi xử lý, Văn Thế Minh, NXB Giáo dục, 1997 [2] Kỹ thuật vi xử lý và Lập trình Assembly cho hệ vi xử

lý, Đỗ Xuân Tiến, NXB Khoa học & kỹ thuật, 2001

Trang 2

Chương 6 Các kiểu I/O

Trang 3

Thăm dò

mov dx, F000 L1: in al, dx

cmp al, FF

je L1

: :

A 1 5

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

74LS245

B0 B1 B2 B3 B4 B5 B6 B7

A0 A1 A2 A3 A4 A5 A6 A7

A 1 4

A 1 3

A 1 2

A 1 1

A 1 0

A 9

A 8

A 7

A 6

A 5

A 4

A 3

A 2

A 1

A

0 IOR

5V

Trang 4

The Circuit

A 1 5

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

A 1 4

A 1 3

A 1 2

A 1 1

A 1 0

A 9

A 8

A 7

A 6

A 5

A 4

A 3

A 2

A 1

A 0 IOR

5V

74LS245

B0 B1 B2 B3 B4 B5 B6 B7

A0 A1 A2 A3 A4 A5 A6 A7

74LS373

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

D0 D1 D2 D3 D4 D5 D6 D7

OE LE

Trang 5

Bài toán

• Chương trình tạo ra hiệu ứng “LED chạy”:

- Ban đầu LED chạy từ trên xuống

- Khi nhấn phím thấp nhất thì LED thay đổi hướng chạy

- Khi nhấn phím cao nhất thì chương trình kết thúc

Trang 6

Chương trình

mov dx, F000 mov ah, 00 mov al, 01

mov cx, FFFF

jnz L2 cmp ah, 00 jne L3

rol al, 1 cmp al, 01 jne L1

je L6 test al, 01 jnz L5

xor ah, FF jmp L6

L5: test al, 80

jz L7 L6: mov al, bl

jmp L1 L7:

Trang 7

Khuyết điểm của thăm dò

• Tốn nhiều thời gian

• NgườI sử dụng có thể nhả phím trước khi lệnh in al, dx được thực hiện, do đó

bộ vi xi xử lý sẽ không biết rằng ngườI sử dụng đã nhấn phím

• Làm sao để khắc phục các khuyết điểm đó?

Trang 8

Khuyết điểm của thăm dò

mov dx, F000 mov ah, 00 mov al, 01

mov cx, FFFF

jnz L2 cmp ah, 00 jne L3

rol al, 1 cmp al, 01 jne L1

jmp L4

L4: mov bl, al

in al, dx cmp al, FF

je L6 test al, 01 jnz L5

xor ah, FF jmp L6

L5: test al, 80

jz L7 L6: mov al, bl

jmp L1 L7:

Trang 9

Ngắt là gì?

Trang 10

Thăm dò

check the bucket every

5 minutes to see if it is

already full so that I can

transfer the content of

the bucket to the drum.

Input Device

Memory instruction

Trang 11

speaker starts playing

music it means that the

bucket is full I can

content of the bucket to

the drum.

Input Device

Memory

P instruction

INTERRUPT

Interrupt request

Trang 12

Interrupt- Ngắt

• Bộ vi xử lý không cần phải kiểm tra tính

sẵn sàng của thiết bị I/O.

• Các thiết bị I/O sẽ báo cho vi xử lý biết khi chúng đã sẵn sàng

• Bộ vi xử lý có thể làm công việc khác khi thiết bị I/O không có nhu cầu trao đổI dữ liệu

Trang 13

– Số ngắt

– Bảng các vector ngắt

Trang 14

Interrupt Service Routine (ISR) - Chương trình con phục vụ ngắt

Interrupt vector - Vector ngắt

• Là chương trình được thực hiện khi có

một yêu cầu ngắt được chấp nhận

• Kết thúc bằng lệnh IRET

• Địa chỉ của chương trình con phục vụ ngắt

• Bao gồm 4 byte:

– 2 byte cho địa chỉ Offset

– 2 byte cho địa chỉ Segment

Trang 15

Interrupt Vector Number

Số ngắt

• Là một số được dùng để phân biệt các

yếu cầu ngắt Bởi vì có thể có nhiều hơn một thiết bị phát yêu cầu ngắt đến bộ vi xử

lý cho nên để cho bộ vi xử lý có thể nhận biết được thiết bị thì mỗI thiết bị sẽ được gán cho một số ngắt

• Trong hệ thống 8088, co thể có đến 256

số ngắt (từ 00h đến FFh)

Trang 16

Interrupt Vector Table Bảng các vector ngắt

• Là vùng nhớ được dành riêng để lưu trữ các vector ngắt

• Có thể xem như là một mảng các vector ngắt

– Mảng này có 256 phần tử

– Mỗi phần tử gồm 4 byte: 2 byte đầu lưu địa

chỉ offset, 2 byte sau lưu địa chỉ segment

– Các vector ngắt được lưu trữ theo trật tự tăng dần của số ngắt

Trang 17

Bảng các vector ngắt

Trang 18

Phản ứng của vi xử lý khi không có

4 Bộ vi xử lý giải mã và thực hiện lệnh nếu tất cả các byte lệnh

của một lệnh đã được lấy

Trang 19

Phản ứng của vi xử lý khi có ngắt

• Thiết bị I/O đưa yêu cầu ngắt đến bộ vi xử lý bằng cách làm

cho đầu vào ngắt INTR chuyển sang mức cao

6 Bộ vi xử lý sẽ hoàn thành lệnh đang thực hiện trước khi chấp

nhận ngắt

7 Bộ vi xử lý chấp nhận ngắt bằng cách đưa ra tín hiệu chấp

nhận ngắt ở mức thấp từ chân INTA Lúc này thiết bị I/O sẽ làm cho tín hiệu ở INTR chuyển về mức thấp

8 Thiết bị I/O sẽ đưa số ngắt được gán cho nó đến bộ vi xử lý

thông qua D-Bus Bộ vi xử lý sẽ lưu trữ số ngắt này vào một thanh ghi tạm thời

Trang 20

Phản ứng của vi xử lý khi có ngắt

9 Bộ vi xử lý lưu giá trị hiện thời của thanh ghi cờ vào stack

10 Bộ vi xử lý xoá cờ ngắt

11 Bộ vi xử lý lưu giá trị hiện thời của CS vào stack

12 Bộ vi xử lý lưu giá trị hiện thờI của IP vào stack

13 Bộ vi xử lý nhân số ngắt với 4 Kết quả này chính là địa chỉ

của nơi lưu trữ vector ngắt tương ứng trong bảng các vector ngắt Hai byte đầu tiên của vector ngắt được copy vào IP và hai byte tiếp theo được copy vào CS

14 Quay trở về bước 2

Trang 21

8088 và một thiết bị ra đơn giản

A 1 5

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

A 1 4

A 1 3

A 1 2

A 1 1

A 1 0

A 9

A 8

A 7

A 6

A 5

A 4

A 3

A 2

A 1

A

0 IOW

74LS373

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

D0 D1 D2 D3 D4 D5 D6 D7

OE LE

Trang 22

8088 và một thiết bị vào đơn giản

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

74LS245

B0 B1 B2 B3 B4 B5 B6 B7

A0 A1 A2 A3 A4 A5 A6 A7

5V

Trang 23

8088 và thiết bị vào hoạt động theo cơ chế ngắt

INTR

A 1 5

8088 Minimum

Mode

A18

A0 :

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

74LS245

B7 B6 B5 B4 B3 B2 B1 B0

A7 A6 A5 A4 A3 A2 A1 A0

E

DIR

A 1 4

A 1 3

A 1 2

A 1 1

A 1 0

A 9

A 8

A 7

A 6

A 5

A 4

A 3

A 2

A 1

A 0 IOR

5V

INTR INTA

Trang 24

8088 và một thiết bị vào hoạt động theo cơ chế ngắt

INTR

D set Q

5V 5V

8088

Minimum

Mode

A18 A0 :

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

74LS245

B0 B1 B2 B3 B4 B5 B6 B7

A7 A6 A5 A4 A3 A2 A1 A0

E

DIR

5V

INTR INTA

Trang 25

8088 và một thiết bị vào hoạt động theo cơ chế ngắt

A 1 5

8088

Minimum

Mode

A18 A0 :

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

74LS245

B7 B6 B5 B4 B3 B2 B1 B0

A7 A6 A5 A4 A3 A2 A1 A0

E

DIR

A 1 4

A 1 3

A 1 2

A 1 1

A 1 0

A 9

A 8

A 7

A 6

A 5

A 4

A 3

A 2

A 1

A 0 IOR

5V

INTR

D set Q

Q clr

5V 5V

INTR INTA

INTA

Trang 26

8088 và một thiết bị vào hoạt động theo cơ chế ngắt

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

74LS245

B7 B6 B5 B4 B3 B2 B1 B0

A7 A6 A5 A4 A3 A2 A1 A0

74LS245

B7 B6 B5 B4 B3 B2 B1 B0

A7 A6 A5 A4 A3 A2 A1 A0

E

DIR

D7 D6 D5 D4 D3 D2 D1 D0

INTA

5V

Trang 27

8088 và một thiết bị vào hoạt động theo cơ chế ngắt

A 1 5

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

74LS245

B7 B6 B5 B4 B3 B2 B1 B0

A7 A6 A5 A4 A3 A2 A1 A0

E

DIR

A 1 4

A 1 3

A 1 2

A 1 1

A 1 0

A 9

A 8

A 7

A 6

A 5

A 4

A 3

A 2

A 1

A 0 IOR

5V

INTR

D set Q

Q clr

5V

5V

INTR INTA

INTA

74LS245

B7 B6 B5 B4 B3 B2 B1 B0

A7 A6 A5 A4 A3 A2 A1 A0

E

DIR

D7 D6 D5 D4 D3 D2 D1 D0

INTA

5V

RESET

INT 3

Trang 28

The Circuit

A 1 5

D7 D6

IOR IOW

A19

D5 D4 D3 D2 D1 D0

A 1 4

A 1 3

A 1 2

A 1 1

A 1 0

A 9

A 8

A 7

A 6

A 5

A 4

A 3

A 2

A 1

A 0 IOR

5V

74LS245

B0 B1 B2 B3 B4 B5 B6 B7

A0 A1 A2 A3 A4 A5 A6 A7

74LS373

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

D0 D1 D2 D3 D4 D5 D6 D7

OE LE

Trang 29

Chương trình chính

mov ds, ax mov bx, 000C mov ax, 2800 mov [bx], ax mov ax, 5000 mov [bx+02], ax sti

mov dx, F000 mov ah, 00 mov al, 01

je L4 out dx, al mov cx, FFFF

jnz L2 cmp ah, 00 jne L3

rol al, 1 jmp L1

jmp L1 L4:

Trang 30

Chương trình con phục vụ ngắt (ISR)

mov bl, al

in al, dx test al, 01 jnz S1

xor ah, FF jmp S2

S1: test al, 80

jnz S2 mov ah, 88 S2: mov al, bl

Trang 31

8259

Trang 32

ICW

Trang 33

ICW1, ICW2

Trang 34

ICW3, ICW4

Trang 36

OCW1 và OCW2

Trang 37

OCW3

Trang 38

8259 đơn

ICW1: 13H

ICW2: 08H

ICW3: 09H

Trang 39

Interrupt Sources in PC

Trang 40

Sources of NMI

Trang 41

8259s nối tầng

Trang 42

8259s nối tầng

Trang 43

IRQ9 Instead of IRQ2

Trang 44

Interrupts (Summary)

Trang 45

Edge Triggered and Interrupt

Ngày đăng: 09/06/2015, 15:34

HÌNH ẢNH LIÊN QUAN

Bảng các vector ngắt - Bài giảng Kỹ thuật Vi xử lý
Bảng c ác vector ngắt (Trang 17)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w