Vai al contenuto
PLC Forum


Jmp


gino123456

Messaggi consigliati

ciao sto mettendo mano ad un prog non mio ;););) e la cosa non mi piace comunque

io ho un jmp dentro una sub e poi dopo un instruzione ho il fine sub ora il fine sub mi chiude pure il jmp ??????

ciao gino123456

Link al commento
Condividi su altri siti


E' una cosa che non ho mai fatto.

Credo che nel momento in cui il program counter arriva all'istruzione JMP pianti lì tutto e riprenda dopo la prima istruzione JME che troverà nel programma (perciò al ciclo successivo nel tuo caso). Quindi la JMP, di fatto, chiude anche la subroutine senza completarla. Insomma, è un GOTO bello e buono.

Ricorda che la JMP funziona al contrario: se la sua condizione d'ingresso è 1 il programma viene eseguito normalmente. Se la condizione è 0 effettua il salto di programma.

Ciao.

Link al commento
Condividi su altri siti

CIAO c'è una cosa mi sono accorto che cx program li segna come errori tutti questi salti :(

una volta fatta la mia modifica avrò dei problemi a trasferire il prog con sti errori ?????? :(

ciao

gino123456

Link al commento
Condividi su altri siti

La cosa più semplice è collegare una CPU e provare.

Normalmente ciò che è segnalato come errore dai compilatori non può essere eseguito.

Ciao.

Link al commento
Condividi su altri siti

Credo che nel momento in cui il program counter arriva all'istruzione JMP pianti lì tutto e riprenda dopo la prima istruzione JME che troverà nel programma (perciò al ciclo successivo nel tuo caso). Quindi la JMP, di fatto, chiude anche la subroutine senza completarla. Insomma, è un GOTO bello e buono.

ciao ora ho trovato il jme di fine jmp il fatto che sta dentro ad una sub che non è mai chiamata il prog che fa ????????

non è che riparte dalla prima istruzione del prog??

non è una bella cosa ma mi sà che fà così

la penso giusta ????

gino123456

Link al commento
Condividi su altri siti

  • 10 months later...

Salve a tutti, volevo segnalare l'anomalia che ho riscontrato con il plc CJ1M.

L' istruzione di salto JMP è praticamente trasparente per il plc in questione.

Ho creato due temporizzatori attivabili con sue input separati, uno dei quali è compreso tra una JMP e un JME. Per il test ho utilizzato sia il CX Simulator 1.5 che il PLC vero e proprio(munito di switch e lampade) con i medesimi risultati.

Dando gli impulsi ad entrambi i timer,questi partono assieme a prenscindere dalla condizione di salto. PROVARE PER CREDERE.

Ho provato ad inserire il tuto in un inerlock, ma niente.

Nel C200h la stessa funzione era in grado di congelare il conteggio del timer, una volta saltati nella jump.

Per rimediare in parte a questo inconveniente nel set d'istruzioni ho trovato JMP0 che però termina il conteggio prima di congelare il dato.

Vorrei dunque capire a cosa serve l'istruzione JMP e la moglie JMPE :)

Link al commento
Condividi su altri siti

(quasi) come non detto. la jmp era invisibile per un problema di sintassi, omettevo un #, pur tuttavia nell'esempio indicato ci sono delle discordanze!

La jmp di un PLC C200H cpontinua a lavorare diversamente rispetto ad un nuovo CJ1M.

Fiducioso in una risposta, vi saluto tutti

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...