Abrindo um arquivo de exemplo.
Aos nossos olhos, a maior vantagem da platafrorma Arduino é a quantidade de exemplos de programas disponíveis para o iniciante.
Na internet, a comunidade Arduino é ENORME, portanto encontra-se de tudo, desde exemplos de funções triginométricas, biblioteca para leitura de cartão de memória e até implementações completas, disponíveis “na faixa”.
Vamos começar o uso da IDE abrindo um programa de exemplo bem simples. Aproveite e veja a lista de exemplos que vem com a IDE:
Vamos escolher o exemplo chamado “Blink”. Esse programa faz um LED piscar.
A maioria das placas de Arduino, inclusive a X-DUINO, possuem um LED conectado em um pino, geralmente o pino 13. Veja na nossa placa, um LED verde na área central da borda superior da placa.
Estudo da estrutura do programa
Para facilitar o entendimento, traduzimos os comentários do programa Blink (em cinza) para o português. Esses comentários não influenciam a execução do programa, mas são importantes para o entendimento do mesmo.
O programa para Arduino é dividido em duas sessões principais. Setup e Loop.
Essas sessões são duas funções especiais que todo programa deve ter.
A sessão setup serve para inicialização da placa e do programa. Esta sessão é executada uma vez quando a placa é ligada ou resetada através do botão. Nesta sessão o hardware da placa é inicializado, ou seja, todos os módulos que usaremos devem ser configurados aqui. No nosso exemplo, vamos informar para a placa que o pino 13 será uma saída digital onde está conectado um LED.
A outra sessão, loop é o programa principal que será executado na placa.
O programa escrito dentro da função loop é executado indefinidamente, ou seja, ao terminar a execução da última linha desta função, o programa inicia novamente a partir da primeira linha da função loop e continua a executar até que a placa seja desligada ou o botão de reset seja pressionado.
O programa para piscar o led é simples: Na primeira linha, o pino 13 é posto em nível alto através do comando “digitalWrite”. Depois através do comando “delay” o programa aguarda 1000 milésimos de segundos, ou um segundo, sem fazer nada.
Então o pino 13 é posto em nível baixo e mais um segundo será esperado. Pronto, o LED conectado no pino 13 piscará indefinidamente de 2 em dois segundos.
Para compilar e verificar se está tudo correto, clique no primeiro botão da barra de botões: Verify
Tudo correu bem, uma mensagem informando a conclusão aparece sobre o console: done compiling.
Adicionalmente uma outra mensagem informa o tamanho em bytes do seu programa, além do tamanho máximo que o programa pode assumir. O tamanho máximo varia de acordo com o chip controlador que a placa arduino informada possui, no nosso caso é um ATMega168 que possui algo em torno de 14 Kbytes disponíveis para o programa.
Cometemos um erro proposital no programa, e mandamos compilar novamente:
O programa ao compilar, detectou que a função “digital_Write” não existe (a correta é “digitalWrite”).
A IDE nos informou qual o erro e qual a linha do erro. Fácil né?? Depende muito do erro, mas a maioria é como esse.
Gravando o programa na placa
O processo para gravar o programa na placa envolve a preparação da IDE que já fizemos no começo da aula, porém uma praparação externa deve ser realizada. A conexão da placa no PC e a sua energização.
A maior parte das placas que possuem entrada USB para gravação, também recebem os 5 Volts necessários para o seu funcionamento diretamente da porta USB. Neste caso, você só precisa conectar a placa no PC para seguir. Geralmente essas placas acendem um LED quando está tudo OK.
Então, se a verificação/compilação do programa ocorrer com sucesso, podemos gravar o programa na placa. Para isso, pressionamos o segundo botão na barra de botões da IDE: O botão Upload
O console nos informa que o upload foi realizado com sucesso. Neste momento o LED da placa começa a piscar. A mensagem em vermelho é um aviso sobre o programa bootloader que estamos usando. Parece que ele está desatualizado, mas tudo funciona normalmente.
Abaixo um video do LED verde piscando
Basicamente é só isso que precisamos saber para trabalhar com a IDE do Arduino. Mas para não ficar só na superfície, na última página da nossa aula vamos aprender sobre as outras funções da IDE.