Hello, World! Linguagem C

Nesse artigo vamos dar os nossos primeiros passos na programação da Franzininho DIY usando a AVR Libc.

Nesse artigo vamos dar os nossos primeiros passos na programação da Franzininho DIY usando a AVR Libc.

Como de costume o nosso “Hello, World!” na eletrônica será um blink LED (Pisca LED). Ao final desse experimento você terá uma estrutura mínima para desenvolver aplicações para o ATtiny85 em C.

Bora, colocar em prática!

Recursos Necessários

  • Placa Franzininho DIY(com Micronucleus)
  • Computador com as ferramentas de software instaladas (link)

Hello, World! Em linguagem C com AVR LibC

Esse exemplo básico nos dará estrutura para todos nossos exemplos daqui pra frente. Como já mencionado, vamos usar a linguagem C em conjunto com a biblioteca AVR LibC. Para esse exemplo você só precisará da placa Franzininho DIY e as ferramentas de softwares listadas no artigo anterior.

O código exibe a estrutura mínima de um programa em linguagem C para microcontroladores. Se você tem dificuldades com a linguagem C, recomendo que confira os seguintes materiais:

Nesse momento é importante que você se atente a estrutura do código. Vamos usar alguns registradores para acionar o LED, mas não serão o foco da explicação. Confira os comentários no código a seguir:

Código

Compilação e upload

Para compilar o programa, acesse a pasta do exemplo e em seguida o comando make:

Baixe os exemplos no repositório do Github: Exemplos AVR LibC Franzininho

Já temos o makefile configurado na pasta, assim, será feita a compilação e em seguida aparecerá a mensagem para conectar a placa:

Conecte a placa no PC ou pressione o botão de RESET se ela já estiver conectada.

Será iniciado o upload.

Resultados

Nesse exemplo o LED irá piscar em intervalos de 500 ms (on) e 500 ms (off).

No próximo exemplo vamos detalhar sobre os registradores de IO. Nesse momento, além da estrutura inicial é importante que você entenda como usar a função _delay_ms().

Essa função espera o tempo passado em milissegundos.

Altere o código para que o LED fique 100 ms (on) e 1000 ms (off), veja o efeito.

Conclusão

Nesse exemplo tivemos o primeiro contato com a programação em linguagem C para microcontroladores. Notamos que devemos incluir as bibliotecas externas através do #include e que o programa precisa necessariamente ter a função int main(void).

Dentro da função main temos um loop infinito onde os comandos se repetirão enquanto a placa estiver ligada.

Notificações
Notificar
guest
2 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Marco Aurelio Santos Cunha
Marco Aureliuo Santos Cunha
04/06/2021 08:46

Bom dia Diego, eu posso usar uma placa sp32. No lugar do franzininho?

DIEGO COSTA DE SOUZA LIMA
Diego Lima
27/05/2021 15:01

Na declaração :
int main (void)
vc não poderia uar:
void main (void) ??

WEBINAR

Visão Computacional para a redução de erros em processos manuais

DATA: 23/09 ÀS 17:00 H