登录
首页 PLC论坛 西门子SIEMENS
回帖 发帖
正文

主题:西门子指针问题

点击:2173 回复:3


请问RD_1:=P#DB510.DBx 0.0是什么意思?
在调用SFB13接收功能块时输出的。
我本以为是区域间寄存器间接寻址的指针,可是查资料发现指针的格式是P#byte.bit,前面不允许有数据块DB,是吗?
06-04-04 16:16
它这个格式难道不是byte.bit吗?DB510.DBX0.0就是一个byte.bit的格式呀
06-04-04 18:45
那请帮我再看看这个问题
……前边程序省略……
CALL SFB  12, DB50                                      //调用发送功能块SFB12
REQ     :=DB400.DBX0.0                              //触发调用,前面已设置,正常  
R         :=DB400.DBX0.1                              //闭锁调用,也正常      
ID        :=W#16#1000                                //从站地址,正常
R_ID    :=DB400.DBD16                               //不太清楚此参数功能,不过确信也无问题
DONE   :=DB400.DBX0.4                              //发送完成状态字,一直是 0状态
ERROR  :=DB400.DBX0.5                                        
STATUS :=DB400.DBW12                             //发送状态字,循环显示16#19,16#b,
                                                                 //16#2和16#0,不知何意。
SD_1     :=P#DB410.DBX  10.0  WORD 1        //只知道是发送区域,不懂是从哪个区域发        
                                                                // 送,向各位请教  
LEN       :=DB400.DBW10                             //发送长度,正常                                  
我的问题是:可能是哪里的问题,导致DONE   :=DB400.DBX0.4 一直是0,发送不能完成?
整个程序我没法拷贝过来,不过昨天晚上我去调试的时候,发现它的错误状态如下:
在线帮助我也抄下来了,请看(轮流显示这四种状态,其中每一横行显示了这种状态下两个状态位对应的值).
error       status          提示
0            25              通信已经启动,任务正在被处理
0            11              警告:新任务无效,因为前一个任务未完成
1            2                对方通信块拒绝接受。功能未被执行。
0            0                无警告,无错误。
另外在SYSTAT中得到的诊断信息为0830(H),转换为二进制是0000 1000 0011 0000,事件等级和事件数字我记不起来怎么算了。
应该怎么解决呢?
06-04-08 22:20
看看电脑基础吧
06-04-09 01:35

工控新闻

更多新闻资讯