plc采用中斷工作方式來應(yīng)對緊急任務(wù)。一般的計(jì)算機(jī)系統(tǒng)中,cpu在每一條指令執(zhí)行結(jié)束時都要詢問有無中斷申請。而plc對中斷的響應(yīng)則是在相關(guān)程序塊結(jié)束后查詢有無中斷申請,如果有中斷申請,則轉(zhuǎn)入執(zhí)行相應(yīng)的中斷服務(wù)程序。待處理完中斷,又返回運(yùn)行原來程序。
在plc中,中斷源是通過輸入點(diǎn)進(jìn)入系統(tǒng)的,plc掃描輸入點(diǎn)是按照輸入點(diǎn)編號的先后順序進(jìn)行的。系統(tǒng)接到中斷申請后,順序掃描中斷源,可能只有一個中斷源申請中斷,也可能同時有多個中斷源申請中斷。系統(tǒng)在掃描中斷源的過程中,在存儲器的特定區(qū)建立“中斷處理表”,按順序存放中斷信息,中斷源被掃描后,中斷處理表也已建立完畢,系統(tǒng)就按照這個表的先后順序調(diào)入相應(yīng)的中斷處理子程序。
與一般計(jì)算機(jī)系統(tǒng)的中斷一樣,plc的中斷也是分優(yōu)先級的。當(dāng)同時出現(xiàn)2個或多個中斷申請時,則優(yōu)先級別高的先處理,繼而處理低級別的。直到中斷申請全部處理完畢,再轉(zhuǎn)而執(zhí)行掃描程序。
需要指出的是,多個中斷源可以有優(yōu)先順序,但無嵌套關(guān)系。即在中斷程序執(zhí)行中,如果有新的中斷發(fā)生,不論新中斷的優(yōu)先順序如何,都要等執(zhí)行中的中斷處理程序結(jié)束后,再進(jìn)行新的中斷處理。