回复:S7-200自由口通讯时间问题

H.L

  • 帖子

    1766
  • 精华

    9
  • 被关注

    8

论坛等级:侠圣

注册时间:2005-07-20

普通 普通 如何晋级?

发布于 2007-01-26 16:33:55

0楼

这样说别人只能帮你猜了,PLC程序问题。这是我以前做的,是中断接收方式。
MAIN
NETWORK1
LD I0.1
EU
CALL SBR_1
NETWORK2
LD M0.6
CALL SBR_2

SBR-0
NETWORK1
LD SM0.0 //首先写入要发送的命令
MOVB 6, VB80 //发送长度
MOVD 16#57303554, VD81 //W01T0
MOVW 16#300D, VW85
NETWORK2
LD SM0.0
ATCH INT_0, 25 //当口1接收到字符时引起中断
ENI
NETWORK3
LD SM0.0
MOVD &VB420, VD181 //指针指向接收缓冲区

//接收初始化
//P为起始字
//回车为结束字符
//超过1S终止接收
//接收的最大字符数
//忽略SMW192

SBR-1
LD SM0.0
XMT VB80, 1

SBR-2
NETWORK1
LDB= VB420, 16#50 //起始字符正确
AB= VB431, 16#0D //结束字符正确
S M18.0, 1 //置正确标志位
NETWORK2
LD M18.0
STR VB424, 1, VD450 //数据保存
NETWORK3
LD SM0.0
MOVD 16#00000000, VD420 //复位信息正确标志
MOVD 16#00000000, VD424 //关闭本子程序
MOVD 16#00000000, VD428
R M18.0, 1
R M0.6, 1

INT-0
NETWORK1
LDB= SMB2, 16#50 //当首字符正确时,置开始接收标志位
MOVD &VB420, VD181 //装载地址指针
NETWORK2
LD SM0.0 //接收字符
MOVB SMB2, *VD181
INCD VD181
NETWORK3
LDB= SMB2, 16#0D //当接收的字符是回车时
MOVD &VB420, VD181 //重新装载地址指针
S M0.6, 1 //调用数据处理程序
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33263条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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