PARTE
1
ARDUINO
SUMÁRIO
 Breve histórico
 Caracteristicas Técnicas
INTRODUÇÃO
 Como começou?
O projeto do Arduino iniciou-se na cidade de Ivrea,
Itália, em 2005, com o intuito de ser um projeto de
baixo custo para estudantes da Interaction Design
Institute Ivrea.
INTRODUÇÃO
 Hardware
Uma placa Arduino é composta por um
microcontrolador Atmel AVR de 8 bits, com
componentes complementares para facilitar a
programação e incorporação para outros circuitos. Um
aspecto importante do Arduino é a maneira padrão de
que os conectores são colocados , permitindo que a
placa da CPU seja conectada a uma variedade de
módulos adicionais conhecidos como Shields (placas
de circuito impresso montadas com uma variedade de
interfaces), As placas de Arduino originais utilizam
série megaAVR de CIs da Atmel , especificamente o
ATmega8 , ATmega168 , ATmega328 , ATmega1280 e
ATmega2560.A grande maioria de placas inclui um
regulador linear de 5 volts e um de cristal de 16 MHz .
Além disto, o microcontrolador é pré-programado com
um bootloader que simplifica o carregamento de
programas para sua memória flash embutida.
Alguns Arduinos oficiais
ARDUINO UNO
 Caracteristicas Básicas
Uma placa Arduino UNO utiliza o microcontrolador
ATMEGA328, possui 14 entradas e saídas digitais
e 6 entradas analógicas.
ARDUINO UNO
 ENTRADAS/SAÍDAS DIGITAIS
Os pinos de entrada/saída digitais operam em 5 V,
onde cada pino pode fornecer ou receber uma corrente
máxima de 40 mA. Cada pino possui resistor de pull-up
interno que pode ser habilitado por software. Alguns
desse pinos possuem funções especiais:
 PWM : 3,5,6,9,10 e 11 podem ser usados como
saídas PWM de 8 bits através da
função analogWrite();
 Comunicação serial: 0 e 1 podem ser utilizados
para comunicação serial. Deve-se observar que estes
pinos são ligados ao microcontrolador responsável
pela comunicação USB com o PC;
 Interrupção externa: 2 e 3 . Estes pinos podem ser
configurados para gera uma interrupção externa,
através da função attachInterrupt().
ARDUINO UNO
 ENTRADAS ANALÓGICAS
A placa Arduino UNO possui 6 entradas analógicas
com resolução de 10 bits.
Por padrão a referencia do conversor AD está
ligada internamente a a 5V, ou seja, quando a
entrada estiver com 5V o valor da conversão
analógica digital será 1023. O valor da referência
pode ser mudado através do pino AREF.
ARDUINO UNO
Arduino UNO
PRIMEIROS PASSOS
 INSTALAR A PLATAFORMA DE
DESENVOLVIMENTO
Baixar a IDE do Arduino em arduino.cc
 INSTALAR O DRIVER DO ARDUINO
Ao conectar a placa do Arduino no computador,
verificar se a mesma foi reconhecida e se o driver
está corretamente instalado (Gerenciador de
dispositivos).Caso contrário, atualizar o driver em
arduinodrivers
PRIMEIROS PASSOS
 INSTALAR A PLATAFORMA DE
DESENVOLVIMENTO
Baixar a IDE do Arduino em arduino.cc
 INSTALAR O DRIVER DO ARDUINO
Ao conectar a placa do Arduino no computador,
verificar se a mesma foi reconhecida e se o driver
está corretamente instalado (Gerenciador de
dispositivos).Caso contrário, atualizar o driver em
arduinodrivers
IDE Arduino – Configuração
inicial
 Ferramentas - Placa
 Selecionar a placa utilizada;
 Ferramentas - Porta
 Selecionar a COM utilizada pelo Arduino.
IDE Arduino – Ícones de Atalho
 Verificar
 Verifica se existe erro no código digitado.
 Carregar
 Compila o código e grava na placa Arduino se corretamente
