S7-200自由口通讯怪异现象

我做的是自由口通讯,用串口调试助手调试。程序流程是这样的:发送一个读的指令,然后就开始接收指令,接收了以后再发送,一直循环下来。发送数据保存在vb500开始的内存中,接收缓冲区最大长度为5个字节,检测起始字符00。怪异的现象为:一旦接收的数据不是5个字节(比如4个),那么发送的命令就错了,变成乱七八糟的数据,真的好奇怪,忘高手指点。
 下面是程序代码
 Network 1 // 
 LD     SM0.1
 LPS
 MOVB   16#09, SMB30
 MOVB   16#C0, SMB87
 MOVB   5, VB500
 AENO
 MOVD   16#11223344, VD501
 AENO
 MOVB   16#1, VB505
 LRD
 MOVB   5, SMB94
 LPP
 MOVB   16#0, SMB88
 Network 2 
 LD     SM0.1
 S      S0.1, 1
 Network 3 
 LSCR   S0.1
 Network 4 
 LD     SM0.0
 XMT    VB500, 0
 AENO
 SCRT   S0.2
 Network 5 
 SCRE
 Network 6 
 LSCR   S0.2
 Network 7 
 LD     SM0.0
 RCV    VB32, 0
 AENO
 SCRT   S0.1
 Network 8 
 SCRE

问题补充:
解决的方法是做个超时检测,超时了就进行下一条指令。但是,这个现象还是很怪。因为,接受的数据怎么会影响到发送的数据呢?
 中断做起来好像也不简单因为我做的系统是由16个传感器,每个传感器的读取地址都不一样,用轮询的方法以此读取各个传感器的读数,我只能想到用这个方法了,中断不大会用

最佳答案

数据帧的结束是采用的什么方式,有可能是接受发送同时执行了,将接受完了以后做个延时再发送试试,如果正常就可能是上面的原因

提问者对于答案的评价:
谢谢

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc348489.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月4日 下午11:45
下一篇 2021年7月4日 下午11:45

相关推荐

  • S7-200中填表指令中的地址可以直接读取使用吗?

    我按照S7-200编程手册写的填表指令,VW200表示最大填表数,VW202实际填表数,VW204数据D0,就是想问问VW204这个数据我能不能直接使用,比如用数字运算指令VW20…

    SIMATIC S7-200 2017年11月6日
  • EM253控制方向

    1、如何用EM253的POS0_CTRL指令和POS0_GOTO指令去控制一个步进电机的转动方向?(我准备用EM253上P0和P1这组信号分别去控制电机运转所需的脉冲个数和转动方向…

    SIMATIC S7-200 2021年7月5日
  • STEP 7 MicroWIN SMART V2.4

    STEP 7 MicroWIN SMART  V2.4能不能安装在Win10系统? 最佳答案 1、MicroWIN SM…

    SIMATIC S7-200 2021年7月5日
  • s7-200 usb驱动安装结尾弹出NO SSF FILES FOUND

    各位好!             安装S7-200…

    2021年7月5日
  • EM253位控输出

    请教各位    EM253位控模块输出点P0+P0—,P1+P1—与P0P1有什区别?能否介绍一下,谢谢。 最佳答案 P0和P1是漏型晶体管…

    SIMATIC S7-200 2020年10月31日
  • 请教关于计数器,定时器设定值的相关问题

    计数器,定时器设定值设置方法有三种:1常数直接设置2寄存器间接设定3用指针(*VD,*LD,*AC)间接设定。我想请教指针间接设定的用法,哪些地方要用到这个?请举例 最佳答案 用指…

    SIMATIC S7-200 2021年7月5日
  • 300间MPI通讯

    300间的MPI通讯可以调用SFC67,SFC68吗,如可以是否需要在OB35中定期调用。 问题补充:是否需要调用SFC69,最好发个实例参考一下。谢谢 最佳答案 到下载中心搜索文…

    SIMATIC S7-200 2021年7月5日
  • s7-200故障,输出端不停依次闪烁

    s7-200发生故障,输出端无故有信号,现象为不停依此闪烁。更换上正在使用的PLC后,运行正常,但是更换新买的PLC后,故障照旧(程序是从运行正常中的PLC里读取出来),请问这是为…

    SIMATIC S7-200 2021年7月5日
  • 6ES7231-7PD22-0XA8

    哪位大侠有6ES7231-7PD22-0XA8的使用手册,小弟不胜感激。 最佳答案 样本手册中就有接线图,可参考http://www.ad.siemens.com.cn/servi…

    2021年7月5日
  • s7-200模拟量输出问题

    cpu226不用附加模块能输出0-10V的模拟量吗?我想用它控制交流伺服电机 最佳答案 226本身不具备模拟量输出端口。解决的办法有两个: 1、加挂模拟量输出模块。这是最…

    SIMATIC S7-200 2021年7月5日

发表回复

登录后才能评论