CL RA ;Nội dung thanh gh iA bằng zero.
45. Lệnh giả mô nhớ trực tiếp và nhảy
3.4.7.3. Sáu ngắt của 8051 (bảng 5.3.3a)
Thực tế 8051 chỉ có 3 ngắt dành cho người dùng, song nhiều tài liệu kỹ thuật của các nhà sản xuất vẫn nói rằng có 6 ngắt vì họ tính cả lệnh RESET. Bố trí 6 ngắt của 8051 như sau:
- RESET: Khi chân RESET được kích hoạt thì 8051 nhảy về địa chỉ 0000. Đây là địa chỉ bật lại nguồn.
- Hai ngắt dành cho bộ định thời Timer 0 và Timer 1. Địa chỉ ở bảng vector ngắt của hai ngắt này tương ứng với Timer 0 và Timer 1 là 000BH và 001BH.
- Hai ngắt phần cứng dành cho các thiết bị bên ngoài nối tới chân 12 (P3.2) và 13 (P3.3) của cổng P3 là INT0 và INT1 tương ứng. Vị trí nhớ trong bảng vector ngắt này là 0003H và 0013H.
- Truyền thông nối tiếp có một ngắt cho cả thu lẫn phát. Địa chỉ của ngắt này trong bảng vector ngắt là 0023H.
3.4.7.4. Cho phép ngắt và cấm ngắt
Khi RESET tất cả mọi ngắt đều bị cấm (bị che), có nghĩa là không có ngắt nào được bộ vi điều khiển đáp ứng nếu chúng được kích hoạt. Các ngắt phải được cho phép bằng phầm mềm để bộ vi điều khiển có thể đáp ứng được. Có một thanh ghi được gọi là thanh ghi cho phép ngắt IE (Interrupt Enable) chịu trách nhiệm về việc cho phép (không che) hoặc cấm (che) các ngắt. IE là một thanh ghi có thể định địa chỉ bit.
IE.0
EA --- ET2 ES ET1 EX1 ET0 EX0
IE.1IE.2 IE.2 IE.3 IE.4 IE.5 IE.6 IE.7
Nếu EA = 1 thì từng nguồn ngắt sẽ được mở hoặc cấm bằng cách bật hoặc xoá bít tương ứng.
--- IE.6 Dự phòng cho tương lai.
ET2 IE.5 Cho phép hoặc cấm ngắt tràn hoặc thu của Timer 2 (AT89C52).
ES IE.4 Cho phép hoặc cấm ngắt tràn cổng nối tiếp. ET1 IE.3 Cho phép hoặc cấm ngắt tràn của Timer 1. EX1 IE.2 Cho phép hoặc cấm ngắt ngoài 1. ET0 IE.1 Cho phép hoặc cấm ngắt tràn của Timer 0. EX0 IE.0 Cho phép hoặc cấm ngắt ngoài 0.
Chúng ta cần lưu ý rằng bit EA là bit cho phép các ngắt làm việc. Để thanh ghi làm việc, bit này cần được thiết lập lên 1. Bit IE.6 không sử dụng (thường đặt bằng 0), bit D5 là dành cho 8052.