Vai al contenuto
PLC Forum


Utilizzo Indici Ir0 E Dr0


ms4369

Messaggi consigliati


Ciao ms4369,

i registri indice IR si possono utilizzare come puntatori per operazioni di indirizzamento indiretto; quindi sfruttati come veri e propri puntatori per la memoria del PLC tramite delle funzioni ad essi associate.

Mentre i Registri DR sono visti come "offset" relativi alla posizione del puntatore.

Tipicamente esistono 16 registri IR (IR00 a IR15) e 16 registri DR (DR00 a DR15).

Il registro IR contiene l’indirizzo fisico della word o del bit all’interno della memoria del PLC e per accedere al valore puntato dal registro IR, nelle istruzioni si usa la sintassi ,IR. (ovviamente puoi usare l’indirizzamento indiretto anche per i bit).

Ti faccio un esempio:

Se scrivo un'istruzione:

MOVR

D0

IR0

alla chiusura del contatto in ingresso all'istruzione, all'interno di IR0 (che è un registro indice) viene posto l’indirizzo per avere l’accesso alla memoria del Data Memory 0 (quindi in questo momento IR0 punta D0).

E se successivamente scrivo quest'altra istruzione:

MOV

,IR0

D100

alla chiusura del contatto in ingresso all'istruzione ,IR0 consente l’accesso alla memoria indirizzata da IR0.

Quindi ricapitolando:

Dopo la MOVR IR0 punta a D0 quindi ,IR0 = D0
Se precedentemente D0 = 1234 dopo la MOV D100 sarà = 1234.

Spero di esserti stato d'aiuto. :thumb_yello:




Link al commento
Condividi su altri siti

Chiaro :thumb_yello:

se utilizzo indice DR0 ?

secondo me:

es.

MOV

&1

DR0

alla chiusura del contatto in ingresso all'istruzione, imposto il registro DR0 = 1.

MOVR

D0

IR0

alla chiusura del contatto in ingresso all'istruzione, all'interno di IR0 (che è un registro indice) viene posto l’indirizzo per avere l’accesso alla memoria del Data Memory 0 (quindi in questo momento IR0 punta D0).

MOV

DR0,IR0

D100

alla chiusura del contatto in ingresso all'istruzione, DR0,IR0 consente l’accesso alla memoria indirizzata da IR0 con offset DR1.

In D100 ci sarà il valore del D1.

è giusto??

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...