中断的优先级:也就是组织块的优先级,如果在执行中断程序(组织块)时,又检测到一个终端请求,CPU将比较两个中断源的中断优先级,如果优先级相同,按照产生中断请求的先后次序进行处理。如果后者的优先级比正在执行的OB的优先级高,将中止当前的正在处理的OB,
4、对终端的控制:时间中断和延时中断有专用的允许处理中断和禁止中断的系统功能SFC。
SFC39“DIS_INT”用来禁止中断和异步错误处理,可以禁止所有中断,有选择的禁用某些优先级范围的中断,或者只禁止指定的某个中断;
SFC40“EN_INT”用来激活新的中断和异步错误处理,激活中断是指允许处理中断,做好了在中断事件出现时执行对应的组织块的准备。可以全部允许或有选择的允许。
SFC41“DIS_AIRT”延迟处理比当前优先级更高的中断和异步错误,直到用SFC42允许处理中断或当前OB执行完毕,SFC42“EN_AIRT”用来允许立即处理被SFC41暂时禁止的中断和异步错误,SFC41和SFC42配对使用。
5、组织块的变量声明表:OB块是操作系统调用的,OB没有背景数据块,也不能为OB声明输入、输出参数和静态变量,所以,OB的变量声明表中只有临时变量,OB的临时变量可以是基本数据类型、复杂数据类型或数据类型ANY。OB块包含OB的启动信息的20B的临时局部变量TEMP,这些信息在OB启动时由操作系统提供,包括启动事件、启动日期和时间、错误及诊断事件。声明表中的变量的具体内容与组织块的类型有关,参见下表
二、启动组织块
1、CPU的启动模式和启动组织块
400的CPU有3中启动方式,暖启动、热启动和冷启动,300CPU只能暖启动,参见下图:
用户可以通过在启动组织块中编写程序,用来设置CPU的初始化操作,例如设置开始运行时的某些变量的初始值和输出模块的初始值等。
1)暖启动过程映像数据以及非保持的存储器位、定时器和计数器被复位。具有保持功能的存储器位、定时器、计数器和所有的数据块将保留原数值,执行一个OB100后,循环执行OB1,将模式选择开关从STOP切换到RUN,执行一次暖启动。
2)热启动:400CPU在RUN模式下电源突然丢失,很快又重新上电,将执行OB101,自动完成热启动,从上次RUN模式结束时程序被中断之处继续执行,不对计数器等复位。
3)冷启动:所有系统存储区均被清除,即复位为零,包括有保持功能的存储区。调用OB102后循环执行OB1。
2、循环中断组织块