12. Arduino Uno
12
http://arduino.cc/en/Main/ArduinoBoardUno
14 pinos de I/O digital (6 PWM)
[source/sink max 40 mA]
LED no pino 13
LED para indicação
de placa energizada
(power)
Conector USB
[comunicação
serial com o PC e
alimentação 5V]
Conector para
alimentação externa
entre 7 e 12V DC
[caso necessário] 6 entradas analógicas do
conversor analógico-digital
[min: 0V, max: 5V]
Cristal 16 MHz
para gerar clock
GND e 5V
McATmega328P
Reset
LEDs da
comunicação
serial
13. Instalando o IDE (software doArduino)
13
1. Download em
http://arduino.cc/en/Main/Software
• Ou link direto da versão para Windows:
https://www.arduino.cc/download_handler.php?f=/arduino-
1.8.12-windows.zip
14. Abrindo o IDE
14
• Para abrir o IDE: executar o arquivo ‘arduino.exe’ dentro
da pasta descompactada. Duplo clik
18. FUNDAMENTOS DE LINGUAGEM C
SKETCH são denominados os programas em Arduino que representa uma lista de
instruções, as quais devem ser executadas na ordem que foram escritas. Por exemplo:
Cada uma
dessas três
linhas faria
alguma coisa
A primeira linha faz o pino 13 de saída digital passar para o nível ALTO.
A segunda linha produz um retardo (delay) de 500ms ou 0,5s.
A terceira linha faz o pino 13 de saída digital passar para o nível BAIXO.
digitalWrite (pino, nível) – significa escrever na saída – você precisa passar dois
argumentos separados por uma vírgula (,).
A função precisa saber qual é o pino que está sendo utilizado (portas 1, 2, etc.) e o nível
que esse pino deve ser colocado HIGH (alto) ou Low (baixo).
Observe que cada linha termina com um ponto e vírgula.
18
19. O que é uma linguagem de programação?
A figura abaixo resume o processo que ocorre desde o momento em que escrevemos
um código no IDE do Arduino até a execução do sketch na placa.
Código
traduzido para
o código da
máquina
Ao clicar em
verificar, o código é
analisado sem a
transferência dele
para a placa
19
20. Arduino não fala italiano...
O Arduino tentou compilar “Ciao bella!” (Alô bela!) em italiano mas ele não tem ideia
do que você está dizendo apesar de sua origem italiana.
20
21. Sketch em branco...
Ocorrerá um erro de compilação pois não há as funções setup (inicialização) e loop
(laço).
21
22. Analisando as funções setup e loop
A linha void setup() significa que você está predefinindo uma função de nome setup, da
mesma forma void loop(). Essas duas funções acompanhadas da palavra-chave void
(vazio) implica dizer que estas funções não devem retornar nada.
Por exemplo, podemos imaginar uma função denominada sin(angulo) que executa uma
função trigonométrica de mesmo nome; então a função retorna ou fornece um valor. O
valor retornado deve ser o seno do ângulo que foi passado durante a chamada da
função. Sin(30o)= 0,5.
22
24. Variáveis
Podem ser entendidas como um processo que dá um nome a um número. Na realidade,
elas podem fazer muito mais do que isso, porém, por enquanto, iremos usá-las com
essa finalidade.
Quando definimos uma variável em C, devemos especificar o seu tipo. Nós queremos
que cada variável seja um número inteiro (0,1,2,3,...), o que corresponde ao atributo
denominado int em C. Podemos definir uma variável do tipo inteira da seguinte forma:
Assim iremos alterar o sketch exemplo_02-01.
24
27. Entendendo o SketchExemplo_02-04.ino
Testando seus experimentos em C...
O serial monitor faz
parte da IDE do
Arduino; para
acessar basta
clicar na parte
superior à direita
da janela. Ele é o
canal de
informação entre o
computador e o
Arduino.
27
30. Comandos
A linguagem C têm vários comandos embutidos. Nesta seção, iremos explorar alguns
deles e ver como podem ser usados nos sketches.
>> if
Podemos utilizar o comando if(se) quando desejamos impor condições para realização
de uma determinada tarefa. A sintaxe é if(condição){comandos}. Se a condição for
verdadeira, ele executa os comandos dentro das chaves.
30
31. Entendendo o SketchExemplo_02-07ino
Usando o if para controlar o pisca....
O valor 100 é
somado ao
delayPeriodo. Se o
período for superior
a 3000ms (3s), o
tempo de retardo
retorna para o valor
de 100ms.
31
32. Comandos
>> for
Podemos utilizar o comando for(para) quando desejamos executar uma série de
comandos um certo número de vezes. A sintaxe é for(declara e inicializa a variável;
condição; incremento){comandos}. Ele executa os comandos dentro das chaves.
O comando é
executado 20
vezes!
32
34. Sensor PIR
O sensor PIR é um sensor de presença que monitora a aproximação através de cor
(infravermelho). O módulo utilizado tem ajustes de sensibilidades através de
potenciômetros na sua placa de circuito impresso.
Regular as
Sensibilidades
34
37. Comandos
>> While
Podemos utilizar o comando while(enquanto) quando desejamos executar uma série de
comandos um certo número de vezes. A sintaxe é while(condição){comandos}. Ele
executa os comandos dentro das chaves se a condição for verdadeira.
O comando é
executado 20
vezes!
37
38. Comandos
>> Diretiva #define
É utilizada para valores constantes, como atribuições de pinos que não mudam durante
a execução do sketch.
Não utilizamos nem
“;” e nem o sinal de
“=“ antes de atribuir
um valor.
33
39. Comandos
>> While
Podemos utilizar o comando while(enquanto) quando desejamos executar uma série de
comandos um certo número de vezes. A sintaxe é while(condição){comandos}. Ele
executa os comandos dentro das chaves se a condição for verdadeira.
O comando é
executado 20
vezes!
34
40. Comandos
>> Diretiva #define
É utilizada para valores constantes, como atribuições de pinos que não mudam durante
a execução do sketch.
Não utilizamos nem
“;” e nem o sinal de
“=“ antes de atribuir
um valor.
35