Slide 1 Interrupts 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 trong và bên ngoài Chương trình ngắt hoạt động gần giống với chươn[.]
Interrupts Các chế độ ngắt xử lý ngắt cho phép thực trình tốc độ cao, phản ứng kịp thời với kiện bên bên ngồi Chương trình ngắt hoạt động gần giống với chương trình con: vịng qt chương trình tạm thời ngừng, chuyển sang thực vòng quét chương trình ngắt Chương trình kích hoạt lệnh gọi chương trình con, chương trình ngắt kích hoạt tín hiệu ngắt Các kiểu tín hiệu báo ngắt: + Ngắt vào / + Ngắt truyền thông + Ngắt thời gian Interrupts Các loại ngắt mã hiệu Mơ tả ngắt Kiểu Tín hiệu ngắt để nhận liệu truyền thơng Tín hiệu ngắt báo hồn tất việc gởi liệu Ngắt theo suờn lên I0.0* Ngắt theo suờn lên I0.1 Ngắt theo suờn lên I0.2 Ngắt theo suờn lên I0.3 Ngắt theo suờn xuống I0.0* Ngắt theo suờn xuống I0.1 Ngắt theo suờn xuống I0.2 Ngắt theo suờn xuống I0.3 Interrupts Ngắt theo HSC0, giá trị tức thời giá trị đặt trước 12 Ngắt theo HSC1, giá trị tức thời giá trị đặt trước 13 Ngắt theo HSC1, có tín hiệu báo đổi hướng đếm từ bên ngồi 14 Ngắt theo HSC1, có tín hiệu reset từ bên ngồi 15 Ngắt theo HSC2, giá trị tức thời giá trị đặt trước 16 Ngắt theo HSC2, có tín hiệu báo đổi hướng đếm từ bên 17 Ngắt theo HSC2, có tín hiệu reset từ bên ngồi 18 Ngắt theo PLS0 báo hòan tất việc đếm xung 19 Ngắt theo PLS1 báo hòan tất việc đếm xung 20 Ngắt theo thời gian T0 10 Ngắt theo thời gian T1 11 Interrupts Khai báo hủy toàn cục chế độ ngắt + Khai báo + Hủy Khai báo hủy chế độ ngắt + Khai báo + Hủy INT: khai báo xử lý chương trình ngắt EVNT: khai báo kiện ngắt (mã hiệu ngắt) Interrupts Ngắt vào ra: - Tín hiệu báo ngắt có sườn lên sườn xuống I0.0 – I0.3 - Tín hiệu báo ngắt đếm tốc độ cao - Tín hiệu báo ngắt tạo xung Interrupts Ngắt vào ra: Ví dụ: Chương trình điều khiển khởi động trực tiếp động KĐB pha dùng ngắt vào I0.0 I0.1 Interrupts Thứ tự ưu tiên ngắt + Ngắt truyền thông : Độ ưu tiên cao + Ngắt vào + Ngắt thời gian : Độ ưu tiên thấp Khi thực chương trình ngắt, tất tín hiệu báo ngắt phải chờ thực xong chương trình ngắt, chúng có độ ưu tiên cao Các tín hiệu ngắt ghi nhớ lại xếp theo thứ tự ưu tiên Interrupts Ngắt Timer (ngắt thời gian): ngắt thời gian: ngắt thời gian 0: mã hiệu 10 ngắt thời gian 1: mã hiệu 11 Tín hiệu báo ngắt phát đặn theo chu kỳ thời gian, chu kỳ chứa SMB34 (ngắt thời gian 0) SMB35 (ngắt thời gian 1) Thời gian ngắt cho phép từ – 255ms Các bước thực sử dụng ngắt thời gian - Xác định ứng dụng ngắt thời gian chương trình ngắt - Xác định chu kỳ ngắt thông qua nạp giá trị cho SMB34 - Kích hoạt ngắt 10 (hoặc 11) Interrupts Ví dụ 1: Chương trình đọc giá trị analog máy tính (lưu VW100) sử dụng ngắt thời gian T0 với chu ký 100ms, MAIN SBR0 INT_0 Interrupts Ngắt truyền thông freeport Khác với mạng MPI, mà trạm Master quyền gởi nhận liệu trực tiếp nhớ trạm Slave, kiểu truyền thơng freeport “bình đẳng” Tất trạm mạng truyền thông freeport quyền gởi nhận liệu lên mạng Muốn gởi liệu có lệnh XMT Muốn đọc liệu phải sử dụng vùng nhớ đặc biệt ngắt nhận liệu Mạng Interrupts Định dạng truyền liệu cài đặt nhờ ghi SMB30 SMB30 m m b b b Giải thích Kiểu truyền thông: 00 Point to Point (PPI) 01 Freeport 10 PPI (bình dẳng) 11 Khơng sử dụng Tốc độ truyền (Baud): 000 38.400 (CPU214) hay19.200 (CPU212) 001 19.200 010 9.600 011 4.800 100 2.400 101 1.200 110 600 111 300 Interrupts d p p Số bit truyền: bit bit Kiểu kiểm tra (parity): 00 Không kiểm tra 01 Kiểm tra chẵn (Even) 10 Không kiểm tra 11 Kiểm tra lẻ (Odd) Lệnh gởi liệu XMT TBL: bảng liệu PORT: cổng truyền Interrupts Cấu trúc bảng liệu Độ dài mảng liệu = n Dữ liệu … … Dữ liệu n Số liệu gởi tối đa : 255 liệu Bit SM4.5 thơng báo trạng thái q trình gởi liệu lên mạng Đang gởi : SM4.5 có giá trị Gởi xong : SM4.5 có giá trị Interrupts Đọc liệu từ mạng SMB2 chứa liệu nhận chế độ truyền freeport Sử dụng ngắt để đọc liệu từ SMB2 Interrupts Ví dụ: Viết chương trình phát liệu vùng nhớ IB0 PLC1 lên mạng theo chuẩn freeport nhận liệu xuất vùng nhớ QB0 PLC2, với tốc độ truyền 9600Baud, liệu bits, không kiểm tra parity ... Point (PPI) 01 Freeport 10 PPI (bình dẳng) 11 Không sử dụng Tốc độ truyền (Baud): 000 38.400 (CPU 214 ) hay19.200 (CPU 212 ) 0 01 19.200 010 9.600 011 4.800 10 0 2.400 10 1 1. 200 11 0 600 11 1 300 Interrupts... giá trị đặt trước 12 Ngắt theo HSC1, giá trị tức thời giá trị đặt trước 13 Ngắt theo HSC1, có tín hiệu báo đổi hướng đếm từ bên ngồi 14 Ngắt theo HSC1, có tín hiệu reset từ bên 15 Ngắt theo HSC2,... giá trị cho SMB34 - Kích hoạt ngắt 10 (hoặc 11 ) Interrupts Ví dụ 1: Chương trình đọc giá trị analog máy tính (lưu VW100) sử dụng ngắt thời gian T0 với chu ký 10 0ms, MAIN SBR0 INT_0 Interrupts