You are on page 1of 47

Arduino Bsico

Mauro Wencelewski
mauro.wencelewski@gmail.com

O que Arduino?

Arduino uma plataforma de prototipagem eletrnica


open-source baseada em um hardware flexvel e fcil de usar.
direcionada a artistas, designers, hobbystas e qualquer um
interessado em criar ambientes ou objetos interativos.
(www.arduino.cc)

O que o Arduino pode fazer?

Pode monitorar e controlar ambientes


Recebendo informaes atravs de sensores
Pode afetar o ambiente controlando iluminao, motores e outros atuadores
Pode ser construdo ou comprado
As placas podem ser compradas ou feitas a mo
O software pode ser baixado gratuitamente
Os arquivos CAD do hardware esto disponveis gratuitamente, sob licena
open-source, voc pode adapt-los as suas necessidades

Hardware

O hardware principal a ser utilizado so as placas do Arduino, existem


inmeros modelos no mercado. O curso ser baseado em dois modelos:
Arduino Duemilanove
Arduino UNO

Hardware

Entradas/Sadas Digitais:

14 Pinos Digitais (0 ~ 13)


Assumem dois estados:
Ligado ou Desligado
0V ou 5V
Nvel alto ou Nvel baixo
1 ou 0

Hardware

Entradas Analgicas:

6 Entradas Analgicas (A0 ~ A5)


Recebem valores entre 0 ~ 5V que
sero convertidos em valores entre
0 e 1023

Software
IDE do Arduino:

Onde voc configura a conexo do


computador com a placa
Quem interpreta e grava o cdigo
criado por voc na placa

Software
Verify

Software
Verify
Upload para Placa

Software
Verify
Upload para Placa

O seu cdigo vai aqui!

Protoboard

Protoboard

Protoboard

Conceitos Bsicos

Funes
Permitem agrupar grupo de instrues que podem ser chamadas pelo
seu nome para serem executadas.

void setup()
{
pinMode(LED,OUTPUT);
}

Conceitos Bsicos

Sintaxe de Funes:

tipo_de_retorno nome_da_funo (paramentos)


{
}

void setup()
{
pinMode(LED,OUTPUT);
}

Conceitos Bsicos

Funes Bsicas

O arduino sempre ir procurar duas funes em seus Sketchs.

Setup()

Loop()

Conceitos Bsicos

Setup()
Executada uma vez quando o programa comea
Loop()
Contm o programa principal que ser executado de forma repetitiva.

Conceitos Bsicos

Funes Bsicas:

pinMode(pino,estado);

Pino qualquer pino digital

Estado INPUT ou OUTPUT

Funo definir como entrada ou sada os pinos digitais.

Exemplo:
void setup()
{
pinMode(13,INPUT); //define o pino 13 como entrada
pinMode(5,OUTPUT);//define o pino 5 como saida
}

Conceitos Bsicos

Funes Bsicas:

digitalWrite(pino,estado);

Pino qualquer pino digital

Estado HIGH ou LOW

Funo definir nvel alto ou baixo em pinos digitais.

Exemplo:
void loop()
{
digitalWrite(13,HIGH); //define o pino 13 nivel alto (1)
digitalWrite(5,LOW);//define o pino 5 nivel baixo (0)
}

Conceitos Bsicos

delay()

Diz para o arduino esperar um determinado tempo para


passar para prxima instruo.
Os argumentos usados so valores em milisegundos.
Exemplo:

delay(1000);

Prtica 01
Piscar um Led Hello World!
Objetivo:
Fazer o Led acender e apagar em
um determinado intervalo de
tempo.
Componentes Utilizados:
1 Led
1 Resistor 390

Conhecendo os Componentes
LED: Diodo Emisso de Luz
Funo: Emisso de luz com baixo consumo de corrente

Prtica 01
Resistor
Funo: Criar uma oposio a passagem de
corrente eltrica, dissipando-a em forma de
calor.

Prtica 01
Piscar um Led Hello World!
Objetivo:
Fazer o Led acender e apagar em
um determinado intervalo de
tempo.
Componentes Utilizados:
1 Led
1 Resistor 390

Prtica 01
Piscar um Led Hello World!
Cdigo:

int led = 13;


void setup()
{
pinMode(led,OUTPUT);
}
void loop()
{
digitalWrite(led,HIGH);
delay(500);
digitalWrite(led,LOW);
delay(500);
}

Prtica 02
Piscar dois Leds alternadamente

