Các ngắt cổng nối tiếp.

Một phần của tài liệu ATMEL 89C51 DÙNG NGẮT ĐIỀU KHIỂN LED ĐƠN (Trang 31 - 33)

Ngắt cổng nối tiếp xẩy ra khi hoặc cờ phát (TI) hoặc cờ ngắt thu (KI) được đặt lên 1. Ngắt phát xẩy ra khi một ký tự đã được nhận xong và đang đợi trong SBUP để được đọc. Các ngắt cổng nối tiếp khác với các ngắt timer. Cờ gây ra ngắt cổng nối tiếp không bị xóa bằng phần cứng khi CPU chuyển tới ngắt. Do có hai nguồn ngắt cổng nối tiếp Ti và RI. Nguồn ngắt phải được xác định trong ISR và cờ tạo ngắt sẽ được xóa bằng phần mềm. Các ngắt timer cờ ngắt cờ ngắt được xóa bằng phần cứng khi CPU hướng tới ISR.

c.Các ngắt ngoài.

- Các ngắt ngoài xẩy ra khi có một mức thấp hoặc cạnh xuống trên chân INT0 hoặc INT1 của vi điều khiển. Đây là chức năng chuyển đổi của các bit Port3.(Port 3.2 và Port 3.3). Các cờ tạo ngắt này là các bit IE0 vá IE1 trong TCON. Khi quyền điều khiển đã chuyển đến ISR, cờ tạo ra ngắt chỉ được xóa nếu ngắt được tích cực bằng cạnh xuống. Nếu ngắt được tích cực theo mức, thì nguồn yêu cầu ngắt bên ngoài sẽ điều khiển mức của cờ thay cho phần cứng. Sự lựa chọn ngắt tích cực mức thấp hay tích cực cạnh xuống được lập trình qua các bit IT0 và IT1 trong TCON. Nếu IT1 = 0, ngắt ngoài 1 được tác động bằng múc thấp ở chân IT1. Nếu IT1 = 1 ngắt ngoài 1 sẽ được tác động bằng cạnh xuống. trong chế độ này, nếu các mẫu liên tiếp trên chân INT1 chỉ mức cao trong một chu kỳ và chỉ mức thấp trong chu kỳ kế, cờ yêu cầu ngắt IE1 trong TCON được đặt lên 1, rồi bit IÉ yêu cầu ngắt. Nếu ngắt ngoài được tác động bằng cạnh xuống thì nguồn bên ngoài phải giữ chân tác động ở mức cao tối thiểu một chu kỳ và giữ nó ở mức thấp thêm một chu kỳ nữa để đảm bảo phát hiện được cạnh xuống. Nếu ngắt ngoài được tác động theo mức thì nguồn bên ngoài phải giữ tín hiệu yêu cầu tác động cho đến khi ngắt được yêu cầu được thật sự tạo ra và không tác động yêu cầu ngắt trước khi ISR được hoàn tất . Nếu không một ngắt khác sẽ được lặp lại.

Một phần của tài liệu ATMEL 89C51 DÙNG NGẮT ĐIỀU KHIỂN LED ĐƠN (Trang 31 - 33)