STACKINT (pilha inteiros)
A instrução STACKINT gerencia uma pilha de valores inteiros.
Detalhes da operação:
- O STACKINT inclui uma detecção de borda ascendente para os comandos PUSH e POP. O tamanho máximo da pilha é 128. O valor OFLO é válido apenas após uma reinicialização (R1 foi definido para TRUE pelo menos uma vez e de volta para FALSE).
- O tamanho da pilha (N) definido pelo aplicativo não pode ser menor que 1 ou maior que 128.
- Se N < 1, STACKINT assume um tamanho de 1.
- Se N > 128, STACKINT assume um tamanho de 128.
Linguagens suportadas: Diagrama de blocos de função, diagrama de ladder, texto estruturado.
Essa instrução aplica-se aos controladores Micro810, L20E, L50E e L70E.
STACKINT

Parâmetro | Tipo do parâmetro | Tipo de dados | Descrição |
|---|---|---|---|
PUSH | Entrada | BOOL |
|
POP | Entrada | BOOL |
|
R1 | Entrada | BOOL |
|
IN | Entrada | DINT | Valor inserido. |
N | Entrada | DINT | Tamanho da pilha definido pelo aplicativo. O tamanho máximo da pilha é 128 |
EMPTY | Saída | BOOL |
|
OFLO | Saída | BOOL |
|
OUT | Saída | DINT | Valor no topo da pilha. OUT igual a 0 quando OFLO é TRUE. |
Exemplos de STACKINT
Exemplo de diagrama de blocos de função STACKINT

Exemplo de diagrama de ladder STACKINT

Exemplo de texto estruturado STACKINT

(* ST Equivalence: STACKINT1 is an instance of a STACKINT block *) STACKINT1(err_detect, acknowledge, manual_mode, err_code, max_err); appli_alarm := auto_mode AND NOT(STACKINT1.EMPTY); err_alarm := STACKINT1.OFLO; last_error := STACKINT1.OUT;
Resultados

Dê sua opinião