Arduino no Atmel Studio
Autor: Eduardo Almeida | Publicado: 2012-10-13T20:20:00-03:00


&nbsp; &nbsp; &nbsp;Para programar o Arduino não é necessário programar somente no IDE e sim em outros programas. Hoje vou ensinar a configurar o Atmel Studio 6 para programar no Arduino em Wiring (programação própria do IDE)... Para fazer o download do software que é gratuito é só entrar no site do Fabricante&nbsp;Atmel&nbsp;(é necessário fazer um registro para pode fazer o download), para quem não sabe os Atmegas são fabricados pela própria Atmel.





&nbsp; &nbsp; &nbsp;Aprendi a usar o novo software pelos vídeo 1 e o vídeo 2 do Fernando Nunes. Percebi alguns pontos negativos para programar, para cada Arduino com porta diferente (COM 1, COM 2, etc.) é necessário configurar novamente; Para cada modelo de Arduino (UNO, MEGA, NANO, etc.) é necessário configurar novamente¹; Para cada versão de IDE (as vezes versões novas da erros com IDEs antigos, etc) é necessário configurar novamente²; Para cada programação que for fazer, sempre vai ter que configurar, não igual aos outros e sim direcionando aonde estão as bibliotecas do IDE³.

&nbsp; &nbsp; &nbsp;Caso faça isso para uso pessoal e que não trabalhe com muitos Arduinos, vale a pena usar o software.



&nbsp; &nbsp; &nbsp;Para começar iremos instalar uma&nbsp;extensão&nbsp;do Atmel Studio da janela Serial, para que possamos visualizar os valores dos sensores ou fazer controle pelo teclado, como se fosse o Monitor Serial do IDE.

Assim que abrir o programa vai em Tools -&gt; Extension Manager -&gt; Available Dowload (que fica no lado esquerdo da janela) -&gt; Terminal Window.

Para fazer o download será necessário entrar com o seu login e a senha, o mesmo que registrou para fazer o download. Após feito o download e instalado, pronto já podemos ir para próxima etapa.



&nbsp; &nbsp; &nbsp;Agora nessa etapa vamos configurar o AVR dude (configuração para programar o chip do Arduino). A partir de agora fica um pouco trabalhoso para configurar, isso só irá servir para programar um tipo, modelo de arduino.

&nbsp; &nbsp; &nbsp;1.0 - Vai em Tools -&gt; External Tools (serve para configurar uma nova ferramenta).

&nbsp; &nbsp; &nbsp;1.1&nbsp;- Após abrir uma janela vamos configurar cada item: Title: eu coloquei Upload Arduino UNO COM3 (isso porque era a versão do meu Arduino e a porta que está usando, mas vocês podem colocar outro nome).

&nbsp; &nbsp; &nbsp;1.2&nbsp;- Em Command:&nbsp;você vai direcionar o arquivo executável do avrdude, vamos achar nele na posta do Arduino: arduino -&gt; hardware -&gt; tools -&gt; AVR -&gt; bin -&gt; avrdude.exe

&nbsp; &nbsp; &nbsp;1.3 - Agora vai dar trabalho, em Arguments:&nbsp;

&nbsp; &nbsp; &nbsp;Para preencher esse campo vamos abrir o IDE do Arduino e ir em File -&gt; Preference e vamos marca para começar só o upload e deixar desmarcado o compilation



&nbsp; &nbsp; &nbsp;Após isso pegue uma programação de exemplo como blink e manda fazer o upload, isso sem nenhum arduino está conectado ao computador (lembrando que tem que ser com a porta que o seu arduino usa no computador e o modelo) com o erro você vai copiar a parte da imagem que está marcada e colar em Arguments:



&nbsp; &nbsp; &nbsp;Após colocar esse endereço nos Arguments... Logo depois do :w: tem que escrever:&nbsp;"$(ProjectDir)Debug\$(ItemFileName).hex":i. Agora sim acabamos com esse item.

&nbsp; &nbsp; &nbsp;1.4&nbsp;- Só marcar agora o item Use Output Window&nbsp;e acabamos com essa primeira parte.

OBS.: Isso só serve para configurar para fazer a compilação de um TIPO e MODELO de Arduino.

Agora vamos configurar a Biblioteca do Arduino:

