下载后,CPU的SF指示灯亮,由于有OB121所以可以正常运行,诊断缓冲区中充满了发生区域长度访问错误的信息,见图3。
图3
这个时候采用在线删除的方法将OB121从CPU中删除,见图4。CPU进入到停止状态,继续查看诊断信息,见图5,第二条诊断信息说明CPU发生区域长度访问错误,第一条显示由编程错误引起的停止模式,缺少相应事件的OB121。鼠标点中第一条诊断信息,接着再点击下面的“OpenBlock”按钮,就直接打开之前OB1故意编写出错的程序,如图6。这条语句读取了DB1.DBW2这个地址,可打开DB1发现实际长度只有2个字节(图7),不存在DBW2这个地址,所以才会产生区域长度访问错误。使用同样方法也可以查找造成IO访问错误的语句。