找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
小程序查看
手机扫码追踪该问题
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
1、在搜索一下比如DB50.DBD320、DB50.DBD318,DB50.DBB320这样的地址呢?
2、看一下DB50这个块是不是背景数据块,如果是背景数据块的话,打开所属的FB,看看对应这个数据块的符号,内部逻辑怎么做的,报警就是在FB内部逻辑产生的,所以你交叉索引找不到,这个的可能性比较大
3、还有就是使用了BLKMOVE或者其他指针功能,这样的话,你交叉索引也是找不到的,需要你了解程序结构,或者找一下DB50相关的地址,看看哪里有使用间接寻址的
你这种情况,很可能编程人员使用了非bool型或者word方式对这个变量进行了写操作,比如有可能是使用了byte,或者dword等进行绝对寻址,也可能使用了BLKMOV进行区域复制,甚至是间接寻址,这些方式都是无法使用交叉引用直接查找到的,可能需要你更加深入详细的阅读程序才能找到,或者直接询问当初的编程人员,另外,能否快速的找到,这也考验一个人对西门子程序的掌握熟练度,越熟悉的人,可能越容易掌握看程序的窍门,但是这都是得花时间练习出来的。
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!