Vai al contenuto
PLC Forum


Variabili E Interrupt


bombernigno

Messaggi consigliati

Salve,

ho creato un programma che utilizza un interrupt, all'interno di quest'ultimo si associa il valore di un registro TCCN0 a quello di una variabile unsigned char, quando torno nel main la variabile non è utilizzabile ovvero risulta essere nulla. Ma se guardo lo stato della memoria la variabile è presente con il valore giusto.

Perchè? come faccio ad utilizzare nel main variabili associate nelle funzioni interrupt?

ciao

Link al commento
Condividi su altri siti


Spesso questi inconvenienti accadono quando il compilatore effettua particolari ottimizzazioni del codice (Es. Loop) ed utilizzo dei registri temporanei per la conservazioni dei valori delle variabili (Register Marshalling).

Con la keyword "volatile" informi il tuo compilatore che quella particolare variabile "può cambiare".

Hai trovato la soluzione più elegante e corretta

RT

Link al commento
Condividi su altri siti

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 account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...