Vai al contenuto
PLC Forum


Parametri Formato Puntatore E Sfc20 - Chi mi puo' aiutare?


BRUNO_regg

Messaggi consigliati

Ciao a tutti,

non ricordo quale e' la sintassi corretta per indicizzare una variabile formato P#...

Ricordo che in uno dei tanti manuali Siemens c'era una descrizione della sintassi corretta, ma non sono riuscito a trovarla.

Tramite il blocco SFC20, devo trasferire un gruppo di byte residenti nella DB10 oppure DB11 a seconda del valore che mi ritrovo in un MB.

Esempio:

Trasefrimento byte DB10

MB=0

trasferisco DB10.Dbb.0..3 nella DB12,

MB=1

trasferisco DB10.Dbb.4..7 nella DB12,

MB=2

trasferisco DB10.Dbb.8..11 nella DB12,

Trasferimento byte della DB11

MB=3

trasferisco DB10.Dbb.0..3 nella DB12,

MB=4

trasferisco DB10.Dbb.4..7 nella DB12,

MB=5

trasferisco DB10.Dbb.8..11 nella DB12,

CALL "BLKMOV"

SRCBLK :=P#DBxx.DBXx.y BYTE 4

RET_VAL:=LW100

DSTBLK :=#DB12.DBX0.0 BYTE 4

Link al commento
Condividi su altri siti


Ciao RickyM,

grazie per le risposte,

ma quello che non riesco a trovare e' la sintassi corretta per

scorporare l'istruzione P#DB10.dbx0.0 BYTE 4

Ricordo che l'istruzione occupa 8 o 10 word, e ogni word (o byte?) corrisponde a un dato;

es: Word 0 corrisponde alla DBxx, word 2 corrisponde al dbx di partenza, word 4 corrisponde alla quantita' di byte, ecc.

Ecco, quello che voglio fare e' indicizzare l'istruzione P#.... per poter trasferire dati tramite la SFC20 una quantita' di dati sempre uguale come lunghezza ma con DB oppure dbx di partenza diverse.

Ciao e grazie Bruno :)

Link al commento
Condividi su altri siti

Se fai una ricerca nell'. di S7 usando la parola chiave ANY (sotto indice) trovi tutte le informazioni di cui necessiti e anche un esempio di utilizzo.

ciao

Modificato: da chibboy
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...