我做的自由口通讯程序发到DTU上,但是DTU收不到,请各位专家帮忙看一下,是否有问题,在线等

已锁定

大西瓜

  • 帖子

    25
  • 精华

    0
  • 被关注

    2

论坛等级:游士

注册时间:2009-07-21

普通 普通 如何晋级?

我做的自由口通讯程序发到DTU上,但是DTU收不到,请各位专家帮忙看一下,是否有问题,在线等

1384

7

2011-11-05 15:46:49

// 主程序
网络1:
LD SM0.1 // 首次扫描时,
MOVB 16#09, SMB30 // 初始化自由端口:
// - 选择9600波特
// - 选择8个数据位
// - 选择无校验
MOVB 16#B0, SMB87 // 初始化RCV信息控制字节:
// - RCV被启用
// - 检测到信息字符结束
// - 将空闲行条件检测为
// 信息开始条件。

MOVB 16#EE, SMB89 // 将信息字符结束设为hex EE (接收后首字符存在VB5200 尾字符存在VB5231么?

MOVW +5, SMW90 // 将空闲行超时设为5毫秒。
MOVB 32, SMB94 // 将最大字符数设为32。
ATCH INT_10:INT10, 23 // 将中断附加在接收完成事件上。
ATCH INT_12:INT12, 9 // 将中断2附加在传送完成事件上。
ENI // 启用用户中断
RCV VB5199, 0 // 为端口0在VB5199位置启用带缓
//冲区的接收服务
MOVB 150, VB4999 //发送数据长度

网络2: !!!注意以下网络定义是否正确
LD Always_On:SM0.0
MOVB 16#0A, VB5000 //设定发送数据首字符
AENO
MOVB 16#0E, VB5149 //设定发送数据尾字符

//中断
INT10:
MOVB 150, VB4999
LDB= SMB86, 16#20 // 如果接收状态显示接收结束字符,
MOVB 10, SMB34 // 则附加一个10毫秒计时器,(10毫秒发送一次么)
ATCH INT_11:INT11, 10 // 触发传送
CRETI // 并返回。
NOT
RCV VB5199, 0 // 如果因任何其他原因接收完成,
// 则开始新的接收。
INT11:
LD SM0.0
DTCH 10 // 分离计时器中断
LD SM0.5 !!!!(可以在这前面加上LD SM0.5么?)
XMT VB4999, 0 // 将信息传送端口0中的用户
INT12:
LD SM0.0
RCV VB5199, 0 //准备接收
我做的自由口通讯程序发到DTU上,但是DTU收不到,请各位专家帮忙看一下,是否有问题,在线等 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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