間接訪(fǎng)問(wèn)就是用指定存儲器的地址或索引或ID來(lái)讀寫(xiě)存儲器的內容,這里是使用索引的方式,因為輸入的數據不是存儲器的實(shí)際地址,西門(mén)子的存儲器地址比較復雜,按類(lèi)區別,一般得不到存儲器的地址,但存儲器的索引也就是存儲器的號則經(jīng)常使用,一般情況下在S7-300、400中需要用STL指令寫(xiě),梯形圖是不支持的,但STL不容易學(xué),也容易出錯,所以用SCL寫(xiě)了這個(gè)庫,然后在梯形圖中使用,方便了程序的編寫(xiě)。
其中S7-300_1中是編譯過(guò)的庫,S7-300_4中的是SCL源代碼,由于高級語(yǔ)言的結構性太強,所以編譯后的代碼肯定沒(méi)STL直接寫(xiě)的那么高效,但高級語(yǔ)言出錯機會(huì )小,另外就是編譯后的庫不太好監控,因為編譯后變成了STL格式。
注意:字MW0的索引是0,字MW1的索引是1,雖然一般不會(huì )這樣用,因為字的邊界或起點(diǎn)一般定在偶數,所以參數里的索引事實(shí)上指字的起點(diǎn)地址,對于雙字也是一樣的;對于Q、DB、I區的字和雙字也是這樣的;所以若是循環(huán)使用連續的字或雙字時(shí),要注意字的索引和雙字的索引的增量分別是2和4,如果增量是1的話(huà),就會(huì )導致前后的操作發(fā)生數據重疊。
[ 此帖被wingwf2000在2019-07-26 00:19重新編輯 ]