您现在所在的是:

PLC论坛

回帖:7个,阅读:20258 [上一页] [1] [下一页]
646
395590275
文章数:7
年度积分:50
历史总积分:646
注册时间:2012/4/24
发站内信
发表于:2015/4/6 13:39:45
#0楼
TAR1  
    T     #TAR1
    TAR2  
    T     #TAR2
// ;
// ;
    LAR1  P##IL
    L     DIW [AR1,P#0.0]
    T     #ILintILR
    L     DIW [AR1,P#8.0]
    T     #ILintILF
// ;
    LAR1  P##ILR
    L     DIW [AR1,P#0.0]
    T     #DBNb
// ;
    L     DID [AR1,P#2.0]
    SRD   3
    T     #AdrDB

    OPN   DB [#DBNb]
    L     #AdrDB
    SLD   3
    LAR1  
// ;
    L     #ILintILR
    T     DBW [AR1,P#8.0]
// ;
// ;
    LAR1  P##ILF
    L     DIW [AR1,P#0.0]
    T     #DBNb
// ;
    L     DID [AR1,P#2.0]
    SRD   3
    T     #AdrDB
// ;
    OPN   DB [#DBNb]
    L     #AdrDB
    SLD   3
    LAR1  
// ;
    L     #ILintILF
    T     DBW [AR1,P#0.0]

// ;
// ;
    L     #TAR1
    LAR1  
    L     #TAR2
    LAR2
这是我的FB106程序,问题提示光标
指到这里“
    L     #ILintILF
    T     DBW [AR1,P#0.0]

模块 CPU 319F-3 PN/DP 的诊断缓冲区                      

机架:                         0
插槽:                         2
事件 1 / 10:  事件 ID 16# 2523
写入时发生区域长度错误
全局 DB,字访问, 访问地址:     0
FB 编号:    106
模块地址:  3434
所需的 OB:编程错误 OB (OB121)
优先等级: 1
内部错误, 进入的事件
37981
cvlsam 版主
文章数:12476
年度积分:592
历史总积分:37981
注册时间:2001/12/22
发站内信
2018论坛贡献奖
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011论坛贡献奖
2011国庆活动
2010论坛杰出贡献奖
发表于:2015/4/6 15:00:59
#1楼
DBW[AR1,P#0.0],你要去了解访问的这个地址在DB中是否存在,如果DB中这个地址并没有被定义却被你访问到了,就发生这个错误,通俗的讲就是地址越界了。

Good Luck~
646
395590275
文章数:7
年度积分:50
历史总积分:646
注册时间:2012/4/24
发站内信
发表于:2015/4/6 16:00:10
#2楼
回复 #1楼 cvlsam
是的,我的这个寻址是形参,在外面引脚填地址,能访问到!访问的也是背景数据块!背景数据块中的地址也有没超出范围,还有什么可能吗?或者可以加你qq沟通一下吗?
37981
cvlsam 版主
文章数:12476
年度积分:592
历史总积分:37981
注册时间:2001/12/22
发站内信
2018论坛贡献奖
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011论坛贡献奖
2011国庆活动
2010论坛杰出贡献奖
发表于:2015/4/6 16:41:29
#3楼
以下是引用3955902752015/4/6 16:00:10的发言:
是的,我的这个寻址是形参,在外面引脚填地址,能访问到!访问的也是背景数据块!背景数据块中的地址也有没超出范围,还有什么可能吗?或者可以加你qq沟通一下吗?

你错误的理解了我的意思,不是指背景数据块的地址超出范围,而是作为程序员,你的访问动作超出了范围。

例如,数据块中你最大的定义地址为64,你却访问了66的内容,那么地址越界,可定义地址范围和可访问地址范围是一个不同的概念,只有被定义,才能被访问。

Good Luck~
646
395590275
文章数:7
年度积分:50
历史总积分:646
注册时间:2012/4/24
发站内信
发表于:2015/4/6 17:11:33
#4楼
回复 #3楼 cvlsam
我明白了你的意思!我检查了没有地址越界。你说的这个问题我是知道的,就是检查后发现没有地址越界才产生的疑惑!我的语句语法没问题吧?
37981
cvlsam 版主
文章数:12476
年度积分:592
历史总积分:37981
注册时间:2001/12/22
发站内信
2018论坛贡献奖
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
2013论坛贡献奖
2012论坛贡献奖
2011论坛贡献奖
2011国庆活动
2010论坛杰出贡献奖
发表于:2015/4/6 17:28:21
#5楼
以下是引用3955902752015/4/6 17:11:33的发言:
我明白了你的意思!我检查了没有地址越界。你说的这个问题我是知道的,就是检查后发现没有地址越界才产生的疑惑!我的语句语法没问题吧?

我不清楚你的检查的步骤是如何进行的,你能否贴点检查的图出来看看?当错误发生时的堆栈中数据状况以及变量当时的值?

Good Luck~
646
395590275
文章数:7
年度积分:50
历史总积分:646
注册时间:2012/4/24
发站内信
发表于:2015/4/6 17:48:16
#6楼
回复 #5楼 cvlsam
附件 调用FB时外部引脚.jpg
附件 FB106.jpg
这是我监视FB和FB被调用时填的引脚DB1408和DB1403的地址都存在,而且程序能正常运行,您看看
8391
fujifa
文章数:2943
年度积分:77
历史总积分:8391
注册时间:2014/2/10
发站内信
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
发表于:2015/4/7 9:17:03
#7楼
以下是引用3955902752015/4/6 17:48:16的发言:
附件 调用FB时外部引脚.jpg
附件 FB106.jpg
这是我监视FB和FB被调用时填的引脚DB1408和DB1403的地址都存在,而且程序能正常运行,您看看

你要贴个不正常运行的图才可以看出点问题,或者直接将程序打包上传。
精通富士POD,富士PLC的编程
有问题可以直接电邮:FUJIFA@yeah.net

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2025 Gkong.com, All Rights Reserved

62.4004