lzmtxp99
級別: 家園常客
精華主題: 0
發(fā)帖數(shù)量: 491 個(gè)
工控威望: 707 點(diǎn)
下載積分: 1866 分
在線時(shí)間: 508(小時(shí))
注冊時(shí)間: 2010-12-16
最后登錄: 2024-07-25
查看lzmtxp99的 主題 / 回貼
樓主  發(fā)表于: 2014-04-03 13:19
這個(gè)程序該怎么理解,這個(gè)是先運(yùn)行if語句再運(yùn)行for循環(huán)語句嗎?

GetData(name[0], "Local HMI", LW, 10, 7)        // get name strings
for i=0 to 500 step 1      
   GetData(temp[0], "Local HMI", RW, var+13, 7)
   if name[0]==temp[0] and name[1]==temp[1] and name[2]==temp[2] and name[3]==temp[3] and name[4]==temp[4] and name[5]==temp[5] and name[6]==temp[6] then
   SetData(var, "Local HMI", LW, 9200, 1)
   i=501  
   else
   var=var+20
   end if          
next i
SetData(OFF, "Local HMI", LB, 7, 1)
zhangzhiming
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 24 個(gè)
工控威望: 208 點(diǎn)
下載積分: 1170 分
在線時(shí)間: 11(小時(shí))
注冊時(shí)間: 2013-05-15
最后登錄: 2024-02-29
查看zhangzhiming的 主題 / 回貼
1樓  發(fā)表于: 2014-04-04 08:07
macro_command main()
GetData(name[0], "Local HMI", LW, 10, 7)        //讀取LW里面的數(shù)據(jù)存到變量name里
//以下程序主要是用來查詢配方里的參數(shù)或者型號的
for i=0 to 500 step 1      
   GetData(temp[0], "Local HMI", RW, var+13, 7)    //讀取RW里面的數(shù)據(jù)存到變量temp里(起始位置是變量var+13)
   if name[0]==temp[0] and name[1]==temp[1] and name[2]==temp[2] and name[3]==temp[3] and name[4]==temp[4] and name[5]==temp[5] and name[6]==temp[6] then
     SetData(var, "Local HMI", LW, 9200, 1)    //當(dāng)name里的數(shù)據(jù)和temp里面的數(shù)據(jù)相等時(shí)變量var里的數(shù)據(jù)寫入到索引寄存器LW9200里實(shí)行翻頁
     i=501  
   else
     var=var+20    //當(dāng)name里的數(shù)據(jù)和temp里面的數(shù)據(jù)不相等時(shí)for語句執(zhí)行0-500循環(huán),var以步進(jìn)為20自加
   end if          
next i
SetData(OFF, "Local HMI", LB, 7, 1)
end macro_command
[ 此帖被zhangzhiming在2014-04-04 08:23重新編輯 ]
zhangzhiming
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 24 個(gè)
工控威望: 208 點(diǎn)
下載積分: 1170 分
在線時(shí)間: 11(小時(shí))
注冊時(shí)間: 2013-05-15
最后登錄: 2024-02-29
查看zhangzhiming的 主題 / 回貼
2樓  發(fā)表于: 2014-04-04 08:26
所以得出來的結(jié)果就是,你這是威綸觸摸屏中的配方宏中的查詢部分。