- 艾寶物聯(lián)IOBOV? ─ 工業(yè)無(wú)線測(cè)控專家
子程序 改善了梯形邏輯代碼的可重用性和可讀性。他們通過(guò)允許您將代碼分解為可管理的部分來(lái)實(shí)現(xiàn)此目的。然后可以在程序內(nèi)多次使用子程序,并輕松地將其添加到新程序中。
涉及的2個(gè)例程:
子程序充當(dāng)單獨(dú)的梯形邏輯,可在需要時(shí)調(diào)用。很多時(shí)候,您需要從調(diào)用例程中提供數(shù)據(jù)。為此,您需要為將從Calling Routine接收數(shù)據(jù)的子例程設(shè)置輸入標(biāo)簽。無(wú)論您何時(shí)調(diào)用子程序,都要將要從調(diào)用例程傳遞的變量匹配到子程序中將接收數(shù)據(jù)的變量。傳遞標(biāo)簽可以通過(guò)兩種方式之一完成。
通過(guò)值:是數(shù)據(jù)的單向路徑從調(diào)用標(biāo)記到子例程標(biāo)記。呼叫標(biāo)簽不受通行證的影響。
通過(guò)參考:是一條雙向的街道。調(diào)用標(biāo)記傳遞子程序標(biāo)記它的值。子程序返回時(shí),子程序標(biāo)記傳遞它的值的調(diào)用標(biāo)記。
例:
這是子程序中發(fā)生的順序:
在子例程中,您必須至少有一個(gè)Return語(yǔ)句。這告訴子程序返回Calling Routine。如果您需要多個(gè)東西來(lái)觸發(fā)返回,則可以有多個(gè)Return語(yǔ)句。
通??梢栽谧映绦蛑惺褂脕?lái)自主程序的標(biāo)簽而不傳遞它們。這是使用全局 標(biāo)簽。雖然這是允許的,但它們會(huì)使您的子程序不再可用。如果要將子例程帶入另一個(gè)項(xiàng)目,則項(xiàng)目必須包含子例程中使用的所有全局標(biāo)記。