Hello, World!
Nesse exemplo 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. 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 CEsse 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.
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 uploadpara compilar o programa, acesse a pasta do exemplo e em seguida o comando make
:
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.
#
ResultadosNesse 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ãoNesse 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.
Autor | Fábio Souza |
---|---|
Data: | 24/04/2021 |