Operational Amplifier Inserito: 8 aprile 2015 Segnala Inserito: 8 aprile 2015 Ho creato un FB100 che funziona solamente generando il suo DB dedicato......creando un FB dove raggruppo questi FB non funziona, ho cercato sul forum ed ho capito che per inserire dei blocchi funzionali (FB) in multistanza bisogna sommare il valore del registro AR2 che restituisce l'offset della multiistanza. Allora ho scritto il seguente codice: LAR1 P##POINTER_LETTURA //CARICO IL PUNTATORE DA CUI PRELEVO I DATI NEL REGISTRO AR1 TAR2 //OFFSET MULTIISTANZA +AR1 L W [AR1,P#0.0] //PRELEVO IL NUMERO DB DAL PUNTATORE T #N_DB L D [AR1,P#2.0] //PRELEVO IL NUMERO DI BYTE DA DOVE INIZIARE T #INDICE_LETTURA //TRASFERISCO NEL REGISTRO AR1 Fino a qui sembra tutto OK......quello che non riesco a far funzionare è questa parte di codice : LAR1 P##DATA_PTR //PUNTATORE ANY (TEMP) L B#16#10 //16#10 per S7 T LB [AR1,P#0.0] L B#16#2 //Tipo di dati 16#2 = BYTE T LB [AR1,P#1.0] L #QUANTITA_WORD //Fattore di Ripetizione L 2 *I L 7 //SOMMO I PRIMI SETTE BYTE DEL TELEGRAMMA +I T W [AR1,P#2.0] L 0 //Numero di DB T W [AR1,P#4.0] L P#DIX 17.0 <----- il problema è aggiungere l'offset quì T D [AR1,P#6.0] Qualche idea........?
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora