[RESOLVIDO]Dúvida:Criar BiBlioteca Arduino

Estou a tentar criar uma biblioteca para o arduino e tentei fazer um exemplo que encontrei.
Este foi o exemplo:

Segui também este artigo:
http://arduino.cc/en/Hacking/LibraryTutorial
Extrato do meu código em seguida.
Luz.h:

#ifndef Luz_h
#define Luz_h

class Luz
{
    public:
    Luz(int pin);
    void acende();
    void apaga();
    private:
    int _pin;
};
#endif

Luz.cpp:

#include "Luz.h"
#include <WProgram.h>

Luz::Luz(int pin)
{
  pinMode(pin,OUTPUT);
  _pin=pin;
}

void Luz::acende(){
  
  digitalWrite(_pin,HIGH);
}

void Luz::apaga(){
  digitalWrite(_pin,LOW);
}

keywords.txt:
(com tab e não espaço)

Luz	KEYWORD1
acende	KEYWORD2
apaga	KEYWORD2

Programa para usar a biblioteca criada:

#include<Luz.h>

Luz luz(13);

void setup(){}

void loop(){}

Apenas este código já dá erro.O que faço de errado?

Que erro é que te dá?

Onde guardaste os ficheiros Luz.h e cpp?

Reiniciaste a IDE do Arduino?

Guardei no diretório C:\Program Files\Arduino\libraries e reiniciei,aliás aparece que a reconhece. O erro tem haver com o "constructor e destructor" e não consigo perceber. Também já me deu este erro: C:\Program Files\Arduino/sketch_sep22a.ino:3: undefined reference to `Luz::Luz(int)'

Leste bem o artigo que postaste aqui???

Em lado algum referem o ficheiro WProgram.h...

Referem sim o Arduino.h... e esse não se encontra em lado nenhum. Dá lá uma vista de olhos ao link que meteste... está tudo lá.

Continua o mesmo erro,ocorre os erros que descrevi.Alguma sugestão?

Já fiz o download nesta página:

E ocorre outro erro, que é este:
C:\Program Files\Arduino\libraries\Morse/Morse.h:10:21: error: WProgram.h: No such file or directory
Porisso que anteriormente inclui #include<WProgram.h>.

Desculpa lá... estás a gozar com a gente????

O código que colocaste funciona sem erros se trocares o WProgram.h por Arduino.h.

Foi isso que te disse no post em baixo... para ires ver a página oficial do Arduino que estava tudo lá.

Depois vens aqui dizer que tens um erro no ficheiro Morse.h... onde car**** é que está esse ficheiro no código que postaste inicialmente????

Antes demais, não estou a gozar com qualquer pessoa que seja. Estou a expor as minhas dúvidas e agradeço a ajuda dada. Eu fiz as substituição,que foi a seguinte: Luz.cpp: (Substitui WProgram.h por Arduino.h)

#include "Luz.h"
#include "Arduino.h"
Luz::Luz(int pin)
{
  pinMode(pin,OUTPUT);
  _pin=pin;
}

void Luz::acende(){
  
  digitalWrite(_pin,HIGH);
}

void Luz::apaga(){
  digitalWrite(_pin,LOW);
}

A mim o erro mantem-se: sketch_sep22a.cpp.o: In function __static_initialization_and_destruction_0': C:\Program Files\Arduino/sketch_sep22a.ino:3: undefined reference toLuz::Luz(int)' Em relação Morse.h foi o código que fiz download do link postado, nada tem haver com o código transcrito.

Amigo nao ha nada de errado na tua lib.So podes estar a coloca-la no local errado e nao deve estar a ser importada.
Em anexo tens a tua lib com o exemplo a compilar e a funcionar correctamente.

#include <Luz.h>
Luz aminhaLampada(13);

void setup()
{
  Serial.begin(9600);
}
void loop()
{
delay(1000);
aminhaLampada.acende();
delay(1000);
aminhaLampada.apaga();

}

So tens de descomptactar o arquivo em anexo para a pasta das bibliotecas do arduino e reniciar a IDE.
Depois copia e cola o codigo acima e faz upload

luz.zip (854 Bytes)

Obrigado HugoPT já percebi meu erro.Estava a colocar o ficheiro Luz.cpp não trasncrito pelo bloco de notas mas guardado diretamento pelo software do arduino.