&nbsp; &nbsp; &nbsp; 2.0 - Primeiramente vamos criar uma pasta chamada de ArduinoCore (dentro vão ser salva a biblioteca dos pinos e de programação do IDE&nbsp;dentro da pasta do Atmel Studio (essa pasta é onde vão ser salvas as programações feitas por ele) que foi criada nos meus documentos logo que você instalou o software.

&nbsp; &nbsp; 2.0.1 - Em arduino -&gt; hardware -&gt; arduino -&gt; cores -&gt; arduino. Copia todos os arquivos com arquivos .h e cola no ArduinoCore, os arquivos C e C++ não copia.

&nbsp; &nbsp;&nbsp;2.0.2 - Agora vamos salvar o arquivo .h que fala dos pinos do Arduino que fica em arduino -&gt; hardware -&gt; arduino -&gt; variants -&gt; Standard (isso se o seu for o UNO), caso você não saiba você vai na pasta&nbsp;arduino -&gt; hardware -&gt; arduino no arquivo boards.txt (vai aparecer um pouco bagunçado mas nesse arquivo você vai saber qual pasta que esta dentro de variants usar. Sabendo o arquivo você pega o arquivo pins_arduino e cole em ArduinoCore.

&nbsp; &nbsp; &nbsp;2.0.3 - Agora é o ultimo arquivo para salvar dentro dessa pasta. Agora no IDE em&nbsp;File -&gt; Preference&nbsp;e vamos marca para começar só o compilation e deixar desmarcado o upload e com a programação de exemplo blink mandar fazer a compilação mas sem o arduino conectado ao computador, de novo vai dar erro.



&nbsp; &nbsp; &nbsp;Essa mensagem é muito grande para agilizar, logo na primeira linha que tem a terminação do core.a seleciona o endereço marcado na imagem e cola no endereço do meu computador.



&nbsp; &nbsp; &nbsp;Copie o arquivo core.a e cole no ArduinoCore, mas&nbsp;renomeie&nbsp;para libcore.a. Com isso terminamos a nossa pasta com os arquivos de ArduinoCore.



&nbsp; &nbsp; &nbsp;Agora toda vez que for fazer a programação, terá que configurar a pasta para exibir a biblioteca de programação do wiring (não é a biblioteca como servo, display, etc.) mas para ir adiantando copie a pasta que está dentro do arduino Librares&nbsp;e cole dentro da pasta Atmel Studio&nbsp;junto com o ArduinoCore.



&nbsp; &nbsp; &nbsp;Quando for criar a programação vamos em: Criar Novo Projeto e selecionaremos o terceiro item que é GCC C++ Executable Project e logo a segui o escolher o chip que usamos, no caso o UNO é o ATmega328p.

&nbsp; &nbsp; Apos carregado a janela de programação vamos selecionar as bibliotecas em Project -&gt; Nome da programação&nbsp;properties (ALT + F7) -&gt; Toolchain.

&nbsp; &nbsp; &nbsp;2.1 - Nos itens AVR/GNU C Copiler e AVR/GNU C++ Copiler&nbsp;será feita a mesmas coisas.

&nbsp; &nbsp; &nbsp;2.1.1 - Em Directores&nbsp;vamos selecionar a pasta ArduinoCore


&nbsp; &nbsp; &nbsp;Assim que escolher a pasta, ANTES de clicar em ok precisa desmarcar a opção Relative Path&nbsp;isso em todas as vezes que for selecionar a pasta do ArduinoCore.
&nbsp; &nbsp; &nbsp;2.1.2 - Em Optimization&nbsp;em Optimization Level selecionar a ultima opção e marca o primeiro item... os três primeiros itens vão ficar marcados que nem a imagem a seguir.



&nbsp; &nbsp; &nbsp;2.2 - Agora em AVR/GNU Linker&nbsp;em Optimization&nbsp;é só marcar a primeira opção (irão ter três, só a primeira que irá ficar marcado).

&nbsp; &nbsp; &nbsp;2.2.1 - Em Libraries, no primeiro quadro ao adicionar a o item, escrevemos libcore.a e logo em seguida ok. No seguindo quadro vamos adicionar a pasta ArduinoCore e também a pasta das bibliotecas do Arduino como tinha dito para adiantar anteriormente, mas fazendo o mesmo esquema, quando for selecionar a pasta precisa desmarcar a opção Relative Pach.



&nbsp; &nbsp; &nbsp;Pronto terminamos de configurar tudo, agora e aperta o botão de salvar e voltar para a pagina de programação... Lá você apaga tudo que está escrito e sempre que for fazer a programação você vai escrever:

#define F_CPU 16000000

#define ARDUINO 101

#include "Aduino.h"



&nbsp; &nbsp; &nbsp;E logo a seguir fazer a programação desejada, no vídeo mostro fazendo a programação do blink e do controle pelo teclado para mostrar também como funciona o Terminal Window.

&nbsp; &nbsp; &nbsp;Após ter feito a programação para verificar se está funcionando você vai em Build -&gt; Build Solution&nbsp;esse item que fará a verificação da programação, caso não tenha nenhum erro você vai em Tools -&gt; Upload Arduino UNO (ou como você tenha nomeado anteriormente). Você verá que a programação será enviada com sucesso para a sua placa.



&nbsp; &nbsp; &nbsp;Sempre que você programar, precisa escrever os comando como foi dito antes e logo em seguida escrever a programação normalmente como se fosse no IDE.



Vídeo:

Vídeo sendo editado, logo será exibido, desculpa pela falta do vídeo pessoal



&nbsp; &nbsp; Espero que tenham entendido, também sou novo com o programa Atmel Studio... Qualquer duvida só falar.