西門子plc S7-300的尋址方法
對于那些過程復雜、控制參數較多的工業控制系統來說,這一點尤為重要。西門子plc S7-300的尋址方法為在plc自動控制系統設計建設中實現上述功能提供了一種簡單可行的途徑。西門子plc S7-300編程語言的基本單元是一個語句,語句的組成是一條指令。每條指令有兩部分:一部分是操作碼,另一部分是操作數。操作碼指示指令的功能是什么,操作數指示操作碼需要數據的位置。所謂的尋址是找到操作數的過程。
西門子plc S7-300 CPU有三種類型的尋址:
1.立即尋址
在指令中,如果操作碼后面的操作數是操作碼所需的特定數據,則指令的尋址模式稱為立即尋址, 例如:在轉移指令中:MOV IN OUT——操作碼" MOV”的表示指令的功能將IN中的數據傳輸到OUT,其中IN——源操作數,OUT——目標操作數。 如果指令是:MOVD 1204 VD400 功能:將十進制數1204傳送到VD200,其中12004是源操作數。由于此操作數的值已在指令中,因此您無需再次查找。這個操作數是即時的。該尋址模式是立即尋址模式。指令中未給出目標操作數的值。僅給出要傳輸的地址VD400。該操作數的尋址模式是直接尋址。
2.直接尋址
在指令中,如果操作碼后面的操作數以操作數的地址形式出現,則指令的尋址模式稱為直接尋址, 如:MOVD VD400 VD500 功能:將VD400中的雙字數據傳輸到VD500
3.間接尋址
在指令中,如果操作碼后面的操作數在操作數的地址處顯示為地址,則指令的尋址模式稱為間接尋址。 如:MOVD 1204 * VD400 * VD400是指存儲12.4地址的地址。 如果VB0存儲在VD400中,則VD0的地址為1204,該指令的功能是:將十進制數1204傳送到VD0地址。
西門子S7-300plc間接尋址方法
1.區域內間接尋址
當它為0時,指針的最高位(位31)為0。以下是該地區間接尋址的例子: L P#4.0; //將間接尋址的指針加載到累加器1中 LAR1;//將累加器1的內容發送給AR1, AR1中的M [AR1,P#2.3]; //P#4.0加上偏移P#2.3,在M6.3上運行 =Q [AR1,P#0.2] ;//邏輯運算的結果發送到Q4.2,P#4.0 + P#0.2=P#4.2 L MW [AR1,P#19.0] ;//將MW26加載到累加器1中,它等于AR1中的地址值P#4.0加上逗號后的地址偏移量。
2.區域之間的間接尋址
當x=1時,指針的最高位(位31)是區域之間的間接尋址,以下是區域之間間接尋址的示例: L P#M 6.0 //將M6.0的雙字地址加載到累加器1中 LAR1 //將累加器1的內容發送給AR1 L W [AR1,P#20.0] //將MW26的內容傳送到累加器1 對應于P#M6.0的二進制數是2#1000 0011 0000 0000 0000 0000 0011 0000.由于地址指針P#M6.0已經包含區域信息(rrr=2#011表示M區域),第三個說明“LW [AR1,P#50.0]”不需要再次使用地址標識符M,當使用地址指針讀取或寫入字,字或雙字時,指針中小數點右邊的位號必須為0,否則將發生錯誤。
標題:西門子plc S7-300的尋址方法 地址:http://m.511997.cn/ask/3112.html