conectada;
 Novo
 Cria um novo sketch em branco.
 Abrir
 Abre um sketch, presente no sketchbook.
 Salvar
 Salva o sketch ativo
Estrutura de um programa
void setup ()
Executado ao ligar o Arduino ou resetá-lo. Função utilizada para
inicializar periféricos , variáveis etc.
void loop ()
Executado em loop inifinito. Local onde deve-se colocar o
programa principal.
Funções – E/S digitais
pinMode(pino, modo)
Pino = 0 a 13 (Arduino UNO)
Modo = INPUT, OUTPUT, ou INPUT_PULLUP (neste
modo não há necessidade de colocar um resistor de
pull-up numa chave)
Esta função normalmente é executada dentro do setup
().
digitalWrite(pino, valor)
Valor = HIGH ou LOW
Coloca “1” ou “0” numa saída digital.
digitalRead(pino)
Retorna o valor lido de um pino (HIGH ou LOW)
Funções – E/S digitais –
Exemplo1
/*
Pisca Led
O exemplo faz um led conectado ao pino 13 piscar na frequencia de 1Hz.
*/
const int led = 13; // cria uma constante com o numero do pino ligado ao LED
// utiliza-se, também, criar uma variável com o numero do pino, neste caso coloca-se
// int led = 13;
void setup()
{
pinMode(led, OUTPUT); // declara o pino do led como saída
}
void loop()
{
digitalWrite(led, HIGH); // Acende LED
delay (500) // gera atraso de 500ms ou 0,5s
digitalWrite(led, LOW); // Apaga LED
delay (500) // gera atraso de 500ms ou 0,5s
}
Funções – E/S digitais –
Exemplo2
/*
Leitura de tecla
O exemplo le uma tecla conectada ao pino 2 e aciona um led conectado ao pino 13
*/
const int led = 13; // cria uma constante com o numero do pino ligado ao LED
const int chave = 2; // cria uma constante com o numero do pino conectado a tecla
int valor; // cria uma variável int
void setup()
{
pinMode(led, OUTPUT); // declara o pino do led como saída
pinMode(chave, INPUT_PULLUP); // declara o pino da tecla como entrada
}
void loop()
{
valor = digitalRead(chave); // le o valor na entrada
if (valor == LOW) // se valor está em zero( tecla pressionada)
{
digitalWrite(led, HIGH); // Liga LED indicando tecla pressionada
}
else
{
digitalWrite(led, LOW); // Desliga LED indicando tecla solta
}
Funções – E/S analógicas
analogRead (pino)
Pino = A0,A1,A2,A3,A4 ou A5(Arduino UNO)
Retorna um número de 0 a 1023.
analogWrite(pino, valor)
Pino = 3,5,6,9,10 e 11 (Arduino UNO) saídas PWM
Valor = duty cicle (de 0 – desligado até 255 –
ligado)
Funções – Comunicação serial
analogRead (pino)
Pino = A0,A1,A2,A3,A4 ou A5(Arduino UNO)
Retorna um número de 0 a 1023.
analogWrite(pino, valor)
Pino = 3,5,6,9,10 e 11 (Arduino UNO) saídas PWM
Valor = duty cicle (de 0 – desligado até 255 –
ligado)
Funções – E/S analógicas –
Exemplo3
/*
Dimmerização de um LED
O exemplo le a tensão de um potenciometro e atua no LED com valor proporcional
*/
const int led = 9; // cria uma constante com o numero do pino ligado ao LED
const int pot= 0; // cria uma constante com o numero do pino conectado ao pot.
int valor; // cria uma variável int
void setup()
{
pinMode(led, OUTPUT);
}
void loop()
{
valor = analogRead(pot); // lê valor do potenciômetro
analogWrite(led, valor / 4); //coloca no led um duty cycle de 0 a 255
//baseado no valor do pot (0 a 10230
}
Referências:
 Na IDE do Arduino: Ajuda – Referência
 Playground.arduino.cc

ARDUINO.pptx

  • 1.
  • 2.
    SUMÁRIO  Breve histórico Caracteristicas Técnicas
  • 3.
    INTRODUÇÃO  Como começou? Oprojeto do Arduino iniciou-se na cidade de Ivrea, Itália, em 2005, com o intuito de ser um projeto de baixo custo para estudantes da Interaction Design Institute Ivrea.
  • 4.
    INTRODUÇÃO  Hardware Uma placaArduino é composta por um microcontrolador Atmel AVR de 8 bits, com componentes complementares para facilitar a programação e incorporação para outros circuitos. Um aspecto importante do Arduino é a maneira padrão de que os conectores são colocados , permitindo que a placa da CPU seja conectada a uma variedade de módulos adicionais conhecidos como Shields (placas de circuito impresso montadas com uma variedade de interfaces), As placas de Arduino originais utilizam série megaAVR de CIs da Atmel , especificamente o ATmega8 , ATmega168 , ATmega328 , ATmega1280 e ATmega2560.A grande maioria de placas inclui um regulador linear de 5 volts e um de cristal de 16 MHz . Além disto, o microcontrolador é pré-programado com um bootloader que simplifica o carregamento de programas para sua memória flash embutida.
  • 5.
  • 6.
    ARDUINO UNO  CaracteristicasBásicas Uma placa Arduino UNO utiliza o microcontrolador ATMEGA328, possui 14 entradas e saídas digitais e 6 entradas analógicas.
  • 7.
    ARDUINO UNO  ENTRADAS/SAÍDASDIGITAIS Os pinos de entrada/saída digitais operam em 5 V, onde cada pino pode fornecer ou receber uma corrente máxima de 40 mA. Cada pino possui resistor de pull-up interno que pode ser habilitado por software. Alguns desse pinos possuem funções especiais:  PWM : 3,5,6,9,10 e 11 podem ser usados como saídas PWM de 8 bits através da função analogWrite();  Comunicação serial: 0 e 1 podem ser utilizados para comunicação serial. Deve-se observar que estes pinos são ligados ao microcontrolador responsável pela comunicação USB com o PC;  Interrupção externa: 2 e 3 . Estes pinos podem ser configurados para gera uma interrupção externa, através da função attachInterrupt().
  • 8.
    ARDUINO UNO  ENTRADASANALÓGICAS A placa Arduino UNO possui 6 entradas analógicas com resolução de 10 bits. Por padrão a referencia do conversor AD está ligada internamente a a 5V, ou seja, quando a entrada estiver com 5V o valor da conversão analógica digital será 1023. O valor da referência pode ser mudado através do pino AREF.
  • 9.
  • 10.
    PRIMEIROS PASSOS  INSTALARA PLATAFORMA DE DESENVOLVIMENTO Baixar a IDE do Arduino em arduino.cc  INSTALAR O DRIVER DO ARDUINO Ao conectar a placa do Arduino no computador, verificar se a mesma foi reconhecida e se o driver está corretamente instalado (Gerenciador de dispositivos).Caso contrário, atualizar o driver em arduinodrivers
  • 11.
    PRIMEIROS PASSOS  INSTALARA PLATAFORMA DE DESENVOLVIMENTO Baixar a IDE do Arduino em arduino.cc  INSTALAR O DRIVER DO ARDUINO Ao conectar a placa do Arduino no computador, verificar se a mesma foi reconhecida e se o driver está corretamente instalado (Gerenciador de dispositivos).Caso contrário, atualizar o driver em arduinodrivers
  • 12.
    IDE Arduino –Configuração inicial  Ferramentas - Placa  Selecionar a placa utilizada;  Ferramentas - Porta  Selecionar a COM utilizada pelo Arduino.
  • 13.
    IDE Arduino –Ícones de Atalho  Verificar  Verifica se existe erro no código digitado.  Carregar  Compila o código e grava na placa Arduino se corretamente conectada;  Novo  Cria um novo sketch em branco.  Abrir  Abre um sketch, presente no sketchbook.  Salvar  Salva o sketch ativo
  • 14.
    Estrutura de umprograma void setup () Executado ao ligar o Arduino ou resetá-lo. Função utilizada para inicializar periféricos , variáveis etc. void loop () Executado em loop inifinito. Local onde deve-se colocar o programa principal.
  • 15.
    Funções – E/Sdigitais pinMode(pino, modo) Pino = 0 a 13 (Arduino UNO) Modo = INPUT, OUTPUT, ou INPUT_PULLUP (neste modo não há necessidade de colocar um resistor de pull-up numa chave) Esta função normalmente é executada dentro do setup (). digitalWrite(pino, valor) Valor = HIGH ou LOW Coloca “1” ou “0” numa saída digital. digitalRead(pino) Retorna o valor lido de um pino (HIGH ou LOW)
  • 16.
    Funções – E/Sdigitais – Exemplo1 /* Pisca Led O exemplo faz um led conectado ao pino 13 piscar na frequencia de 1Hz. */ const int led = 13; // cria uma constante com o numero do pino ligado ao LED // utiliza-se, também, criar uma variável com o numero do pino, neste caso coloca-se // int led = 13; void setup() { pinMode(led, OUTPUT); // declara o pino do led como saída } void loop() { digitalWrite(led, HIGH); // Acende LED delay (500) // gera atraso de 500ms ou 0,5s digitalWrite(led, LOW); // Apaga LED delay (500) // gera atraso de 500ms ou 0,5s }
  • 17.
    Funções – E/Sdigitais – Exemplo2 /* Leitura de tecla O exemplo le uma tecla conectada ao pino 2 e aciona um led conectado ao pino 13 */ const int led = 13; // cria uma constante com o numero do pino ligado ao LED const int chave = 2; // cria uma constante com o numero do pino conectado a tecla int valor; // cria uma variável int void setup() { pinMode(led, OUTPUT); // declara o pino do led como saída pinMode(chave, INPUT_PULLUP); // declara o pino da tecla como entrada } void loop() { valor = digitalRead(chave); // le o valor na entrada if (valor == LOW) // se valor está em zero( tecla pressionada) { digitalWrite(led, HIGH); // Liga LED indicando tecla pressionada } else { digitalWrite(led, LOW); // Desliga LED indicando tecla solta }
  • 18.
    Funções – E/Sanalógicas analogRead (pino) Pino = A0,A1,A2,A3,A4 ou A5(Arduino UNO) Retorna um número de 0 a 1023. analogWrite(pino, valor) Pino = 3,5,6,9,10 e 11 (Arduino UNO) saídas PWM Valor = duty cicle (de 0 – desligado até 255 – ligado)
  • 19.
    Funções – Comunicaçãoserial analogRead (pino) Pino = A0,A1,A2,A3,A4 ou A5(Arduino UNO) Retorna um número de 0 a 1023. analogWrite(pino, valor) Pino = 3,5,6,9,10 e 11 (Arduino UNO) saídas PWM Valor = duty cicle (de 0 – desligado até 255 – ligado)
  • 20.
    Funções – E/Sanalógicas – Exemplo3 /* Dimmerização de um LED O exemplo le a tensão de um potenciometro e atua no LED com valor proporcional */ const int led = 9; // cria uma constante com o numero do pino ligado ao LED const int pot= 0; // cria uma constante com o numero do pino conectado ao pot. int valor; // cria uma variável int void setup() { pinMode(led, OUTPUT); } void loop() { valor = analogRead(pot); // lê valor do potenciômetro analogWrite(led, valor / 4); //coloca no led um duty cycle de 0 a 255 //baseado no valor do pot (0 a 10230 }
  • 21.
    Referências:  Na IDEdo Arduino: Ajuda – Referência  Playground.arduino.cc