diego_fly Inserito: 29 agosto 2006 Segnala Inserito: 29 agosto 2006 Ciao, per caso qualcuno sa come si fa ad andare a leggere il valore della prima e seconda byte di una word in WinCC? Grazie
walterword Inserita: 29 agosto 2006 Segnala Inserita: 29 agosto 2006 devi scrivere uno script in C .Guarda nella guida - . se c'e' qualche funzione del genere oppue la estrapoli con le maschere 0xff e 0xff00 ciao
Savino Inserita: 30 agosto 2006 Segnala Inserita: 30 agosto 2006 (modificato) Vedi se lo script ti permette di dichiarare una struttura di data del tipo union in modo di formatare una variabile WORD in una array CHAR di tre (il terzo=NULL) elementi. La conversione averebbe per pura corrispondenza senza delay di trasformazioni. union Word_ // struttura{ short int Word_16; signed char Byte[2];};union Word_ m_Var; // m_Var e' la variabile m_Var.Word_16=+12110; // 2F4E m_Var.Byte[1] =2F; m_Var.Byte[0] =4E;Se nella tablella di asegnazione del tipo di data per quel tag non trovi il supporto per questa struttura allora importa il codice fondato in una DLL oppure in una OCX scritta in ambiente C /C++ puro. Good things. Modificato: 30 agosto 2006 da Savino
diego_fly Inserita: 27 settembre 2006 Autore Segnala Inserita: 27 settembre 2006 Scusate il ritardo. Grazie a tutti per l'aiuto. Comunque sono riuscito a farlo in modo molto semplice....Data una DBD XHo ricavato le due word facendo: WordH= DBD X mod 65556, WordL= DBD X \ 65556, / \ / \ ByteH=WordH mod 256 ByteL=WordH \ 256 ByteH=WordL mod 256 ByteH=WordL \ 256
Savino Inserita: 27 settembre 2006 Segnala Inserita: 27 settembre 2006 Ho ricavato le due word facendo: WordH= DBD X mod 65556, WordL= DBD X \ 65556, / \ / \ByteH=WordH mod 256 ByteL=WordH \ 256 ByteH=WordL mod 256 ByteH=WordL \ 256Caro diego_fly,Senzaltro che il tuo algoritmo funzionarebbe...Per esempio se io ti direi di elaborare non so.. 2000 tags (e non sono tanti) tu saresti assolutamente fuori.Perche' non farlo per " correspondenza " piuttosto che calcolato.Il tempo ciclo di elaborazione sarebbe = ZERO.
ifachsoftware Inserita: 28 settembre 2006 Segnala Inserita: 28 settembre 2006 Per esempio se io ti direi di elaborare non so.. 2000 tags (e non sono tanti) tu saresti assolutamente fuori.Perche' non farlo per " correspondenza " piuttosto che calcolato.Il tempo ciclo di elaborazione sarebbe = ZERO.Questa affermazione in teoria e' valida , ma dipende da come viene tradotta dal compilatore per il micro che ha sotto....Ciao
Savino Inserita: 30 settembre 2006 Segnala Inserita: 30 settembre 2006 Questa affermazione in teoria e' valida , ma dipende da come viene tradotta dal compilatore per il micro che ha sotto....Ciao ifachsoftware, Appunto... in realta', con l' indicazione dell'ettichetta ZERO ho voluto rappressentare un valore di offset assolutamente non assoluto.... ma indicativo di un amontare relativamente molto basso.
diego_fly Inserita: 2 ottobre 2006 Autore Segnala Inserita: 2 ottobre 2006 Grazie, purtroppo ho i tempi ristretti e non posso perdere molto tempo a testare. comunque quando avrò finito il progetto, proverò l'algoritmo con calma. Ciao
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