2011-08-17 27 views
6

C'è un modo semplice per utilizzare librerie intese per l'IDE Arduino con il codice C e assembly che scrivo per AVR-G ++/AVR-GCC?Utilizzo di librerie Arduino con AVR-G ++

Sto provando a utilizzare lo Adafruit Wave Shield library, ma semplicemente includendo l'intestazione ei file cpp non fanno molto bene. Posso compilarlo in qualche modo e collegarlo al mio codice C? O forse trovi solo un modo per farlo compilare con il mio codice C.

Attualmente, quando cerco di fare qualcosa di semplice come:

#include "WaveHC/WaveHC.h"  
SdReader card; 
card.init(); 

vengo accolto con:

70: undefined reference to `SdReader::init(unsigned char)' 

risposta

2

È possibile costruire il codice di Arduino con CMake. Ho realizzato grandi progetti Arduino senza utilizzare l'IDE in questo modo. Puoi usare qualunque strumento tu voglia costruire il codice Arduino, è solo una libreria C/C++. Devi principalmente assicurarti di avere tutte le impostazioni del preprocessore corrette (F_CPU? Forse alcune altre).

Build using Cmake potrebbe aiutarti. Fondamentalmente, vorrei creare un file di libreria per la libreria Arduino, un file di libreria per la libreria shield e un file EXE per il codice.

3

Io uso questo makefile per compilare tutto il mio codice per Arduino senza utilizzare IDE. È possibile utilizzare sia le librerie Arduino che le librerie utente in questo makefile.

Aggiornamento: C'è anche un tutorial, che spiega come impostare e utilizzare questo makefile.