MrC Inserito: 10 dicembre 2003 Segnala Share Inserito: 10 dicembre 2003 Supponi di aver dichiarato all'interno della tua FC o FB un array di 100 dati interi :TEMPERATURA [1..100] of INTVorrei "PUNTARE" la temperatura , cioè fare un indirizzamento del tipo L MD10 //Da HMI metto su MD10 la temperatura che devo leggere L TEMPERATURE[MD10]So che così non funziona , ma ho provato anche puntandolo come punto i db normali :L P#0.0 T MD10L P#4.0+dT MD10L TEMPERATURE[MD10] <- erroreGrazie Link al commento Condividi su altri siti More sharing options...
JumpMan Inserita: 10 dicembre 2003 Segnala Share Inserita: 10 dicembre 2003 Prova così://(Nella seguente riga non sono tanto sicuro della sintassi, non posso provare) L P#TEMPERATURA[1] //Imposta AR1 con indirizzo del primo valore dell’array LAR1 //Legge indice L MD10 //Moltiplica per 8 per rendere compatibile con puntatore any, poi //moltiplica per 2 perché l’array è composto da INT che usa 2 bytes //(quindi moltiplica *16) L 16 *D //Incrementa AR1 con il risultato della moltiplicazione +AR1 //Ora AR1 punta a TEMPERATURA[MD10] L W [AR1,P#0.0] Link al commento Condividi su altri siti More sharing options...
MrC Inserita: 11 dicembre 2003 Autore Segnala Share Inserita: 11 dicembre 2003 Ciao Jump Man , intanto grazie della risposta .Sembra funzionare tutto , tranne la prima riga che dovrebbe darmi l'indirizzo di partenza dell'array .L P#TEMPERATURA[1] Si colora di rosso .Non saprei come ricavare l'indirizzo del primo elemento del vettore ,non è che mi daresti un'altra dritta ? Grazie *FeDe* Link al commento Condividi su altri siti More sharing options...
LaRocca Inserita: 11 dicembre 2003 Segnala Share Inserita: 11 dicembre 2003 Ciao.. Una domanda, il l'indirizzo di partenza dell'array nell FB/FC, Supponi di aver dichiarato all'interno della tua FC o FB un array di 100 dati interi dove? in un IN, OUT, INOUT, o come TEMP, Stat??se il puntatore é sul TEMP, per essempio, perche non punti sul temporale cosi:L LW 0 // Essempio area memoria Temporale che comincia su L 0.0 fino a L 1.7 (Locale) LAR1 Puó anche fare questo: L P##TEMPERATURA // anche stai apuntando su 0.0 sempre che Temperatura é in Local 0 LAR1 // caricato al registro di indirizzi come 0.0Guarda questo essempio, piú ilustrativo: Link al commento Condividi su altri siti More sharing options...
MrC Inserita: 12 dicembre 2003 Autore Segnala Share Inserita: 12 dicembre 2003 OK, così funziona come volevo !!! Accidenti, sono cose belle toste queste Grazie mille Link al commento Condividi su altri siti More sharing options...
Supertony Inserita: 3 luglio 2004 Segnala Share Inserita: 3 luglio 2004 ....mi permetto di aggiungere che molto spesso per moltiplicare per 16 è molto più comodo ed elegante fare un bel "SLD 4" !!! Link al commento Condividi su altri siti More sharing options...
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