发表于:2006/4/7 19:08:00
#0楼
一个使用MODBUS进行通讯的的程序,遇到了麻烦,请大家帮忙解决
……前边程序省略……
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,发送不能完成?
……前边程序省略……
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,发送不能完成?
~~~~~海纳百川,有容乃大;壁立千仞,无欲则刚 ~~~~~