Đối với mỗi ngắt thì phải có một trình phục vụ ngắt ISR hay trình quản lý ngắt. Khi một ngắt được gọi thì bộ vi điều khiển chạy trình phục vụ ngắt. Đối với mỗi ngắt thì có một vị trí cố định trong bộ nhớ để giữ địa chỉ ISR của nó. Nhóm các vị trí nhớ được dành riêng để gửi các địa chỉ của các ISR được gọi là bảng véc tơ ngắt, xem “Hình 3-35. Bảng vector ngắt và ví dụ” 8051 hỗ trợ 5 loại ngắt, có thể cho phép hoặc cấm ngắt với từng loại thông qua thanh ghi điều khiển ngắt IE, hoặc có thể cấm tất cả các ngắt thông qua bit EA.
Hình 7-1. Các tín hiệu điều khiển ngắt
Ở hình trên chỉ có 1 điểm chú ý đó là hai tín hiệu IT0 và IT1, hai bit này lựa chọn nguyên nhân ngắt cho 2 ngắt ngoài INTR0 và INTR1. Nếu =1 thì ngắt tại sườn âm, =0 ngắt tại sườn dương
Thanh ghi điều khiển ngắt IE
Hình 7-2. Thanh ghi điều khiển ngắt
Bảng 7-1. Các bít của thanh ghi điều khiển ngắt
EA ES ET1 EX1 ET0 EX0 Cho phép/cấm ngắt toàn cục = 0: Cấm tất cả các ngắt = 1: Cho phép các ngắt
= 0: Cấm ngắt truyền thông nối tiếp = 1: Cho phép ngắt truyền thông nối tiếp = 0: Cấm ngắt Timer 1
= 1: Cho phép ngắt Timer 1 = 0: Cấm ngắt ngoại vi INT0 = 1: Cho phép ngắt ngoại vị INT0 = 0: Cấm ngắt Timer 0
= 1: Cho phép ngắt timer 0 = 0: Cấm ngắt ngoại vi INT1 = 1: Cho phép