求助

已锁定

唐皮

  • 帖子

    12
  • 精华

    0
  • 被关注

    4

论坛等级:游民

注册时间:2004-04-16

普通 普通 如何晋级?

求助

420

1

2004-11-03 13:41:21

各位好:

我在用224PLC调试接收和发送时出现以下景况, 求助:
当我用RCV接送从超级终端来的输入后,必须再输入结束符才能结束接收启动发送,以下程序是:I0.0通是启动接收 ,接受完成I0.3通启动发送,每次接受和发送都是5字节,但在接通I0.0启动接收 从超级终端输入(如:1323>)时,能接受到1323>,到接收中断完成后不能启动发送;必须再次输入结束符(>)后或再次从超级终端输入(如1111> 这时PLC接受到的是1111不是1323,说明接受没终止)才能发送,原因是没有结束接收,但是接收完成中断已经启动,为什麽会这样,我该如何解决,如何保证在接受中断后,终止接收而开发送 请指教 谢谢
以下程序是我的测试程序:
主程序:
NETWORK 1 //网络题目 (单行)
LD SM0.0
ITA +4000, VB100, 0

NETWORK 2
LD SM0.0
BMB VB200, VB2000, 5
ATH VB2000, VB3000, 4
MOVW VW3000, VW4000
BCDI VW4000

NETWORK 3
LDW>= VW4000, VW1000
= Q0.0
NETWORK 4
//以下是接受和发送程序
NETWORK 5
//初始化
LD SM0.0
MOVB 16#09, SMB30
MOVB 16#B0, SMB87
MOVB '>', SMB89
MOVW +5, SMW90
MOVB 25, SMB94
ATCH 接受中断, 23
ATCH 发送中断, 9
ENI

NETWORK 6 //网络题目 (单行)
//
//网络注释
//

NETWORK 7
LD SM0.1
LD M0.0
AN M0.1
OLD
O M0.5
= M0.0

NETWORK 8
LD M0.0
A I0.0//启动接受
EU
LD M0.1
AN M0.2
OLD
= M0.1

NETWORK 9 //开始接受
//
LD SM0.7
A M0.1
RCV VB199, 0

NETWORK 10 //关接受中断
//
LD M0.1
A M2.0 //接受中断中置位为1
LD M0.2
AN M0.3
OLD
= M0.2

NETWORK 11
LD M0.2
DTCH 23
R M2.0, 1

NETWORK 12 //I0.3启动发送
//
LD M0.2
A I0.3
EU
LD M0.3
AN M0.4
OLD
O M0.6
= M0.3

NETWORK 13

NETWORK 14 //开始发送
//
LD SM0.7
A M0.3
XMT VB99, 0

NETWORK 15 //关发送中断
//
LD M0.3
A M2.1
LD M0.4
AN M0.5
OLD
= M0.4

NETWORK 16 //关发送
//
LD M0.4
DTCH 9
R M2.1, 1

NETWORK 17 //返回发送

NETWORK 20
LDN SM0.7
MOVB 16#08, SMB30

/接受中断程序注释
NETWORK 1 //网络题目 (单行)
//
//网络注释
//
LD SM0.0
FILL +0, VW200, 10
S M2.0, 1

NETWORK 2
LD SM0.0
S Q1.1, 1
R Q1.0, 1

//发送中断程序

NETWORK 1
LD SM0.0
FILL +0, VW100, 10
S M2.1, 1

NETWORK 2
LD SM0.0
S Q1.0, 1
R Q1.1, 1
求助 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。