Go Down

Topic: Ajuda com bibliotecas arduino (Read 1 time) previous topic - next topic

luisandrade

Olá pessoal tudo bem?
Alguém poderia me explicar como funciona as bibliotecas no arduino, já vi varios sketchs utlizando bibliotecas, li bastante coisa mas ainda não encontrei nenhuma documentação que explique detalhadamente como as biblitecas funcionam e como são utlizadas.

Att

Luis andrade

Anthony Collucci

Luis,

Bibliotecas, são conjuntos de funçoes que você pode utilizar na sua aplicação.

A linguagem C/C++ foi projetada de forma a poder ser expandida atraves de funções essas funções podem ser generalizadas e distribuidas na forma de biblioteca. Portanto quando você inclui uma biblioteca esta adicionando um conjunto de funções.

Por exemplo se você não incluir a biblioteca servo.h com o #include<servo.h> você não consegue ustilizar o comando servo.attach(pin), pois a implementação padrão não incorpora os comandos dessa biblioteca nativamente.

Tenho escrito um tutorial, e nele eu falo um pouco sobre isso veja: http://amcollucci.com.br/2012/02/18/aprenda-a-programar-o-arduino-parte-3/

Até mais!
--
        Anthony M. Collucci
        (0xx31)9243-1690
      http://amcollucci.com.br
      http://astrobrasil.blogspot.com
      http://c

luisandrade

Muito bom esse seu totorial, lí todos e aprendi muito, mas me responde uma coisa, pra eu usar uma bilbioteca eu tenho que conhece-la a fundo?
Por exemplo o seu cod:
#include <amcled.h>
void setup(){
led I1;
I1.set_pino(13);
I1.liga_led();
}
void loop(){}
Seria possível me explicar passo a passo como funciona esse cod.

Anthony Collucci

@Luis Andrade,

Seguem explicações

Quote
#include <amcled.h>


Essa linha inclui a biblioteca que eu criei la no tutorial, e como se ela inserisse as informações dela da uma lida com atenção que vc verá que no primeiro exemplo eu implemento a biblioteca no proprio fonte, so depois eu transformo ela em uma lib.

Quote
void setup(){


Nessa linha eu inicio o bloco setup

Quote
led I1;


Defino a variavel l1 como uma variavel do tipo led, outras pessoas vao dizer eu instancio led em l1.

Quote
I1.set_pino(13);


uso o metodo set_pino() definido na lib, se voce ver la, vai perceber que e uma função do tipo int, e quando ela recebe o valor ela configura o pino correspondente como um pino de saida.

Quote
I1.liga_led();


aqui eu ligo o led, se voce olhar o codigo da lib vai verificar que simplesmete eu mando o bit 1 para a porta.

Quote
}
void loop(){}


Termino o bloco setup, depois incio e finalizo o bloco loop()

Em teoria você não precisa entender muito bem como funciona a biblioteca internamente, basta saber os comandos e argumentos utilizados. Mas sempre e interessante entender, pois assim você pode altera-la de acordo com a sua necessidade.

Agora quando não existe documentação para biblioteca daí você vai precisar ler a biblioteca e compreendê-la mesmo.

Consegui te explicar?
--
        Anthony M. Collucci
        (0xx31)9243-1690
      http://amcollucci.com.br
      http://astrobrasil.blogspot.com
      http://c

luisandrade

Com certeza, muito obrigado!
Continuarei com meus estudos, quanto aos seus tutoriais já terminaram, ou terão sequencia pois são muito bons pra quem tá começando.

Anthony Collucci

Tenho a intençao de lançar um update hoje, mas to meio devagar porque minha filha nasce essa semana, então ja viu.

Mas qualquer duvida o pessoal do forum e muito ativo, vai perguntando que vamos te ajudando...
--
        Anthony M. Collucci
        (0xx31)9243-1690
      http://amcollucci.com.br
      http://astrobrasil.blogspot.com
      http://c

luisandrade

Ah sim, parabéns pela filha tudo de bom.

Go Up