描述
對于SIMATIC S7-1200/S7-1500控制器的數(shù)組元素的尋址,除了常量用戶也可以指定一個(gè)整數(shù)類型的變量作為索引值。目前已允許長達(dá)32位的整數(shù)。在SIMATIC S7-S7-1200/1500中此種類型的尋址方式適用于所有的編程語言。
下面的語法用于命名為"Quantities"的數(shù)組元素的索引尋址,"Quantities"數(shù)組在數(shù)據(jù)塊"Data_DB"中進(jìn)行聲明:
"Data_DB". Quantities ["i"] (一維數(shù)組)
"Data_DB". Quantities ["i"] (一維結(jié)構(gòu)體數(shù)組)
"Data_DB". Quantities ["i", "j"] (多維數(shù)組)
"Data_DB". Quantities ["i", "j"].a (多維結(jié)構(gòu)體數(shù)組)
表 01
圖.01 中展示了對位于數(shù)據(jù)塊中的數(shù)組元素進(jìn)行尋址的程序代碼。在此把SIMATIC S7-1200/S7-1500和 S7-300/400做了個(gè)比較。在SIMATIC S7-300/400控制器中數(shù)組變量的起始地址必須已知,并且在使用地址寄存器時(shí)索引尋址也必須完成。
S7-300/S7-400
圖. 01
S7-1200/S7-1500 in STL
圖. 02
S7-1200/S7-1500 in SCL
圖. 03
下面列出了SIMATIC S7-1200/S7-1500 控制器尋址的優(yōu)勢:
- 使用現(xiàn)有的數(shù)據(jù)塊和數(shù)組變量的名稱
- 數(shù)組的基地址對于指針的生成不是必需的
- 程序代碼更為簡單和易讀
- 編譯器生成優(yōu)化的程序代碼
為了實(shí)現(xiàn)最高的性能,可遵從下面的關(guān)于在博途中尋址和存儲(chǔ)器命令的編程建議:
- 用作數(shù)組索引的變量應(yīng)該聲明為DINT, UDINT (32位)
- 中間結(jié)果和數(shù)組的索引應(yīng)該存儲(chǔ)在本地臨時(shí)數(shù)據(jù)區(qū)。
如需了解更多信息,請?jiān)L問工業(yè)官網(wǎng)
(轉(zhuǎn)載)