Ngắt ( INTERRUPT)

Một phần của tài liệu Giám sát và điều khiển thiết bị qua mạng điện thoại (Trang 26 - 28)

- Một ngắt là sự xảy ra một điều kiện - một sự kiện – làm cho chương trình hiện hành bị tạm ngưng trong khi điều kiện đĩ được phục vụ bởi một chương trình khác.

- Các ngắt đĩng một vai trị quan trọng trong thiết kế và cài đặt các ứng dụng vi điều khiển. Chúng cho phép hệ thống đáp ứng theo cách khơng đồng bộ và giải quyết sự kiện đĩ trong khi một chương trình khác đang thực thi.

Ø Tổ chức ngắt của 89C51:

Cĩ 5 nguồn ngắt ở 8051: 2 ngắt ngoài, 2 ngắt từ timer và 1 ngắt port nối tiếp. Tất cả các ngắt theo mặc nhiên đều bị cấm sau khi reset hệ thống và được cho phép từng cái một bằng phần mềm.

Khi cĩ hai hoặc nhiều ngắt đồng thời, hoặc một ngắt xảy ra khi một ngắt khác đang được phục vụ, cĩ cả hai sự tuần tự hỏi vịng và sơ đồ ưu tiên hai mức dùng để xác định việc thực hiện các ngắt. Việc hỏi vịng tuần tự thì cố định nhưng ưu tiên ngắt thì cĩ thể lập trình được.

Ø Cho phép và cấm ngắt :

Mỗi nguồn ngắt được cho phép hoặc cấm ngắt qua một thanh ghi chức năng đặc biệt cĩ định địa chỉ bit. Thanh ghi IE (Interrupt Enable : cho phép ngắt ) ở địa chỉ A8H.

Bảng 3.8

Bit Ký hiệu Ðịa chỉ bit Mơ tả

IE.7 EA AFH Cho phép / Cấm toàn bộ

IE.6 _ AEH Khơng được mơ tả

IE.5 ET2 ADH Cho phép ngắt từ Timer 2 (8052) IE.4 ES ACH Cho phép ngắt port nối tiếp IE.3 ET1 ABH Cho phép ngắt từ Timer 1 IE.2 EX1 AAH Cho phép ngắt ngoài 1 IE.1 ET0 A9H Cho phép ngắt từ Timer 0 IE.0 EX0 A8H Cho phép ngắt ngoài 0 - Ưu tiên ngắt:

Mỗi một nguyên nhân gây ra ngắt được lập trình riêng rẽ để cĩ một trong hai mức ưu tiên thơng qua thanh ghi chức năng đặc biệt được định địa chỉ bit, thanh ghi ưu tiên ngắt IP (Interrupt Priority), thanh ghi này cĩ địa chỉ byte là 0B8H.

Trung tâm Học liệu ĐH Cần Thơ @ Tài liệu học tập và nghiên cứu

Bảng 3.9

Bit ký hiệu Địa chỉ bit Mơ tả

IP.7 - - Khơng sử dụng

IP.6 - - Khơng sử dụng

IP.5 PT2 0BDH Ưu tiên cho ngắt do bộ định thời 2 IP.4 PS 0BCH Ưu tiên cho ngắt do port nối tiếp IP.3 PT1 0BBH Ưu tiên cho ngắt do bộ định thời 1 IP.2 PX1 0BAH Ưu tiên cho ngắt do bên ngồi (ngắt

ngồi 1)

IP.1 PT0 0B9H Ưu tiên cho ngắt do bộ định thời 0

IP.0 PX0 0B8H Ưu tiên cho ngắt do bên ngồi (ngắt ngồi 0)

Khi hệ thống được thiết lập lại trạng thái ban đầu, thanh ghi IP sẽ mặc định đặc tất cả các ngắt ở mức ưu tiên thấp.

Nếu cĩ 2 ngắt cùng mức ưu tiên xuất hiện đồng thời, chuỗi vịng cố định sẽ xác định ngắt nào được phục vụ trước. Chuỗi vịng này sẽ là: ngắt ngoài 0, ngắt do bộ định thời 0, ngắt ngoài 1, ngắt do bộ định thời 1, ngắt do port nối tiếp

- Các cờ ngắt :

Khi điều kiện ngắt xảy ra thì ứng với từng loại ngắt mà loại cờ đĩ được đặt 1 để xác nhận ngắt.

Bảng 3.10

Ngắt Cờ Thanh ghi SFR và vị trí bit

Bên ngồi 0 IE0 TCON.1

Bên ngồi 1 IE1 TCON.3

Timer 1 TF1 TCON.7 (adsbygoogle = window.adsbygoogle || []).push({});

Timer 0 TF0 TCON.5

Port nối tiếp TI SCON.1

Port nối tiếp RI SCON.0

- Các vectơ ngắt :

Khi chấp nhận ngắt, giá trị được nạp vào PC được gọi là vector ngắt. Nĩ là địa chỉ bắt đầu của ISR cho nguồn tạo ngắt, các vector ngắt được cho ở bảng sau :

Bảng 3.11

Ngắt Cờ Ðịa chỉ vector

Reset hệ thống RST 0000H

Bên ngồi 0 IE0 0003H

Timer 0 TF0 000BH

Trung tâm Học liệu ĐH Cần Thơ @ Tài liệu học tập và nghiên cứu

Timer 1 TF1 001BH

Port nối tiếp TI và RI 0023H

Timer 2 002BH

Vector reset hệ thống (RST ở địa chỉ 0000H) được để trong bảng này vì theo nghĩa này, nĩ giống ngắt : nĩ ngắt chương trình chính và nạp cho PC giá trị mới.

Một phần của tài liệu Giám sát và điều khiển thiết bị qua mạng điện thoại (Trang 26 - 28)