Objetivo:
Fazer os leds acenderem
alternadamente
em
um
determinado intervalo de tempo.
Componentes Utilizados:
2 Led
2 Resistor 390

Prtica 02
Piscar dois Leds Alternadamente
Cdigo:
int led_vermelho = 11;
int led_amarelo = 10;
void setup()
{
pinMode(led_vermelho, OUTPUT);
pinMode(led_amarelo, OUTPUT);
}

void loop()
{
digitalWrite(led_vermelho, HIGH);
delay(300);
digitalWrite(led_vermelho,LOW);
delay(300);
digitalWrite(led_amarelo, HIGH);
delay(300);
digitalWrite(led_amarelo,LOW);
delay(300);
}

Conceitos Bsicos

Funes Bsicas:

digitalRead(pino)

Pino qualquer pino digital

Funo verificar se o pino est em nvel alto ou baixo

Exemplo:
void loop()
{
if(digitalRead(3)==HIGH)
{
...
}
}

Conceitos Bsicos
Condicionais

Um grupo de aes escolhido para execuo


de acordo com a satisfao de certas
condies;
As condies testadas so booleanas, podendo,
portanto, ter somente dois resultados:
Verdadeiro ou Falso;

Conceitos Bsicos
Operadores Condicionais:
>

Maior que

<

Menor que

>=

Maior ou igual a

<=

Menor ou igual a

==

Igual a

!=

Diferente

&&

AND (E)

||

OR (OU)

Conceitos Bsicos

Sintaxe:
if <condio>
{
//Instrues
}

Conceitos Bsicos

Sintaxe estendida:
if <condio>
{
//Instrues
}
else
{
}

Prtica 03
Acionar um led com boto
Objetivo:
Ao pressionar o boto, fazer o led
acender.
Componentes Utilizados:
1 Led
2 Resistor 390
1 Push Button

Prtica 03

Prtica 03

Prtica 04
Usar duas chaves para acionar o led
Objetivo:
Ao pressionar os dois botes ao
mesmo tempo, acender o led.
Componentes Utilizados:
1 Led
3 Resistor 390
2 Push Button

Conceitos Bsicos

Comunicao Serial
(UART)
Esse tipo de comunicao permite o Arduino se
comunicar com o computador, ou outros
dispositivos.
Dentro
de outros dispositivos podemos citar:
mdulos Bluetooth, outros arduinos e etc.

Conceitos Bsicos

Funes Bsicas:

Serial.begin(velocidade)
Inicia o mdulo de comunicao serial;
Geralmente iniciado dentro da funo setup
Velocidade velocidade usada para transmitir as informaes
(bits/segundo)
Exemplo:
void setup()
{
Serial.begin(9600);
}

Conceitos Bsicos

Funes Bsicas:

Serial.println(texto)
Envia uma mensagem atravs da COM serial.
Texto a informao que ser enviada pela
serial.
Exemplo:
void loop()
{
Serial.println(Fucapi);
}

Conceitos Bsicos

Funes Bsicas:

Serial.print(texto)
Envia uma mensagem atravs da COM serial.
Texto a informao que ser enviada pela
serial.
Exemplo:
void loop()
{
Serial.print(Fucapi);
}

Conceitos Bsicos

Funes Bsicas:

Serial.available()
Checa o nmero de bytes que esto chegando na Serial.
Exemplo:
void loop()
{
if (Serial.available() > 0)
{
//instrues
}
}

Conceitos Bsicos

Funes Bsicas:

Serial.read()
Recebe os dados que esto armazenados na entrada serial.
Exemplo:

void loop()
{
if (Serial.available() > 0)
{
incomingByte = Serial.read();
}
}

Prtica 05
Criar uma conexo serial com o notebook
Objetivo:
Enviar uma mensagem (string) ao
notebook.

Prtica 06
Acender e apagar um led pela Serial
Objetivo:
Ao enviar L ligar o led e ao enviar
D desligar o led.
Componentes Utilizados:
1 Led
3 Resistor 390

Conhecendo os Componentes
Potencimetro
Funo: Um resistor com resistncia variada

Prtica 07
Ler os valores do potencimetro na serial
Objetivo:
Ler os valores do potencimetro
no terminal do arduino
Componentes Utilizados:
1 Potencimetro

Prtica 08
Controlar led com potencimetro
Objetivo:
Alterar o tempo que o Led liga e
desligar com o potencimetro
Componentes Utilizados:
1 Potencimetro
1 - Led

You might also like