Aula 01
Introdução ao Arduino
ESCOLA DE ARTES VISUAIS DO PARQUE LAGE
Núcleo de Arte e Tecnologia
O que vamos entender?
eletrônica
•
corrente elétrica: • voltagem • resistência • intensidade • modelo da água•
dispositivos: • L.E.D • Semicondutor introduçãoO que vamos entender?
números
•
decimalO que vamos entender?
programação
•
variável: •int •boolean•
operadores: • designação • soma • subtração • multiplicação • divisãoO que vamos entender?
programação
•
mensagens: •setup() •loop() •pinMode() •digitalWrite() •delay() •Serial.begin() •Serial.print() •Serial.println()O que vamos entender?
arduino
•
Portas do arduino: • digital • alimentação • GND•
Carregando o programa: • serial port • board • compilando • carregandoO que vamos entender?
eletrônica
•
corrente elétrica: • voltagem • resistência • intensidade • modelo da água•
dispositivos: • L.E.D • Semicondutor introduçãoelectronica : corrente elétrica
I = V/R ?
eletrônica : corrente d’agua
Voltagem =
Altura da caixa
Resistência =
dificuldade para passar de um lado a outro Intensidade = quantidade de água passando Ralo = terra
O que vamos entender?
eletrônica
•
corrente elétrica: • voltagem • resistência • intensidade • modelo da água•
dispositivos: • L.E.D • Semicondutor introduçãoeletrônica : L.E.D
Light emitting diode diodo emissor de luz
eletrônica : Semicondutor
http://en.wikipedia.org/wiki/P–n_junction
O que vamos entender?
números
•
decimal
números : decimal
1 2 3 4 5 6 7 8 9 10números : binário
números : decimal - binário
0 1 2 3 4 5 6 7 8 9 0 1números : decimal - binário
como contamos acima de dez?
números : decimal - binário
0 1 2 3 4 5 6 7 8 9 0 1números : decimal - binário
0 1 2 3 4 5 6 7 8 9 10 0 1números : decimal - binário
0 1 2 3 4 5 6 7 8 9 10 00 01 10 11números : decimal - binário
0 1 2 3 4 5 6 7 8 9 10 000 001 010 011 100 101 110 111O que vamos entender?
programação
•
variáveis: •int •boolean•
operadores: • designação • soma • subtração • multiplicação • divisãovariáveis: primeiros tipos
int
•
Números inteiros são números não fracionários.•
No computador são as combinações de 16 zeros e uns.•
2 elevado 16 = 65536.variáveis: primeiros tipos
boolean
Só tem dois possíveis valores.
0 1
false true
variáveis: declaração
Declarar é falar para o processador o tipo de variável que vamos utilizar para ele reservar a memória que
precisa.
nome
int nome;
variáveis: designação
(operador)
Designar e guardar um valor na variável que foi declarada previamente.
a
int a; boolean b; a = 2; b = true;2
b
true
variáveis: designação
Podemos declarar e designar ao mesmo tempo
a
int a = 2
;
2
Sempre colocamos
;
ao finalO que vamos entender?
programação
•
variáveis: •int •boolean•
operadores: • designação • soma • subtração • multiplicação • divisãooperadores: soma
a
int a; int b; a = 2; b = 3;2
b
3
int c; c = a+b;c
2 + 3 = 5
operadores: subtração
a
int a; int b; a = 2; b = 3;2
b
3
int c; c = a-b;c
2 - 3 = -1
operadores: multiplicação
a
int a; int b; a = 2; b = 3;2
b
3
int c; c = a*b;c
2*3 = 6
operadores: divisão
a
int a; int b; a = 2; b = 3;3
b
2
int c; c = a/b;c
3 / 2 = 1
NOTA: C seria 1.5 , mas como só
considera números inteiros ele ignora a parcela decimal
O que vamos entender?
programação
•
mensagens: •setup() •loop() •pinMode() •digitalWrite() •delay() •Serial.begin() •Serial.print() •Serial.println()mensagens
void nomeDaMessagem( parâmetros...)
o tipo do valor que devolve a mensagem. Quando não devolve nada é: void
O nome que vai ser usado para
chamar a mensagem.
Parâmetros que poderíamos passar com informações do que a gente quer fazer
mensagens
int aQueHoraSeEncontra( ); mensagem que devolve a hora a que nos encontramos como número inteiro O nome da mensagem Nenhum parâmetro.mensagens
void meVaiBuscar( int dia, int hora);
void e que
não retorna nada.
O nome que vai ser usado para
chamar a mensagem
Parâmetros que
usamos para informar da hora e do dia
O que vamos entender?
programação
•
mensagens: •setup() •loop() •Serial.begin() •Serial.print() •Serial.println() •pinMode() •digitalWrite() •delay()mensagem
void
setup
()
•
Mensagem que devemos escrever e implementar(preencher) em todos nossos programas de Arduino.
•
Somente vai ser chamada uma vez quando oprograma de arduino é carregado ou ligamos a placa na corrente.
•
Nela colocamos as coisas que só queremos fazermensagem
void
loop
()
•
Mensagem que devemos escrever e implementar(preencher) em todos nossos programas de Arduino.
•
Nela escrevemos o código que vai ser executadona placa.
•
Vai ser chamada infinitas vezes enquanto a placaO que vamos entender?
Arduino
•
Portas do Arduino: • Digital • Alimentação • GND•
Carregar programa: • serial port • board • copilando • carregandopara carregar programa
•
Selecionamos a placa que estamos usando:Tools > Board
•
Selecionamos a porta USB: Tools > Port•
Compilamos o programa.•
Selecionamos a placa que estamos usando:•
Compilamos o programa.O que vamos entender?
programação
•
mensagens: •setup() •loop() •Serial.begin() •Serial.print() •Serial.println() •pinMode() •digitalWrite() •delay()mensagem
void
Serial.
begin
(
int
veloc
);
Mensagem para iniciar a comunicação serial com computador via USB
•
int
veloc
: valor inteiro que
determina a velocidade de
comunicação em baldios por segundo.
mensagem
void
Serial.
println
(
valor
)
imprime o valor no terminal de Arduino e pula uma linha no final.
Serial.println(a);
mensagem
void
Serial.
(
valor
)
imprime o valor no terminal de Arduino e NAO pula uma linha no final.
O que vamos entender?
programação
•
mensagens: •setup() •loop() •Serial.begin() •Serial.print() •Serial.println() •pinMode() •digitalWrite() •delay()mensagem
void digitalWrite( int porta, boolean estado);
Coloca uma corrente de 0 Volt ou 5 volts na porta digital.
•
porta
: número da porta digital do
arduino que vamos ativar ou desativar
•
estado
: Se queremos corrente ou
não nessa porta digital.
mensagem
void
delay
(
int
tempo
);
Mensagem que usamos para falar ao Arduino que deve ficar parado nessa linha do código durante
alguns milissegundos
•
tempo
: tempo em milésimos de
mensagem
void
pinMode
(int
porta
,
tipo
);
Mensagem que usamos para falar ao Arduino que porta vamos usar e de que jeito.
•
porta
: número da porta que
usaremos.
•
tipo
: se usaremos como entrada ou
OUTPUT write no mundo INPUT read do mundo digital dois valores
void digitalWrite(n,valor);
n = número da porta
valor = LOW / HIGH
pinMode(n , OUTPUT);
digitalWrite( pinoDoLed , HIGH );
?
analog