S7-200自由口通讯接收不到任何字符

自己参考做了一个自由口通讯的简单程序,VB100开始接收数据,利用接收到字符中断触发(收到@38*后转码成56放在VW120)输出。实验后发现接收不到任何字符。串口调试助手试过了串口线 波特率等等没有设置错误。请教各路大神找找问题~
程序:LD     SM0.1
MOVB   16#09, SMB30
MOVB   16#F0, SMB87
MOVB   16#40, SMB88
MOVB   16#2A, SMB89
MOVW   5, SMW90
MOVB   10, SMB94
ATCH   INT_0:INT0, 23
ENI
RCV    VB100, 0
INT_0:
LD     SM0.0
ATH    VB102, VB121, 2
LD     SM0.0
AW=    VW120, 56
O      Q1.3
AN     M4.2
=      Q1.3

问题补充:
首先非常感谢互撸哇的程序,测试后可以收到数据,但是不是发送的数据。情况如下:发送1,PLC中VB4有符号(0)VB5 ASCLL(g)VB6 ASCLL(?)VB7 ASCLL(?),再发1,PLC中VB8有符号(0)VB9 ASCLL(g)VB10 ASCLL(?)VB7 ASCLL(?);重下载程序,发送2,PLC中VB4有符号(0)VB5 ASCLL(3)VB6 ASCLL(?)VB7 ASCLL(=),再发2,PLC中VB8有符号(0)VB9 ASCLL(3)VB10 ASCLL(?)VB7 ASCLL(=);SMB86 1000_0000
补充一下,我自己程序测试时候,串口调试助手收发数据正常,波特率等等都匹配,用的普通串口线。自己程序收不到任何数据时候无错误代码SMB186 0000_0000(串口1)

最佳答案

你的是接收程序,你用串口调试助手可以收到通信对象的数据,而PLC接收不到么?通讯协议是否对应呢?
你接收起始条件为:空闲+起始字符,条件略苛刻呐。改为空闲或起始字符,再试试。

或者用下面的程序,再试试可否接收到数据。如果可以,就是你SMB87设置有问题。
MAIN:
LD     SM0.1
MOVB   16#49, SMB30                //自由口,9600,偶校验
MOVD   &VB4, VD0
ATCH   INT_0:INT0, 8               //连接8号中断
ENI

INT_0:
LD     SM0.0
MOVB   SMB2, *VD0                  //将接收到的字符依次存入VB4等
INCD   VD0

提问者对于答案的评价:
非常感谢~~问题已经找到啦,呵呵,困扰几天了,问题出在COM口通讯线缆上,我用的是普通直连COM线,9针1对1的。应该用专用的PC-PPI线缆通讯的~~~

专家置评

已阅,最佳答案正确。
在进行串口调试时,建议使用西门子标准电缆。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年12月7日 下午12:25
下一篇 2017年12月7日 下午12:25

相关推荐

  • S7-200SMART PLC停止后的置位复位

    最近在学习S7-200SMART,发现一个问题,就是M、V、T、C置位后,PLC停止运行,这些位不复位,PLC再次运行仍保持置位,不像200和1200,这是什么原因。 钻石用户推荐…

    SIMATIC S7-200 2021年7月5日
  • 如何控制步进电机

    想利用224的Q0.1和Q0.1输出脉冲驱动控制器再控制步进电机运转,当I0.0触发时电机运转,I0.1触发时停止电机,停止电机的时间越短越好,看过手册上的说明,不是太懂,高分求哪…

    SIMATIC S7-200 2020年11月5日
  • 200smart编程软件不能点开部分功能

    左上角的符号表。状态图表下的图表。还有数据块下面的页面1  也不能点开。这时为什么。谢谢各位师傅指点。新手刚来。 最佳答案 可能是与你的操作系统不兼容,先重新下…

    SIMATIC S7-200 2021年7月5日
  • 想自学下S7200的plc

    自己的电脑是WIN10系统,公司工程师说WIN10的电脑不能装的,想问问有什么解决的办法,如果能装应该在哪下载 最佳答案 200软件可以安装的,而且我使用正常软件下载地址:西门子官…

    2021年7月5日
  • 如何用一个S7200CPU实现三轴控制?

    有三台伺服电机需要分别控制,只有一台S7 200CPU去分别控制三台伺服驱动器,一般S7 200CPU本体只有两个发生器,请问高手有没有三个脉冲发生器的200C…

    SIMATIC S7-200 2020年11月1日
  • 求助PID参数的整定?

    例如案例1.电炉很稳控制的系统中,要求电炉温度恒定在500摄氏度,采用PI控制。我们首先要确定的三个参数 增益?积分时间?采样周期?该怎么设定?依据什么?增益数值的大小对…

    SIMATIC S7-200 2021年7月5日
  • 大家帮忙看看这段伺服控制的程序有问题吗?

    由于论坛无法贴图片我将程序放在中华工控网上了,这是帖子的链接,请论坛的高手指教一下,谢谢。http://bbs.gkong.com/dispbbs.asp?Boardid=36&a…

    SIMATIC S7-200 2021年7月4日
  • 关于MBUS MSG指令

    在MBUS MSG指令里有一个错误位,我看了手册上说1-8的低位,其中0是无错误,那Q0.0有输出到底是对还是不对,还有Q0.2是不用的意思,它是一直为1的吗?我现在程序…

    2017年12月9日
  • S7-smart200与smart700 IE v3 走485无法通讯

    通过SMART200添加扩展口SBCM01  与触摸屏进行通讯无反应   触摸屏串口接的是3A 8B &nbs…

    2021年7月5日
  • S7200接收扫描枪信息不成功

    在电脑上用串口软件能读取串口扫描枪扫描到的条码。 用电脑上的串口软件模拟扫描枪发送信息给PLC(PLC中编写了串口接收的程序),PLC也能读取了 。现在直接用P…

    SIMATIC S7-200 2020年11月1日