Escolar Documentos
Profissional Documentos
Cultura Documentos
ao Arduino
Eduardo Furiati
Douglas Chanan
07/11/2023
Sumário
História do Arduino........................................................................................................................... 3
Conceitos ........................................................................................................................................... 4
Componentes Básicos ..................................................................................................................... 4
Pinagem .............................................................................................................................................. 6
Digital vs Analógico .......................................................................................................................... 6
Voltagem de Funcionamento: 3.3v e 5v ..........................................................................................7
Software...............................................................................................................................................7
Selecionando a Placa Arduino correta e a porta USB para upload do firmware ..................... 8
Alterando idioma para Português ................................................................................................... 9
Bibliotecas ......................................................................................................................................... 9
Adicionando bibliotecas pelo Arduino IDE. .................................................................................. 9
Adicionando bibliotecas manualmente ........................................................................................10
Estrutura Básica do Sketch ............................................................................................................ 11
Interface Serial.................................................................................................................................. 12
Primeiro Sketch piscando o Led no Pino 13 ................................................................................ 13
Segundo Sketch lendo um botão................................................................................................... 14
Conservando memória RAM e FLASH .......................................................................................... 15
Identificação do programa .............................................................................................................. 15
O Arduino foi criado em 2005, na Itália, por um grupo de 5 pesquisadores: Massimo Banzi, David
Cuartielles, Tom Igoe, Gianluca Martino e David Mellis.
Massimo possuía o desejo de ensinar seus alunos noções básicas de eletrônica e programação, mas
não encontrava placas com preço acessível e esquemas simplificados.
Por conta disso, o objetivo do projeto era elaborar uma ferramenta adaptável e de baixo custo para
servir como base em seus projetos educacionais interativos.
Com características inovadoras, o Arduino se popularizou logo nos primeiros anos de existência,
vendendo mais de 50 mil unidades.
O modelo Arduino UNO é uma placa que possui um microcontrolador Atmega328P, rodando a
16MHZ, e possui 2KB de SRAM e 32KB de memória FLASH, possuindo ainda 1KB de EEPROM.
Possui 14 Pinos Digitais e 06 Pinos Analógicos. A placa suporta voltagem de 7 a 12V em corrente
contínua
A placa possui ainda um processador USB para Serial Atmega16U2 rodando a 16MHz também.
OBS: placas “clones” podem possuir um outro processador no lugar do Atmega16U2, podendo gerar
problemas para se fazer upload do programa e/ou ler a interface serial.
A SRAM é a memória onde o programa roda no Atmega328, a Memória FLASH é aonde o programa
fica armazenado e não se perde quando desligamos a energia. A EEPROM também não se perde
ao desligar a energia, sendo útil para guardarmos logs e configurações.
Componentes Básicos
Digital vs Analógico
Grandezas digitais são aquelas que não variam continuamente no tempo, mas sim em saltos entre
valores bem definidos. Um exemplo são os relógios digitais: apesar do tempo em si variar
Alguns sensores necessitam de 3.3v, outros de 5v para funcionar, alguns aceitam de 3v a5v sem
problemas, é sempre importante verificar a voltagem que o sensor aceita, o datasheet é importante
em caso de dúvidas sobre a voltagem.
Também é importante notar que se invertermos a polaridade, ou seja, ligarmos 5v ao GND, podemos
ter problemas e até queimas o microcontrolador ATMega e/ou o sensor que estamos utilizando.
Software
O software do Arduino, ou seja, todo o seu sistema, é chamado Arduino Integrated Development
Environment, ou Arduino Software (IDE).
Ele conta com um editor de texto para inserção dos códigos, um console de texto, um campo de
mensagens, e menus comuns de dispositivos do tipo.
Bibliotecas
Para adicionar bibliotecas manualmente, baixe o arquivo (Geralmente .zip) descompacte e coloque
a pasta dentro da pasta libraries do Arduino IDE, reinicie o Arduino IDE para completar a instalação.
https://github.com/fdivitto/FabGL
#include <biblioteca.h>
#include “arquivo.h”
/*
comentário em mais de uma linha
*/
void setup() {
void loop() {
A Interface Serial é importante para monitorarmos, obtermos informações quando estamos programando o
ATMega328, sendo uma ferramenta muito boa para debugarmos nosso programa.
• Serial.begin(int speed) → Inicia a porta serial, selecione a velocidade correta no monitor serial.
Exemplos:
void loop(){
Serial.begin(9600);
Serial.println(“teste”);
}
void setup() {
// put your setup code here, to run once:
pinMode(7, OUTPUT);
pinMode(2, INPUT_PULLUP); // ativa o resistor no pino 2
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
if (!digitalRead(2)) {
digitalWrite(7, HIGH);
Serial.println(digitalRead(2));
}
else {
digitalWrite(7, LOW);
}
}
void setup() {
digitalWrite(7, OUTPUT);
}
void loop() {
pinMode(7, HIGH); // Seta o pino 7 para ALTO ou 5V
delay(1000); // 1 segundo
pinMode(7, LOW); // Seta o pino 7 para BAIXO, ou 0V
delay(1000);
Esquema elétrico
Podemos ler um botão em um dos pinos de entrada do ATMega ligando um dos pinos do botão a um dos pinos
de entrada do Arduino e outro pino ao GND do Arduino.
Para isso, ligaremos o pino + do Led ao Pino 7 do Arduino, e o pino GND ao GND do Arduino, lembrando
que precisamos colocar um resistor entre o Led e o Arduino, para não queimarmos o Led.
void setup() {
// put your setup code here, to run once:
pinMode(7, OUTPUT);
pinMode(2, INPUT_PULLUP); // ativa o resistor no pino 2
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
if (!digitalRead(2)) {
digitalWrite(7, HIGH);
}
else {
digitalWrite(7, LOW);
}
}
Esquema elétrico
Como o ATMega possui poucos recursos de memória, é importante otimizarmos nosso programa para caber
em memória FLASH e memória RAM, alguns exemplos úteis:
Utilizar byte ao invés de int. Se nosso contador for até no máximo 255, utilizamos byte. Exemplo: byte t=0;
void setup{
}
void loop{
for(t=0; t< 255; t++) {
echo “teste”/
}
}
Identificação do programa
Procure identificar o programa para facilitar a leitura, a localização para ajustes etc.