三菱fx系列的中斷事件包括輸入中斷、定時中斷和高速計數(shù)器中斷,發(fā)生中斷事件時,cpu停止執(zhí)行當前的工作,立即執(zhí)行預先寫好的相應的中斷程序,這一過程不受plc掃描工作方式的影響,因此使plc能迅速響應中斷事件。
1、用于中斷的指針
用于中斷的指針用來指明某一中斷源的中斷程序入口指針,執(zhí)行到iret(中斷返回)指令時返回主程序。中斷指針應在fend指令之后使用。
輸入中斷用來接收特定的輸入地址號的輸入信號,圖1給出了輸入中斷和定時器中斷指針編號的意義,輸入中斷指針為1?0?,最高位x0~x5的元件號相對應。最低位為0時表示下降沿中斷,反之為上升沿中斷。例如中斷指針1001之后的中斷程序在輸入信號x0的上升沿時執(zhí)行。同一個輸入中斷源只能使用上升沿中斷或下降沿中斷,例如不能同時使用中斷指針1000和1001。

圖1 中斷指針
fx2n和fx2nc系列有3點定時中斷,中斷指針為16口口~18口口,低兩位是以ms為單位的定時時間。定時中斷使plc以指定的周期定時執(zhí)行中斷子程序,循環(huán)處理某些任務,處理時間不受plc掃描周期的影響。
fx2n和fx2n系列有6點計數(shù)中斷,中斷指針為10口0(口=1~6。)計數(shù)器中斷與hscs(高速計數(shù)器比較置位)指令配合使用,根據(jù)高速計數(shù)器的計數(shù)當前值與計數(shù)設定值的關系來確定是否執(zhí)行相應的中斷服務程序。
2、與中斷有關的指令
中斷返回指令iret、允許中斷指令ei和禁止中斷指令di的應用指令編號分別為fnc03~fnc05,均無操作數(shù),分別占用一個程序步。

圖2 中斷指令的使用
plc通常處于禁止中斷的狀態(tài),指令ei和di之間的程序段為允許中斷的區(qū)間,當程序執(zhí)行到該區(qū)間時,如果中斷源產生中斷,cpu將停止執(zhí)行當前的程序,轉去執(zhí)行相應的中斷子程序,執(zhí)行到中斷子程序中的inet指令時,返回原斷點,繼續(xù)執(zhí)行原來的程序。
中斷程序從它唯一的中斷指針開始,到第一條iret指令結束。中斷程序應放在fend指令之后,iret指令只能在中斷程序中使用。特殊輔助m805△為on時(△=0~8),禁止執(zhí)行相應扣斷i△口口(口口是與中斷有關的數(shù)字)。
m8059為on時,關閉所有的計數(shù)器中斷。
如果有多個中斷信號依次發(fā)出,則優(yōu)先級按發(fā)生的先后為序,發(fā)生越早的優(yōu)先級越高。若同時發(fā)生多個中斷信號,則中斷指針號小的優(yōu)先。
執(zhí)行一個中斷了程序時,其他中斷被禁止,在中斷子程序中編入ei和di,可實現(xiàn)雙重中斷,只允許兩級中斷嵌套。如果中斷信號在禁止中斷區(qū)間出現(xiàn),該中斷信號被儲存,并在ei指令之后影響應該中斷。不需要關閉中斷時,只使用ei指令,可以不使用di指令。










