關(guān)于S7-300 STL程序的解釋
劉玉蓉
發(fā)布于2014-12-12 17:21
6
0
標(biāo)簽:
A7d0: L #I
L 8
<=I
JCN A7d1
L #I
ITD
L L#1
-D
LAR1
A L [AR1,P#32.0]
NOT
JCN A7d2
L #I
ITD
L L#1
-D
L L#32
*D
L 0.000000e+000
TAK
LAR1
TAK
T LD [AR1,P#0.0]
L #NUM1
L 1
-I
T #NUM1
JU A7d3
希望越詳細(xì)越好 初 I 的輸入是1
佳答案
A7d0: L #I
L 8
<=I //比較#I是否小于等于8
JCN A7d1 //若#I小于等于8,則程序跳轉(zhuǎn)至標(biāo)簽A7d1處執(zhí)行程序;若#I大于8則繼續(xù)向下執(zhí)行程序
L #I
ITD //把#I的數(shù)值轉(zhuǎn)化為雙整數(shù)
L L#1 //裝載雙整數(shù)1到累加器1中
-D //雙整數(shù)減法,即#I-1
LAR1 //把減法所得的結(jié)果存到AR1中
A L [AR1,P#32.0] //判斷臨時(shí)變量L32.0的信號(hào)狀態(tài)
NOT //取反指令
JCN A7d2 //若L32.0為1,則程序跳轉(zhuǎn)至標(biāo)簽A7d2處執(zhí)行程序;若L32.0為0,則繼續(xù)向下執(zhí)行程序
L #I
ITD //把#I的數(shù)值轉(zhuǎn)化為雙整數(shù)
L L#1 //裝載雙整數(shù)1到累加器1中
-D //雙整數(shù)減法,即#I-1
L L#32 //裝載雙整數(shù)32到累加器1中
*D //雙整數(shù)乘法,即#I-1的結(jié)果和32乘
L 0.000000e+000 //裝載實(shí)數(shù)0.0到累加器1中
TAK
LAR1
TAK
T LD [AR1,P#0.0] //這四步是把0.0存放到LD0中
L #NUM1
L 1
-I
T #NUM1 //這四步是將#NUM1的數(shù)據(jù)減1后存到#NUM1中
JU A7d3 //無條件跳轉(zhuǎn)到標(biāo)簽A7d3
參見:用于S7-300 和S7-400 的語句表(STL)編程
https://www.ad.siemens.com.cn/download/docMessage.aspx?ID=1818&loginID=&srno=&sendtime=
這是基礎(chǔ)手冊,里面有各種指令的講解說明,你的程序可以參考手冊自己再分析一下。