Ragnetto Inserito: 17 marzo 2022 Segnala Share Inserito: 17 marzo 2022 Ciao a tutti, In azienda sto cominciando a lavorare su progetti esistenti scritti da altri programmatori e che devo imparare per poi metterci le mani. Un dubbio che non riesco a risolvere/capire è il formato NUMBER associato ai timer (TIM/TIMX) Mi è chiaro il BOOLE come falg di completamento. Ho compreso la posizione di memoria dove storare i tempi nei vari formati numerici, ma il NUMBER ancora non ho capito a cosa serva tanto più se eseguo una ricerca nel programma non ha nessuna rispondenza se non nella tabella dei simboli.. Grazie in anticipo, R. Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 17 marzo 2022 Segnala Share Inserita: 17 marzo 2022 (modificato) NUMBER, in CX-programmer, sono le costanti. Sono valori numerici che non occupano alcuna memoria, e permettono di associare un identificativo (nome label) a un valore numerico che altrimenti sarebbe di difficile interpretazione. E' la stessa cosa di un DEFINE in C. In pratica, per esempio, posso definire delle costanti quali Impxmm NUMBER 100 (impulsi per millimetro) e tutte le volte che il compilatore trova Impxmm lo sostituisce con 100 (che non è autoesplicativo, potrebbe essere 10s per un timer in decimi...). Stessa cosa per esempio se uno definisce _1s NUMBER #10 (notare l'underscore, i nomi variabile non possono iniziare con numeri) e poi scrive in un rung TIM 1 _1s, si definirà il timer T1 ad 1 secondo (10 decimi) La comodità è poi data dal fatto che se io, per il primo esempio, in una macchina simile ma con un encoder diverso avessi 250 impulsi per millimetro, basterà cambiare la defnizione Impxmm NUMBER 250 e in tutto il programma la Impxmm avrà il nuovo valore. Se nel programma non è usata, semplicemente forse viene da una tabella simboli dove c'era la necessità di usare la variabile. Modificato: 17 marzo 2022 da Ctec Link al commento Condividi su altri siti More sharing options...
Ragnetto Inserita: 17 marzo 2022 Autore Segnala Share Inserita: 17 marzo 2022 (modificato) Andrea sei un grande, Come sempre velocissimo nelle risposte. Con l'analogia del C la cosa mi è molto più chiara ed anche l'utilizzo nel caso di definizione di variabile da potere modificare in caso di necessità. Però qualche dubbio mi rimane, nel senso che nel programma non ne trovo l'utilità se non quella di fare comparire il nome all'interno del blocco Timer. La definizione di NUMBER viene fatta per tutti gli oggetti Timer. allego un esempio per spiegarmi meglio. R. Modificato: 17 marzo 2022 da Ragnetto Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 17 marzo 2022 Segnala Share Inserita: 17 marzo 2022 L'utilità secondo me sta nel fatto che tutte le impostazioni dei vari timer sono tutte NUMBER, e se te ne devi cambiare alcuni, senza andare a cercarli nel programma, ti evidenzi tutti i NUMBER nella tabella dei simboli, cambi i valori associati alle label e voilà. Il tutto senza occupare né una memoria ritentiva né altro. E anche alla faccia dei valori iniziali di alcuni software (sistema che io non sopporto). 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