西门子S7-200PLC通讯发送数据问题

LD M9.3
MOVB 18, VB540
AENO
LPS
MOVB 16#FE, VB541
AENO
MOVB 16#2A, VB542
LRD
MOVB 16#EF, VB547
LRD
MOVB 16#FE, VB548
AENO
MOVB 16#3A, VB549
LRD
MOVW 压力1:VW280, VW550
LRD
MOVW 压力2:VW282, VW552
LRD
MOVW 压力3:VW284, VW554
LRD
MOVW 压力4:VW286, VW556
LPP
MOVB 16#EF, VB558
AENO
XMT VB540, 0
AENO
FILL +0, VW600, 4
AENO
FILL +0, VW540, 9
AENO
R M9.3, 1
为什么我接收到的16进制数据,压力4的值总不对,

通过串口接收到的数据为FE 2A FF FF 00 03 EF FE 3A 03 5C 03 B6 03 CA 03 00 EF
VW286和 VW556实际值为16进制03B6,但每次收到都为0300。
请高手指点!

试着加个校验看看.
一般来说通讯中数据改变的概率可以忽略.
注意到凡是你写常数的地方得到的结果都是对的,建议给vw556传送个常数:03B6再试下.
应该不是通讯这部分程序的事,可重点检查下,别的地方有没有修改VW286或556的值.
可以全局查找,注意排除.
温馨提示:答案为网友推荐,仅供参考
相似回答