Errore compilazione sketch

Buonasera e buon anno a tutti!! :smiley:

Ho un piccolo problema che mi sta irritando!! Allora, su questo sito c'è uno sketch che mi interessa, ho provato a compilarlo con l'ide 1.0.3 ma non va, mi da questo errore:

In file included from sketch_jan03a.ino:1:
C:\Users\Utente\Desktop\Arduino 1.0.3\libraries\TimedAction/TimedAction.h:33:22: error: WProgram.h: No such file or directory

Ho installato(?) la libreria TimedAction. Come posso risolvere?
Grazie!

maggio93:
Buonasera e buon anno a tutti!! :smiley:

Ho un piccolo problema che mi sta irritando!! Allora, su questo sito c'è uno sketch che mi interessa, ho provato a compilarlo con l'ide 1.0.3 ma non va, mi da questo errore:

In file included from sketch_jan03a.ino:1:

C:\Users\Utente\Desktop\Arduino 1.0.3\libraries\TimedAction/TimedAction.h:33:22: error: WProgram.h: No such file or directory



Ho installato(?) la libreria TimedAction. Come posso risolvere?
Grazie!

be è chiaro che non ti vede la libreria.. nel desktop\arduino\libreries\timedaction hai o non hai il file .h? ...e ancora prima in arduino\libraries trovi la directory timedaction? ... tante volte è da rinominare correttamente... e poi sei uscito da tutti gli sketch e rilanciato arduino.exe?

qsecofr:
nel desktop\arduino\libreries\timedaction hai o non hai il file .h? ...e ancora prima in arduino\libraries trovi la directory timedaction? ... tante volte è da rinominare correttamente... e poi sei uscito da tutti gli sketch e rilanciato arduino.exe?

Si, la cartella TimedAction è presente e c'è anche il file .h, allego screen... Ho chiuso tutto... Non va... :disappointed_relieved:

Immagine.png

maggio93:

qsecofr:
nel desktop\arduino\libreries\timedaction hai o non hai il file .h? ...e ancora prima in arduino\libraries trovi la directory timedaction? ... tante volte è da rinominare correttamente... e poi sei uscito da tutti gli sketch e rilanciato arduino.exe?

Si, la cartella TimedAction è presente e c'è anche il file .h, allego screen... Ho chiuso tutto... Non va... :disappointed_relieved:

si scusami stavo dormendo: il compilatore cerca wprogram.h... poi cercando sul playground arduino.cc sessione gestione librerie ho trovato questo commento in testa ad un programma

#include <WProgram.h> //It is very important to remember this! note that if you are using Arduino 1.0 IDE, change "WProgram.h" to "Arduino.h"

prova allora ad aprire la timeraction.h e .cpp e sostituisci le occorrenze poi vediamo se funziona

Il file WProgram.h era incluso nelle librerie scritte per le vecchie versioni 002x dell'IDE. Dalla 1.0 in poi il file header principale del core di Arduino è Arduino.h.
Talvolta basta modificare come nell'esempio citato per rendere una lib compatibile con la nuova versione. Ma non sempre basta: la 1.0 introduce anche alcune modifiche a delle funzioni base rispetto a come era col vecchio core per cui non sempre basta modificare WProgram.h in Arduino.h per far andare tutto.

Per risolvere il problema e compilare correttamente anche con le versioni precedenti dell'IDE, sostituisci
change

#include "WProgram.h"

con

#if defined(ARDUINO) && ARDUINO >= 100
#include "Arduino.h"
#else
#include "WProgram.h"
#endif

Oppure invece di usare la TimedAction una la LeOS --> leOS, un semplice SO per Arduino – Leonardo Miliani

Ragazzi, tutto ok!! Ho modificato il file .h e al posto di "WProgram.h" ho messo "Arduino.h"!! :smiley: Grazie!! :wink: Ora però ho un altro problema!! hahaha Aprirò un nuovo topic! :wink: