永宏PLC 什么是中断返回
功能叙述 :
● 本指令之功能和RTS类似,只是RTS是用于子程序之最后,而RTI则用于中断服务程序之最后,请参阅RTS指令之说明。
● 多个中断服务程序可共享一个RTI指令,其用法和多个子程序可共享一个RTS指令一样,请参考呼叫(CALL)指令之说明。
● 中断和呼叫之差异只有在呼叫系由使用者自行定义子程序之名称(标记LBL),然后在主程序或其它子程序中有呼叫指令并指名该子程序之标记,如此当PLC执行到该呼叫指令(CALL),且其输入〝EN〞=1或〝EN↑〞(P 指令)由0→1时,PLC即会去呼叫(执行)此子程序。而中断服务程序之执行则是直接以硬件讯号来中断CPU,要CPU暂停其它较次要之工作,
而来执行该硬件信号所对应之中断服务程序(我们称为中断服务程序召用)。因此较之呼叫必须扫描到该呼叫指令才会执行之作法,中断则为更实时(Real Time)之作法。此外因中断服务程序无法指名呼叫,因此我们以特定之〝保留字〞标记名称来对应PLC所提供之各种中断(详见FUN65说明),例如保留字X0+I指定给输入点X0所发生之中断,只要子程序中有标记为X0+I之程序,当输入点X0中断允许发生(X0:),PLC就会立即暂停其它较不优先之程序扫描工作,而马上跳到子程序中标记为X0+I的地址去执行程序。
● 若中断发生之时,CPU正在处理比此中断优先度更高(如硬件高速计数器中断)或优先度一样之中断(请参考9-3节中断之优先级),则PLC会等执行完上述所有中断服务程序后才会处理此中断。
● 若在中断服务程序中执行不到RTI指令,则PLC之系统堆栈会被破坏、程序流程错乱,而有可能引起严重当机。因此,无论流程如何控制,均需确保任一中断服务程序均会执行到RTI指令。
● 关于中断之详细说明与使用方法范例请参阅进阶应用篇第9章之说明。
以上就是关于永宏PLC 什么是中断返回介绍