IV. TẬP LỆNH CỦA S7-300: 1 Leọnh náp chuyeồn.
c. Gaựn tham soỏ khi gói haứm vaứ khoỏi haứm
Tham soỏ hỡnh thửực (formal parameter): laứ tham soỏ maứ tẽn vaứ kieồu dửừ lieọu cuỷa noự ủửụùc gaựn vaứ khai baựo khi táo khoỏi. Sau ủoự khi vieỏt chửụng trỡnh thỡ STEP7 tửù ủoọng lieọt kẽ taỏt caỷ caực tham soỏ hỡnh thửực.
Khi ủoự ta phaỷi gaựn caực tham soỏ thaọt (actual parameter)cho caực tham soỏ hỡnh thửực. Tham soỏ thaọt laứ tham soỏ laứ haứm vaứ khoỏi haứm sửỷ dúng trong luực cháy chửụng trỡnh. Tham soỏ thaọt phaỷi coự cuứng kieồu dửừ lieọu vụựi tham soỏ hỡnh thửực tửụng ửựng gaựn cho noự.
ắ Gói haứm vaứ khoỏi haứm baống CALL:
Ta coự theồ sửỷ dúng leọnh CALL ủeồ gói caực haứm (FC) vaứ khoỏi haứm (FB), leọnh naứy gói FC hay FB do ta chổ ra vaứ ủửụùc thửùc thi baỏt chaỏp RLO hay baỏt kyứ ủiều kieọn naứo khaực.
Khi ta gói khoỏi haứm FB thỡ ta phaỷi cung caỏp khoỏi dửừ lieọu instance cúc boọ. Khoỏi dửừ lieọu instance chửựa taỏt caỷ caực bieỏn túnh vaứ caực tham soỏ thaọt cuỷa khoỏi haứm.
Khi ta gói khoỏi haứm thỡ leọnh CALL cheựp lái moọt trong caực múc sau vaứo khoỏi dửừ lieọu instance cuỷa khoỏi haứm, phú thuoọc vaứo kieồu dửừ lieọu cuỷa tham soỏ thaọt vaứ vaứo khai baựo cuỷa tham soỏ hỡnh thửực (IN, OUT, IN-OUT):
• Giaự trũ cuỷa tham soỏ thaọt.
• Pointer chổ ủeỏn ủũa chổ cuỷa tham soỏ thaọt.
• Pointer chổ ủeỏn “L stack” cuỷa khoỏi gói maứ ụỷ ủoự giaự trũ cuỷa tham soỏ thaọt ủaừ ủửụùc ủeọm.
Gói FB vụựi DB instance vaứ caực tham soỏ khoỏi:
Vieọc gói coự theồ xaỷy ra moọt khi caực chi tieỏt sau ủaừ ủửụùc ủửa vaứo luực CALL: • Tẽn cuỷa khoỏi haứm.
• Tẽn cuỷa khoỏi dửừ lieọu instance . • Caực tham soỏ.
Leọnh gói sửỷ dúng ủũa chổ tuyeọt ủoỏi hoaởc ủũa chổ kyự hieọu. Gói tuyeọt ủoỏi: CALL FBx, Dby (caực tham soỏ truyền);
Gói baống kyự hieọu: CALL fbname, datablockname (pass parameters); Vụựi fbname= tẽn kyự hieọu cuỷa khoỏi
datablockname= tẽn kyự hieọu cuỷa khoỏi dửừ lieọu ắ Gói haứm vaứ khoỏi haứm baống CC vaứ UC:
Dáng leọnh: CC addr (conditional call: gói khi RLO=1) UC addr (unconditional call: gói baỏt chaỏp RLO)
Chuự yự: khõng ủửụùc sửỷ dúng DB “instance” vụựi CC vaứ UC.
Addr coự theồ laứ ủũa chổ trửùc tieỏp hay laứ ủũa chổ giaựn tieỏp boọ nhụự (memory indirect address). ắ Laứm vieọc vụựi chửực naờng MCR:
MCR duứng ủeồ táo hay ngaột luồng naờng lửụùng (ủửụứng daĩn ủieọn). Caực leọnh sau bũ aỷnh hửụỷng bụỷi MCR laứ: leọnh gaựn (=), leọnh SET vaứ RESET bit (S, R) vaứ leọnh chuyeồn dửừ lieọu T (duứng byte, word, double word). Sửù phú thuoọc cuỷa chuựng theo MCR ủửụùc cho theo baỷng 1.12.
Tráng thaựi tớn hieọu cuỷa MCR
= S hay R T
0 Ghi 0 Khõng ghi (nghúa laứ toaựn
háng khõng ủoồi) Ghi 0