西门子数据储存的一个怪问题!! 点击:1581 | 回复:17



笔笔名

    
  • 精华:4帖
  • 求助:11帖
  • 帖子:290帖 | 1797回
  • 年度积分:1
  • 历史总积分:3209
  • 注册:2002年3月17日
发表于:2007-06-13 22:40:00
楼主
我将VW100中的数据执行储存,但是为什么在VW92也会跟着变化呢?比如VW100里面的数据为100。
那么在储存完成后其VW92里面的数据同样为100。更奇怪的我将VD90更改为其他地址(比如VD190)。
那么在储存完成后在VD192里面的数据同样为100。再更改其他地址问题同样存在。请同行高手指点
这是什么问题!!!!


楼主最近还看过



皓月

  • 精华:9帖
  • 求助:0帖
  • 帖子:483帖 | 5271回
  • 年度积分:0
  • 历史总积分:8863
  • 注册:2003年11月09日
发表于:2007-06-14 00:09:00
1楼
不难看出,是你程序的问题,

苇子

  • 精华:0帖
  • 求助:0帖
  • 帖子:13帖 | 128回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2007-06-14 08:27:00
2楼
用了VD90,vd92就不能再用,只能从vd94开始。如果是vw90,那么才可以从vd(或vw)开始用。

joylord

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 36回
  • 年度积分:0
  • 历史总积分:132
  • 注册:2006年8月15日
发表于:2007-06-14 08:39:00
3楼
重复使用的问题 

joylord

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 36回
  • 年度积分:0
  • 历史总积分:132
  • 注册:2006年8月15日
发表于:2007-06-14 08:39:00
4楼
重复使用的问题 

joylord

  • 精华:0帖
  • 求助:0帖
  • 帖子:11帖 | 36回
  • 年度积分:0
  • 历史总积分:132
  • 注册:2006年8月15日
发表于:2007-06-14 08:39:00
5楼
重复使用的问题 

68669211

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 39回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2007-06-14 09:19:00
6楼
move_w 16位传送
MOVE_DW 32位传送
VW100 16位
VD90 32位
VW100=VB100 VB101
VD90= VB90 VB91 VB92 VB93
VB100=VB92
VB101=VB93

68669211

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 39回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2007-06-14 09:20:00
7楼
move_w 16位传送
MOVE_DW 32位传送
VW100 16位
VD90 32位
VW100=VB100 VB101
VD90= VB90 VB91 VB92 VB93
VB100=VB92
VB101=VB93

68669211

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 39回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2007-06-14 09:20:00
8楼
move_w 16位传送
MOVE_DW 32位传送
VW100 16位
VD90 32位
VW100=VB100 VB101
VD90= VB90 VB91 VB92 VB93
VB100=VB92
VB101=VB93

68669211

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 39回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2007-06-14 09:21:00
9楼
MOVE_W16位传送
MOVE_DW 32位传送
VW100 16位
VD90 32位
VW100=VB100 VB101
VD90= VB90 VB91 VB92 VB93
VB100=VB92
VB101=VB93

68669211

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 39回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2007-06-14 09:22:00
10楼
MOVE_W16位传送
MOVE_DW 32位传送
VW100 16位
VD90 32位
VW100=VB100 VB101
VD90= VB90 VB91 VB92 VB93
VB100=VB92
VB101=VB93

笔笔名

  • 精华:4帖
  • 求助:11帖
  • 帖子:290帖 | 1797回
  • 年度积分:1
  • 历史总积分:3209
  • 注册:2002年3月17日
发表于:2007-06-14 09:33:00
11楼
VB100=VB92
VB101=VB93
不知道以上两条的意思??????还请指点!!!
-----------------------------------------------------------
再请教我的贴图中,这样使用VD90难道也是重复使用吗?我现在需要的是将VW100里面的数据进行保存。
但是我要是将VD90更改为其他的数据地址同样存在这样问题啊!!比如我将VD90更改为VD190。
和请指点!!!因为不了解西门子!!!谢谢!!

笔笔名

  • 精华:4帖
  • 求助:11帖
  • 帖子:290帖 | 1797回
  • 年度积分:1
  • 历史总积分:3209
  • 注册:2002年3月17日
发表于:2007-06-14 09:58:00
12楼
再请教我现在使用的PTOO_MAN和PT00_CTRL里面的VD180、VD184、VB189算不算重复使用??

samen

  • 精华:1帖
  • 求助:0帖
  • 帖子:8帖 | 56回
  • 年度积分:0
  • 历史总积分:128
  • 注册:2003年12月03日
发表于:2007-06-14 12:38:00
13楼
VD180、VD184、VB189

不算重用,记住VD占4个字节,一定是4的倍数开始的~

老愚者

  • 精华:1帖
  • 求助:0帖
  • 帖子:9帖 | 2253回
  • 年度积分:0
  • 历史总积分:10007
  • 注册:2006年8月20日
发表于:2007-06-14 18:37:00
14楼
从你编的程序看,并没有重复使用。因为你把VW100的数据通过AC1复制到VD90,所以它们数据是相等的。你改地址,但没改程序,当然他们的数据还是相等的。你的存储数据程序写的不对,VW100是字,写SMB31应是16#82,而你写了16#83。

笔笔名

  • 精华:4帖
  • 求助:11帖
  • 帖子:290帖 | 1797回
  • 年度积分:1
  • 历史总积分:3209
  • 注册:2002年3月17日
发表于:2007-06-15 08:16:00
15楼
谢谢指点!!!那再请教我在SMW32里面这样的写法正确吗?
比如最上面的贴图区:我需要永久保存VW100里面的数据。我将地址100写入SMW32。如果再将VW102里面的数据进行永久保存,那么我同样将地址102写入SMW32,这样的写法正确吗?????
还请指点!!!

老愚者

  • 精华:1帖
  • 求助:0帖
  • 帖子:9帖 | 2253回
  • 年度积分:0
  • 历史总积分:10007
  • 注册:2006年8月20日
发表于:2007-06-15 09:03:00
16楼
如果你要保存VW102的能使条件与保存VW100的能使条件完全一样,按你的贴图写就行,这样把VW100V和W102当做VD100存储。如果它们的能使条件不同,则应另写一段,把102写入SMW32,把16#82写入SMB31。

笔笔名

  • 精华:4帖
  • 求助:11帖
  • 帖子:290帖 | 1797回
  • 年度积分:1
  • 历史总积分:3209
  • 注册:2002年3月17日
发表于:2007-06-15 09:57:00
17楼
谢谢老愚者指点!!!

热门招聘
相关主题

官方公众号

智造工程师