S7-200自由口通讯程序问题

最近我用一个226的CPU与一个温度采集模块通过485通讯,程序如下:
 Network 1 // 网络标题 //程序编写本意,从VB100里把报文化通过485发送至数据采集模块,再从数据采集模块把数据读出 进行温度数据实时监控 波特率9600   8位数据据位,无较验 //发送报文格式 '#01CR'       报文格式经串口通讯助手验证无误 //报文ASCII值存放在数据块里
 // VB99   4                           H发送4个字节 VB100  16#23                       //字符串'#' 
 VB101  16#30                       //字符串'0' 
 VB102  16#31                       //字符串'1' 
 VB103  16#0D                       //字符串16#0D   CR 的ASCII码为16#0D      结束符号  接收格式     >(date)(chksum)(CR)       
 // 网络注释
 LD     SM0.1                       //上电扫描
 MOVB   16#09, SMB30                //初始化,//9600 8位数据位 1位停止位 无较验
 MOVB   16#B0, SMB87
 MOVB   16#0D, SMB89                //结束字符
 MOVW   +5, SMW90
 MOVB   100, SMB94
 ATCH   INT0, 9                     //发送完成中断
 ATCH   INT1, 23                    //接收完成中断
 ENI
 R      SM87.7, 1
 RCV    VB199, 0
 XMT    VB100, 0

 
 INT0
 网络1
 LD     SM0.0 //记录接收程序调用次数
 INCB   MB12
 AB=    MB10, 100
 S      Q0.1, 1
 网络2
 LD     SM0.0 //接收
 DTCH   10
 S      SM87.7, 1
 RCV    VB199, 0

 INT1
 网络1
 LD     SM0.0  //记录发送子程序调用次数
 INCB   MB10
 AB=    MB10, 100
 S      Q0.0, 1
 网络2
 LD     SM0.0                       
 R      SM87.7, 1                
 RCV    VB199, 0
 XMT    VB100, 0                   
 S      SM87.7, 1
 CRETI
 以上程序下载至PLC。可以监视到发送了程序执行0次,接收子程序执行1次,之后就没反应了,不知道原因出在哪了!请教各位前辈呀!

最佳答案

1 PLC-----信息,是否有错误?
 2 是否是PORT0和温度采集模块通讯?
 3 DTCH   10可以不要,因为没连接定时中断
 4 CRETI可以不要
 5 初始化程序
 R      SM87.7, 1
 RCV    VB199, 0
 这个可以不要。

提问者对于答案的评价:
问题解决了,虽然您的建议没用上,不过还是非常感谢!!感谢!!!

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

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

相关推荐

发表回复

登录后才能评论