发表于:2004-01-29 19:49:00
楼主
NETWORK 1
//
LD SM0.5
EU
LD SM0.5
ED
OLD
INCB QB0
MOVB QB0, VB307
NETWORK 2
LD SM0.1
MOVB 2, VB301
MOVD &QB0, VD302
MOVB 1, VB306
NETWORK 3
LD I0.0
EU
TOF T36, VW10
NETWORK 4
LD T36
NETW VB300, 0
NETWORK 5
LD SM0.7
A T36
= SM30.1
NETWORK 6
LD V300.5
= Q1.0
我上面的程序下载到发送机上,另外的接收机完全空白(无程序)。
我的用意是想发送机在I0.0触发的时候发送向接收机,一定时间后(我希望是可能情况下最短的时间)把发送机主机的身份撤消.方便以后其他机器作为主机收发.(这是以后的事了).
以上的程序调试中表面上没有问题.但是仔细监控发现Q1.0在I0.0的上升沿的时侯接通过一个周期。表示发送过程中有错误。而且错误码记录错误原因是“没有允许PPI就试图执行NETW指令”。不过信息还是发送过去了。
还有一个意外情况是,当T36计时时间跨过SM0.5的时候(T36计时已经开始还没结束,SM0.5的状态改变,然后T36计时到)。会发送SM0.5改变前后的两个VB307的数值到接收机。当我把时间调得尽管再小一点的时候还是会有这个情况或者会出现发送不成功。(完全没有发送)错误原因仍然是“没有允许PPI就试图执行NETW指令”。当网络4使用边缘指令时。发送就完全不成功。原因还是……。
我不知道这个反映了NETW一个什么样的特性。想请有关专家指导。
最后我希望看过文章的兄弟姐妹都签个名。谢谢!