Académique Documents
Professionnel Documents
Culture Documents
Arduino
01-01-2014
Objectivos
No final da formao estaro aptos a:
Configurar de forma correcta os diferentes
mdulos Arduino;
Configurar e utilizar pinos de I/O;
Configurar e utilizar portos de comunicaes;
Utilizar funes especiais;
Utilizar o software de desenvolvimento
Arduino-IDE;
Formador: Daniel Costa
O que o Arduino??
Plataforma baseada em
microcontrolador
Programvel atravs de
USB
Com uma vasta
comunidade de
utilizadores
Preo muito abaixo de
equipamentos
semelhantes (20)
Formador: Daniel Costa
Caractersticas
Caractersticas
Placa de microcontrolador baseada no
ATmega328
14 pinos de entrada/sada digital (dos quais 6
podem ser usados como sadas analgicas
PWM)
6 entradas analgicas
Cristal oscilador de 16 MHz
Ligao USB
Entrada para alimentao
Boto de reset.
Caractersticas
Alimentao
O Arduino Uno pode ser alimentado pela ligao
USB ou por qualquer fonte de alimentao externa.
Alimentao
Os pinos de alimentao so:
VIN. Entrada de alimentao para a placa
Arduino quando uma fonte externa for
utilizada.
5V. A fonte de alimentao utilizada para o
microcontrolador e para outros componentes
da placa.
3V3. Alimentao de 3,3 volts fornecida pelo
chip FTDI. A corrente mxima de 50 mA.
GND. Pino terra.
Formador: Daniel Costa
Memria
O ATmega328 tem 32 KB de memria flash
para armazenar cdigo
I/0 Especiais
Comunicao Srie:
Pinos: 0 (RX) e 1 (TX).
I/0 Especiais
Interrupes
Pinos 2 e 3.
um valor LOW - 0
transio descendente
I/0 Especiais
PWM Pulse Width Modulation
Pinos: 3, 5, 6, 9, 10, e 11. Fornecem uma
sada analgica PWM de 8-bit .
SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13
(SCK). Estes pinos suportam comunicao
SPI, que embora compatvel com o hardware,
no est includa na linguagem do Arduino.
Formador: Daniel Costa
Entradas Analgicas
O Uno tem 6 entradas
analgicas
Cada uma delas tem;
DUVIDAS??
Formador: Daniel Costa
Mdulos Extra
SHIELDS
Ethernet Shield
Motor Shield
Bluetooth Shield
XBee Shield
PROGRAMAO
Software
Barra de Ferramentas
Estrutura do Programa
void setup()
Progra
ma
Executado apenas no
arranque do Arduino
void loop()
Executado
ciclicamente
Estrutura do Programa
void setup()
A funo setup() evocada
sempre que um sketch
arranca.
utilizada para inicializar
variveis, pinos de entrada,
Estrutura do Programa
int buttonPin = 3;
void setup()
{
Serial.begin(9600);
pinMode(buttonPin, INPUT);
}
void loop()
{
//
...
}
Formador: Daniel Costa
Estrutura do Programa
void loop()
Depois de criar o mtodo setup(), a
funo loop() executa todas as
instrues ciclicamente.
Depois de iniciada esta funo no
mais pra.
Estrutura do Programa
int buttonPin = 3;
void setup()
{
// ...
}
void loop()
{
if (digitalRead(buttonPin) == HIGH)
serialWrite('H');
else
serialWrite('L');
delay(1000);
}
Formador: Daniel Costa
Programa - Instrues
Categorias:
Estruturas de controlo;
Digital I/O;
Analog I/O;
Advanced I/O;
Time;
Communication
Estruturas de Controlo
if
if...else
for
switch case
while
do... while
break
continue
returnFormador: Daniel Costa
Digital I/O
pinMode(pin, mode)
digitalWrite(pin, value)
int digitalRead(pin)
Analog I/O
int analogRead(pin)
Advanced I/O
int analogRead(pin)
Time
unsigned long millis()
unsigned long micros()
delay(ms)
delayMicroseconds(us)
Formador: Daniel Costa
Serial Communication
begin()
available()
read()
flush()
print()
println()
write()
Formador: Daniel Costa
DUVIDAS??
Formador: Daniel Costa
Exerccios-Projectos
Exerccio1
LED Pisca Pisca
Colocar o led do pino 13 a piscar com uma
frequncia de 1Hz;
Projecto 1
Sequncia de leds
Exerccio2
Ler interruptores ligados nos pinos 5, 6 e 7 e:
Acender LED do pino 3 caso pinos 5 e 7
estejam a ON;
Acender LED do pino 4 caso pino 6 esteja a
ON;
Formador: Daniel Costa
Projecto 2
Controlo de um servo motor
Exerccio 3
Ler o valor de um sensor analgico
(potencimetro) e enviar o valor do mesmo
via comunicao srie.
Projectos:
-Elaborar um relgio que actualiza as horas
ao segundo.(Nota: enviar os valores para a
porta srie de modo a visualizar a hora no
PC.)
-DIMMER-Canrios
-Parque de estacionamento
-Central de alarme de incndios
-etc