扫描枪跟西门子S7-200通讯用以下程序只能扫描两次读一次,有谁做过能加一下QQ指点一下 190785412。谢谢了
提问者:dklk
你的问题可能是由于接受存储区数据被覆盖。
试试用200做数据记录。
转载:参考温度记录:3个温度数据的循环记录。
OB1:
LD 数据记录标志位:M0.0
EU
TODR VB0
BMB VB0, VB50, 6
MOVD 温度实时值:VD80, VD56
LD SM0.0
= L60.0
LD 数据记录标志位:M0.0
EU
= L63.7
LD M10.0
EU
= L63.6
LD L60.0
CALL 数据记录:SBR0, L63.7, L63.6, &VB100, &VB50, 3, 10, VD1000, VW1004
数据记录子程序:
LD #开始记录初始化:L0.1
EU
MOVD #记录存储区首位地址:LD1, #地址:LD12
MOVW 0, #计数:LW16
LD #启动数据记录:L0.0
BMB *#数据记录原地址首位:*LD5, *#地址:*LD12, #每条数据的长度:LB11
+D 10, #地址:LD12
INCW #计数:LW16
AW= #计数:LW16, #数据表的条目:LW9
MOVD #记录存储区首位地址:LD1, #地址:LD12
MOVW 0, #计数:LW16
补充问题回复:
不清楚你的扫描枪方式的字符格式及字符总数,可能的原因我上面也有程序提供了,就是用指针的方式,把每次接受到的数据分别存放在VB100开始的10个字符--VB110;VB120,当然你也可以存放100条或更多的数据。
另外,把空闲线时间修改为4mS。