Salve a tutti e possibile che due istanze di una stessa libreria abbiano delle variabili in comune? Sto sperimentando questo progetto: http://openenergymonitor.org/emon/node/58/ modificandolo per leggere due valori di potenza (importata ed esportata) ma se uso due istanze della libreria i valori sballano come se le due istanze usassero variabili in comune per fare i calcoli, è possibile? e se si come si risolve?
se non è una libreria ma un oggetto questo problema non si trova salvo vvaribili statiche, ma le variabili statiche lo sono proprio perchè VUOI che siano in comune.
è più probabile che la libreria faccia dei settaggi ai registri del micro per funzionare in un certo modo, e la secondaa istanza invece voglia usare dei valori differenti e vanno quindi in conflitto.
Ho dato un'occhiata alla lib. A parte l'accesso diretto all'ADC per la lettura, non vedo altre manipolazioni di registri che facciano pensare ad un "intreccio" delle 2 istanze.
Non mi pare neanche che la lib sia particolarmente corposa.
Forse è il resto dello sketch?
Praticamente se elimino la parte di codice che usa emon2 ottengo le letture giuste, ma se cerco di usare l'altra istanza i valori diventano tutti errati
se sono dichiarati nella classe hai ragione. ma se sono dichiarati fuori allora sono duplitati, e non so se in caso di doppia inclusione possono generare errore. Sinceramente non conosco abbastanza il c++ per sapere se questo è possibile, e se questo può evvenire anche nel cpp
Si 2 sensori amperometrici sui pin 1 e 3 mentre sul pin 2 leggo la tensione in uscita dall'inverter dei pannelli solari, ossia pin 3 potenza esportata e pin 1 (sensore sul contatore) potenza inportata (usata in casa insomma)
magari ci sono variabili dichiarate nel .h?
Si ma sono dentro la dichiarazione della classe alcune in "Public:" e altre in "Privare:"
Domani provo a ricontrollare il circuito di connessione dei sensori con l'arduino anche se non mi sembrerebbe questo il problema