quote:以下是引用凡烨在2009-06-04 10:32:15的发言:quote:以下是引用鹅卵石在2009-05-31 08:25:00的发言:
OB85优先级出错组织块
只要发生下列事件之一,CPU的操作系统即调用OB85:
尚未装载的OB(OB81除外)的启动事件。
操作系统访问模块时出错。
在系统更新过程映像期间出现I/O访问错误(如果由于组态原因,未禁止OB85的调用)。
除了“尚未装载的OB(OB81除外)的启动事件”其它用法还是不太明白,请大侠们指教
OB85在以下错误发生时执行:
1,是当一些故障出现,例如硬件中断,如果在CPU中没有加入OB40,那么CPU会停机。如果下载OB85到CPU中,CPU不会停机。出现此类故障时CPU会调用OB85,表明“未装载的OB(OB80/OB81/OB82/OB83/OB86除外)的启动事件”。
2,操作系统访问模块故障,手册中在德文翻译到英文时出现一个错误,英文原意为Block,手册翻译为Module。 CPU在报告错误时的英文显示为Error when operating system accesses a block,这里不是Module。当出现Block not loaded/Area length error/Write protect error时,调用OB85。
3,这里的OB85的IO access error与OB122的不同,主要是在于前者是系统自动检测的,例如实际DI模块不存在时或者故障时,系统调用OB85。(如果CPU使能该项)。而后者则是编程人员自己编程不当而导致的IO Access error。但是当此类错误需要调用OB85时,需要在CPU属性“Cycle/clock Memory”下,选择“only for incoming and outgoing errors”或者“At each individual access”。