Ngắt và xử lý ngắt

Một phần của tài liệu 229850 (Trang 38 - 42)

III. CẤU TRÚC CHƯƠNG TRÌNH CỦA S7-

6. Ngắt và xử lý ngắt

Các chế độ ngắt và xử lý ngắt cho phép thực hiện các quá trình tốc độ cao, phản ứng kịp thời với các sự kiện ở bên tron và bên ngồi.

trình con tương ứng với tín hiệu ngắt đĩ, hay nĩi cách khác là hệ thống sẽ tổ chức xử lý tín hiệu ngắt đĩ. Chương trình con này được gọi là chương trình xử lý ngắt.

Do việc gọi chương trình xử lý ngắt bằng một tín hiệu báo ngắt mà thời điểm xuất hiện tín hiệu báo ngắt hoàn tồn bị động, bởi vậy hệ thống sẽ phải hổ trợ thêm cho cơng việc xử lý ngắt như: cất giữ nội dung ngăn xếp, nội dung thanh ghi AC và các bit nhớ đặc biệt; tổ chức xếp hàng ưu tiên cho các tín hiệu báo ngắt trong trường hợp chúng chưa kịp được xử lý

Trong CPU 224 cĩ các kiểu tín hiệu báo ngắt sau đây:

 Tám ngắt vào ra theo sườn lên hoặc theo sườn xuống của các cổng I0.0 đến I0.3

 Hai ngắt thời gian.

 Hai ngắt truyền thơng nối tiếp (nhận và truyền)

 Bảy ngắt bộ đếm tốc độ cao (CV=PV trển HSC0 và thay đổi hướng, xĩa ngồi, và CV=PV trên HSC1 và HSC2).

 Hai ngắt đầu ra truyền xung là PT00 và PT01.

Khi cĩ tín hiệu ngắt, giá trị cũ của ngăn xếp được cất đi, đỉnh của ngăn xếp nhận giá trị logic mới là 1 cịn các bit khác của ngăn xếp nhận giá trị logic 0. Bởi vậy, khi vào đầu một chương trình xử lý ngắt, lệnh cĩ điều kiện sẽ trở thành lệnh khơng điều kiện.

Ngồi ra, để cĩ thể tiếp tục thực hiện được chương trình sau ngắt, khơng những nội dung của ngăn xếp mà cả nội dung của các thanh ghi AC cùng với các bit nhớ trạng thái đặc biệt SM của thanh ghi và của các phép tính cũng sẽ được hệ thống cất giữ trước khi thực hiện chương trình xử lý ngắt và được nạp lại ngay sau khi kết thúc chương trình xử lý ngắt.

Các kiểu tín hiệu báo ngắt khác nhau của CPU 224 được trình bày trong bảng sau:

Sự kiện Mơ tả ngắt CPU 224

0 Ngắt theo sườn lên I0.0 Y

1 Ngắt theo sườn xuống I0.0 Y

2 Ngắt theo sườn lên I0.1 Y

3 Ngắt theo sườn xuống I0.1 Y

6 Ngắt theo sườn lên I0.3 Y 7 Ngắt theo sườn xuống I0.2 Y 8 Ngắt để nhận dữ liệu truyền thơng (Port 0) Y 9 Ngắt để báo hoàn tất việc giử dữ liệu truyền thơng Y

10 Ngắt theo thời gian 0 Y

11 Ngắt theo thời gian 1 Y

12 Ngắt theo HSC0, khi CV=PV Y 13 Ngắt theo HSC1, khi CV=PV Y 14 Ngắt theo HSC1, khi cĩ tín hiệu báo đổi hướng đếm từ

bên ngồi

Y

15 Ngắt theo HSC1, khi cĩ tín hiệu reset từ bên ngồi Y 16 Ngắt theo HSC2, khi CV=PV Y 17 Ngắt theo HSC2, khi cĩ tín hiệu báo đổi hướng đếm từ

bên ngồi

Y

18 Ngắt theo HSC2, khi cĩ tín hiệu reset từ bên ngồi Y 19 Ngắt theo PLS0, báo hoàn tất việc đếm xung Y 20 Ngắt theo PLS1, báo hoàn tất việc đếm xung Y 21 Ngắt theo Timer T32 (CT=PT) Y 22 Ngắt theo Timer T96 (CT=PT) Y 23 Ngắt khi hoàn tất việc nhận dữ liệu (Port 0) Y

 Thứ tự ưu tiên của các kiểu ngắt

Nhĩm ngắt truyền thơng - Độ ưu tiên cao nhất.

Nhĩm ngắt vào/ra (kể cả HSC và các đầu ra truyền xung).

 Nhĩm các tín hiệu báo ngắt thời gian - Độ ưu tiên thấp nhất.

Tại một thời điểm, nhiều nhất chỉ cĩ một chương trình xử lý ngắt được thực hiện. Khi đang thực hiện một chương trình xử lý ngắt thì tất cả tín hiệu báo ngắt

Lệnh cho phép ngắt là lệnh toàn cục cho phép xử lý các ngắt đã được khai báo.

Lệnh khai báo ngắt (Attach interrupt) và loại bỏ ngắt (Detach interrupt)

Lệnh ATCH gắn một sự kiện ngắt EVNT với 1 thủ tục xử lý ngắt INT, đồng thời cho phép xử lý ngắt đĩ. Lệnh DTCH cĩ tác dụng ngược lại.

 Các cú pháp sử dụng lệnh ngắt

Dạng lệnh Mơ tả chức năng lệnh

LAD Khai báo sử dụng một chế độ ngắt với kiểu được xác định bởi tốn hạng Event. Chương trình xử lí ngắt tương ứng được xác định bởi Int. sau khi khai báo chế độ ngắt cũng được kích theo

INT: CPU 214: 0-127 EVENT: CPU 214: 0-20

LAD Lệnh này dùng để hủy bỏ một chế độ ngắt mà kiểu của nĩ được xác định bởi tốn hạng Event

EVENT: CPU 214: 0-20

LAD Lệnh này dùng để khai báo một chương trình xử lí ngắt, nhãn xác định bởi n

CPU 214 0-127

LAD Lệnh khai báo chế độ toàn cục ngắt hoặc kích hoạt tất cả các chế độ ngắt đã bị hủy bởi lệnh DISI,đặt sau ATCH

LAD Lệnh hủy bỏ toàn bộ chế độ ngắt đã khai báo sử dụng trước đĩ, lệnh chỉ cĩ tác dụng với các tín hiệu báo ngắt lên, nhưng các ngắt vẫn nằm trong hàng chơ

LAD Lệnh kết thúc chương trình xử lý ngắt khơng điều kiện và bao giờ cũng nằm cuối chương trình xử lý ngắt

Một phần của tài liệu 229850 (Trang 38 - 42)

Tải bản đầy đủ (PDF)

(125 trang)