Scrittura libreria

Ciao a tutti, mi servirebbe sapere come scrivere una libreria da utilizzare per un mio sketch.

Ci ho provato, ma probabilmente o non conosco le istruzioni che devo inserire, o sbaglio la collocazione o altro della mia libreria.

La libreria si chiamerà :

ircodes.h

Quindi io vorrei che nel mio programma che si chiama:

ircommander.pde

posso scriverci:

#include "ircodes.h"

Come faccio? Devo usare gli ifndef etc...?

La mia libreria dovrebbe essere semplicemente una cosa del genere:

int digitale_terrestre_1[]= {
  896, 436,};

La devo salvare in .h?

Dove la devo mettere per poterla utilizzare con il mio sketch?

Di quanti file c'è bisogno?
Uno .pde uno .h e uno .cpp ?

Oppure quello .cpp si può evitare? Devo per forza utilizzare il costrutto class?

Ciao,

Fab

forse ti può essere utile questo tutorial

Questo documento è una copia di questo:

http://www.arduino.cc/playground/Code/Library

che è fatto molto meglio.

Comunque ho capito che probabilmente non si può fare a meno di un file di implementazione .cpp !!!

Ragazzi ci sono riuscito da solo, ricordandomi qualcosa di programmazione 1.

Ho creato un file header:

digitale_terrestre.h
eccolo:

#ifndef digitaleterrestre_h
#define digitaleterrestre_h
 
#include <WProgram.h> //It is very important to remember this!

class digitale_terrestre{
public:
      static int digit_one[];
};
#endif

Poi ho creato il cosiddetto file di implementazione, chiamato
digitale_terrestre.cpp
eccolo:

#include "digitale_terrestre.h"

int digitale_terrestre::digit_one[]={
  // ON, OFF (in 10's of microseconds)
  896, 436,
  62, 48,
  62, 48,
  64, 46,
  64, 48,
  60, 48,
  64, 46,
  64, 48,
  62, 46,
  64, 158,
  62, 158,
  64, 156,
  66, 158,
  62, 158,
  64, 156,
  64, 46,
  64, 156,
  66, 46,
  64, 156,
  64, 46,
  64, 48,
  62, 158,
  64, 46,
  62, 158,
  64, 48,
  62, 158,
  64, 46,
  62, 158,
  64, 158,
  64, 46,
  64, 156,
  64, 46,
  66, 154,
  66, 4036,
  898, 212,
  62, 0};

E infine ho scritto nel mio sketch principale:

#include "digitale_terrestre.h"
....
....
e il resto del codice naturalmente... :)

Ciao, se a qualcuno serve aiuto su queste cose, per quel poco che so... basta chiedere

ciao,

fab

f.schiano:
Comunque ho capito che probabilmente non si può fare a meno di un file di implementazione .cpp !!!

Dipende da cosa devi fare, una libreria può essere costituita anche da un singolo file.h se contiene solo delle define.
Le classi non sono obbligatorie, le usi solo se vuoi creare un nuovo oggetto con i relativi metodi e proprietà come nell'esempio sul playground dove viene creato l'oggetto LED, ma nulla vieta di creare solo le funzioni che fanno ciò che serve.