现在我mov一个数120000到VD0里面,但是当我访问VW0和VW1时却并不是如图所示的值。我如何才能把VD0里面提取他的高字和低字。
VD0包含:VW0 + VW2而不是VW1`
VW1:包含VB1+VB2的数据信息。
直接提取,VW2VW0数据。
VD0:占用4个字节,VB0、VB1、VB2、VB3;
包含有 VW0、VW2 两个字
其中 VW0 是高16位所在的字,高字
VW2 是低16位所在的字,低字
数据以及IO寻址
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/programming/Data_addressing.html
1、........VD0里面,但是当我访问VW0和VW1时......?
你所说访问VW0和VW1,这种说法是不对的,应为VW0和VW2。
首先了解S7-200smart存储地址的排序:
、基本单元字节:排序为VB0、VB1、VB2、VB3......。
、两个字节连在一起为字:排序为VW0(包括VB0、VB1)、VW2(包括VB2、VB3)、VW4(包括VB4、VB5)、VW6......。
、两个字连在一起为双字:排序为VD0(包括VW0、VW2)、VD4(包括VW4、VW6)、VD8(包括VW8、VW10)、VD12......。
2、如何才能把VD0里面提取他的高字和低字?
如上述,VD0包括VW0与VW2,则直接引用VW0为高字、VW2为低字。
参见S7-200smart寻址地址,例如VD100截图,你看了就明白了,图中MSB为高、LSB为低。
3、相关资料:
、 SIMATIC S7-200 SMAR中文手册:
http://www.ad.siemens.com.cn/download/docMessage.aspx?ID=6780&loginID=&srno=&sendtime=
电话:13818569113 15721373211
邮箱:fushidianji@139.com
网址:http://www.jiansujiabc.com
地址:上海青浦区北青公路7171号111-112室