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日
下一篇 2017年12月7日

相关推荐

  • S7-200无线通讯

    现场有十辆运动的小车,每辆上面装有S7-200,现在想把小车上S7-200的数据传到控制室中的一个S7-200中,控制室中的S7-200也可以向小车S7-200中写数,用什么方案比…

    SIMATIC S7-200 2020年11月1日
  • 用输入模拟电压值控制高速计数输出的程序

    设定10v时计数器输出100,周期500ms,0v时输出0,线性输出 最佳答案 楼主一上来就提这些难度较大问题,小弟有点头晕!   回家把书翻来覆去,…

    SIMATIC S7-200 2021年7月4日
  • S7-200与VB6.0之间的通信

    做上位机软件需要,本来想用wincc简单点,可是由于现场有许多设备的协议并不是标准的,不能兼容到wincc。 所以用VB6.0或者VB2005。请问VB与S7-200通信…

    SIMATIC S7-200 2020年11月1日
  • 如何新建库,并使用它

    如何新建库,并使用它 最佳答案 现欲将子程序My_SUB_a和My_SUB_b间为库指令,其中在My_SUB_b中定义了中断程序My_INT(将某中断事件号与中断服务程序My_IN…

    SIMATIC S7-200 2021年7月5日
  • 200PLC于台达变频器通信

    我想用200PLC(224XP)通信控制台达变频器(VFD系列)  我是通信小白,请你们告诉我该怎么做。  我现在知道变频器通信地址是200…

    SIMATIC S7-200 2017年6月19日
  • EM231CN AI4XTC 温度控制如何编程 能否做个例子

    本人没接触过热电偶模块 现有CPU226CN  热电偶模块EM231CN AI4XTC需进行温度控制在50度如何编程 能否做个例子…

    SIMATIC S7-200 2020年10月31日
  • 200有没跳转指令

    S7-200的CPU有没有跳转指令啊,我看了手册好象没写。 比如在网络1条件满足时直接跳到网络9,中间的程序不执行;网络1条件不满足时,按顺序从网络2到9执行。&nbsp…

    SIMATIC S7-200 2021年7月5日
  • TP177B和S7-200连接电缆

    TP177B和S7-200连接,我选了网络总线连接器,还要选一根电缆,我有点不太清楚,到底是选Profibus_电缆(6XVI 830-0AH10)还是选MPI电缆(6E…

    SIMATIC S7-200 2020年11月1日
  • CP243-1和S7-200PLC用以太网连接不到电脑

    用PPI方式可以读到PLC,然后在以太网向导里设置模块IP为192.168.16.117(电脑是192.168.16.150),连接模块设置0(只和编程软件通信),设置完成调用初始…

    2021年7月5日
  • 请教:200与组态王通信速度慢问题

    请教:以前多个200与组态王通信时,采用PPI通信,波特率9600,速度较慢,现在采用modbus通信,200作从站,但通信时有的数据速度反应很快,有的数据要很久才有变化,改了波特…

    SIMATIC S7-200 2020年10月31日