Programe a Franzininho no Atmel Studio 7

A IDE Arduino é fantástica. Sua simplicidade, abstração e facilidade de uso permitem que pessoas com pouco ou nenhum conhecimento em programação de microcontroladores possam criar aplicações e fazer a gravação das placas Arduino, sem se preocuparem com configuração de toolchain  e ferramenta de gravação. Porém, para os desenvolvedores que precisam de mais recursos e produtividade, um bom ambiente de desenvolvimento integrado facilita a criação e manutenção de projetos.

Neste artigo vou apresentar como usar o Atmel Studio 7 para a programação da placa Franzininho.

Materiais

  • Franzininho ou Arduino Gemma

Programas

Programando a Franzininho no Atmel Studio em linguagem C

Para criar um novo projeto no Atmel Studio acesse File > New > Project, conforme exibido na figura 1:

Franzininho no Atmel Studio 7 - Iniciando um projeto no ATMEL Studio
Figura 1 – Iniciando um projeto no ATMEL Studio

Será aberta uma janela para configuração do projeto. Nela é possível escolher o compilador, além do nome e do caminho da pasta onde o projeto será armazenado, conforme exibido na figura 2:

Configurando um novo projeto
Figura 2 – Configurando um novo projeto

A seguir será apresentada uma janela para escolha do microcontrolador alvo. Neste caso foi escolhido o ATtiny85, microcontrolador usado na Franzininho:

Escolhendo o microcontrolador
Figura 3 – Escolhendo o microcontrolador

Pronto, o projeto foi criado! Além disso também foi criado o código fonte com a função main() já inserida, pronto para digitar o código da aplicação, conforme exibido na figura 4:

Projeto criado no Atmel Studio
Figura 4 – Projeto criado no Atmel Studio

Para testar, vamos piscar o LED no pino PB1 do ATtiny85, conforme exibido do esquemático da placa a seguir:

Figura 5 – Esquemático da Franzininho

O código abaixo configura o pino PB1 como saída e no loop infinito faz a inversão do estado do LED em intervalos de 500 ms. Digite o código a seguir, no arquivo main.c:

#define F_CPU 8000000UL   //clock em 8 MHz

#include <avr/io.h>
#include "util/delay.h"


int main(void)
{
	DDRB = 0b00000010;   //configura PB1 como saída
	
    /* Replace with your application code */
    while (1) 
    {
		PORTB ^=(1<<PB1);
		_delay_ms(500);
    }
}

Para compilar o projeto, você pode acessar Build > Build Solution, ou pressionar F7:

Compilando o projeto
Figura 6 –  Compilando o projeto

Após a compilação, vamos fazer o upload usando o AVRDUDE.

Configurando o AVRDUDE no Atmel Studio

Vamos configurar o AVRDUDE no Atmel Studio como ferramenta externa para upload do .hex para a placa. Acesse Tools > External Tool…, conforme exibido na figura 7:

Adicionando uma ferramenta externa
Figura 7 – Adicionando uma ferramenta externa

Será aberta uma janela para configuração de uma ferramenta externa. Configure o AVRDUDE, conforme  exibido na figura 8:

Configurando o avrdude
Figura 8 – Configurando o avrdude

Note que eu já tenho uma ferramenta configurada para a programação do Arduino UNO. A configuração da ferramenta para programação do Arduino UNO foi feita seguindo os passos desse artigo: Primeiros passos com Atmel Studio

Para configurar uma nova ferramenta para a programação da Franzininho, clique em Add:

Configurando uma nova ferramenta
Figura 9 – Configurando uma nova ferramenta

Faça a configuração da ferramenta:

Title: Programador Franzininho

Command: 

C:\arduino-1.8.2\hardware\tools\avr/bin/avrdude.exe

Arguments:

-CC:\arduino-1.8.2\hardware\arduino\avr/bootloaders/gemma/avrdude.conf -v -pattiny85 -carduinogemma -Uflash:w:"$(TargetDir)$(TargetName).hex":i

Obs.: Verifique o endereço da pasta Arduino no seu computador e ajuste se for necessário.

Após a configuração, a ferramenta estará disponível no menu Tools. Para iniciar o processo de gravação basta acessar o menu Tools e clicar no nome dado à ferramenta de programação. Para a programação da Franzininho é necessário pressionar o botão de Reset da placa para entrar no modo bootloader e em seguida clicar na ferramenta no menu tools, conforme exibido na figura 9:

Iniciando o avrdude para programação
Figura 10 – Iniciando o avrdude para programação

O status da programação aparecerá na janela de saída e caso ocorra com sucesso aparecerá a mensagem exibida na figura 10:

Resultado da programação com avrdude
Figura 11 – Resultado da programação com avrdude

Após esse processo, o LED da placa Franzininho começará a piscar em intervalos de 0,5 s.

Bônus: Programação da Franzininho usando bibliotecas Arduino.

Crie um novo projeto. Acesse File > New > Project, conforme exibido na figura 1:

Iniciando um projeto no ATMEL Studio
Figura 12 – Iniciando um projeto no ATMEL Studio

Configure o projeto conforme a figura 2:

Configuração inicial do projeto
Figura 13 – Configuração inicial do projeto

Configure o projeto com os endereços para a IDE Arduino e placa. Para a programação da Franzininho, vamos escolher a Arduino Gemma:

Configuração do sketch e ferramenta
Figura 14 – Configuração do sketch e ferramenta

O projeto será criado com exemplo blink:

Projeto criado com exemplo blink
Figura 15 – Projeto criado com exemplo blink

O processo de compilação e upload do código seguem os mesmos passos apresentados neste artigo.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
2 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Caiubi Staffoker
Caiubi Staffoker
25/04/2019 10:23

Bom dia!!!
Eu tentei iniciar um projeto, porém obtive o error: “Atmel.VsIde.AvrStudio.Utils.MemoryPressureReliever’ threw an exception”

Poderiam me ajudar?

Josias Guzatti
Josias Guzatti
21/11/2017 12:56

Poderia me ajudar eu preciso de uma placa que amplifique o sinal de um sensor tipo eletrodo impresso para detecção de chumbo (Pb2+). preciso amplificar os sionais do sensor para o arduino. Tens algo semelhante que possa me ajudar!Grato!
Josias

Home » Arduino » Programe a Franzininho no Atmel Studio 7

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: