Jump to content
PLC Forum


Pointer


Recommended Posts

Posted

Ciao a tutti ,

Scusate ma dopo aver letto e riletto e utilizzato i puntatori nel 300 adesso che voglio fare il tutto nel 1200 non trovo l'awl e non so come fare.

Ho un array di 100 dword in db1 e le devo utilizzare con sld.

Sul pannello imposto una md10 con valore 230 e quando il bit 230 esimo è true mi abilita q0.0

Non so come puntare al bit 230;

auf db1

u dbx[md10]

=q0.0

Grazie


Posted

Ciao

per l'ìAWL sul 1200 non c'è.

per gli array all'interno di una DB basta fare così:

<nomeDB>.<nome variabile di tipo array>[variabile di tipo int] p.e. pippo.pluto[mw0]

se invece devi puntare ad un bit della variabile word dell'array devi:

<nomeDB>.<nome variabile di tipo array>[variabile di tipo int].x<numero del bit> p.e. pippo.pluto[mw0].x5 --> dove con x5 punti al sesto bit

spero di aver capito bene quello che chiedi

Ciao

Posted

ciao prima soluzione ok la seconda opzione la devo provare anche se non l' ho capita molto.

grazie per la risposta

Posted

allora dopo varie prove scrivendo db1.dbw[mw0] dove nell' mw0 c'e' scritto in formato int es:12 mi va sulla db1.dbw12 ma per i bit es:

devo puntare al 30 esimo bit dove il valore 30 è scritto trammite hmi in fomato int.

Allora scrivo 30 sull' hmi,

sul programma c'e' scritto es anche se in awl in un secondo tempo lo faccio in kop

auf db1

u dbx[mw0]

=m0.0

non riesco a far settare il bit m0.0 quando su dbx[mw0] la variabile mw0 è a 30.

Grazie e ciao

Posted

Ciao

se non ho capito male hai un array con più di 30 elementi binari e devi puntare al 30 bit?

Se è così devi fare <nome_db>.<nome array>[mw0] attenzione però l'array deve essere di tipo bool

la scrittura nome_db>.<nome variabile>.x<numero bit> ti serve se devi puntare ad un bit di una variabile dichiarata byte,word,dword

Ciao

  • 4 weeks later...
Giacomo Grassi
Posted

Scusate se mi intrometto nella vostra discussione ma vorrei chiedere anche io un chiarimento; se scrivo db1.dbw[mw0] e in mw0 ho dentro, per esempio, 24 mi verrà selezionata la db1.dbw24; ora posso fare questo: move db2.dbw100 (dove ho dentro per esempio=w#16#0fff) in db1.dbw[mw0] cioè MOVE

db2.dbw100

db1.dbw[mw0]

Quindi db1.dbw24=w#16#0fff.

Grazie.

Giacomo Grassi.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...