Protezione dei registri indice in programmi di interrupt

Il compilatore ha il compito di assicurare che non siano sovrascritti registri indice usati in programmi di interrupt o in funzioni o in Function Block chiamati da programmi di interrupt.

L'esempio riportato qui sotto illustra come avviene la creazione codici per PLC (registro indice in interrupt: codice programma, commenti del programmatore sulla destra) per assicurare questo risultato:

PLC con banchi di registro indice (FP2SH e FP10SH)

INT0
ST R9010
F411_CHGB K1	Index register bank set to 1

ST R9010
F0_MV	DT458, I5	Actual program code
F0_MV	K5, I5DT455

ST R9010
F412_POPB		Index register bank reset

PLC senza banchi di registro indice

INT0
ST R9010
F0_MV	I5, DT461	Protecting the current content

ST R9010
F0_MV	DT458, I5	Actual program code
F0_MV	K5, I5DT455
ST R9010F0_MV DT461, I5	Rewriting the current content
IRET

L'ultima revisione: 2020-10-12Feedback su questa paginaPanasonic hotline