Curso de Básico Arduino!
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Aula 1: Introdução ao Arduino e Portas
Digitais
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Quem sou eu?
Wellington Cássio Faria
Formação:
Curso técnico – Médio (2o grau)
Técnico em Eletrônica Industrial, CEP - Centro de Educação Profissional
Tancredo Neves (julho/2010) - concluída.
Graduação
Engenharia da Computação, Inatel (junho/2015) - cursando.
Atividades:
Bolsista de Iniciação Científica
Conversão de sistemas de medição analógicos para digitais na
Agrometereologia utilizando plataforma Arduino.
Monitor Voluntário
Cas@viva - Arduino
Natural : Paraisópolis - MG
O que é ARDUINO?
É uma plataforma
de prototipagem eletrônica de hardware
livre, projetada com
um microcontrolador Atmel AVR de placa
única, com suporte de entrada /
saída embutido, uma linguagem de
programação padrão, a qual tem origem
em Wiring, e é essencialmente C/C++. O
objetivo do projeto é criar ferramentas que
são acessíveis, com baixo custo, flexíveis e
fáceis. Principalmente para aqueles que não
teriam alcance aos controladores mais
sofisticados e de ferramentas mais
complicadas.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
O que que quer dizer open-source?
As placas podem
ser construídas à mão ou
comprado pré-montado, o software
(IDE) pode ser
baixado gratuitamente. Os projetos de
hardware de referência (arquivos de
CAD) estão disponíveis sob uma licença
de código aberto, você é livre
para adaptá-los às suas
necessidades .
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
O que é ARDUINO?
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Hardware do ARDUINO UNO
Portas Digitais
0 à 13
PWM: 3, 5, 6, 9, 10,
e 11 ( ~ )
Comunicação Serial:
1 e 0 (TX e RX)
Portas
Analógicas
0 à 5Alimentação
Externa
USB
Barramento de
Extensão
Microcontrolador
ATmega328
Botão para
Reiniciar
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Programação do Arduino
Programação do Arduino pode ser dividido em três partes principais: estruturas,
valores (variáveis ​​e constantes) e funções.
A
linguagem
tem origem
em Wiring,
e é
essencialm
ente C/C++
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
PIC assembly X PIC em C X Arduino
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
PIC assembly X PIC em C X Arduino
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Shields do Arduino:
Shields são placas que
podem ser conectados em cima
do Arduino estendendo as suas
capacidades.
Os diferentes shields
seguem a mesma filosofia que
do Arduino: eles são baratos de
produzir e fáceis de montar e
programar.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Arduino Ethernet Shield
O Shield permite que
Arduino conecte-se à
internet.
Existe uma entrada
de cartão micro-SD , que
pode ser usado para
armazenar arquivos para
disponibilizar na web.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Arduino WiFi Shield
O Shield permite que que
Arduino conecte-se à internet
usando o WiFi.
O Shield WiFi pode se
conectar a redes sem fio que operam
de acordo com as especificações
802.11be 802.11g.
Há uma entrada de cartão
micro-SD , que pode ser usado para
armazenar dados que podem serem
transmitidos via WiFi.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Arduino Wireless SD Shield
O Shield permite que uma que
Arduino para comunicar sem fios com um
módulo sem fios(RF).
Ele baseia-se nos módulos Xbee
produzidos pela Digi.
Há um slot para cartão SD.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Shield Arduino GSM Shield
O shield conecta o
Arduino à internet usando a
rede GPRS sem fio.
Você também pode
fazer / receber chamadas de
voz (você vai precisar de um
alto-falante externo e circuito
de microfone) e enviar /
receber mensagens SMS.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Arduino Motor Shield
O shield permite
que você controle dois
motores DC com sua placa
Arduino, controlando a
velocidade , a direção de
cada um de forma
independente.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
MP3 Player Shield
O MP3 Player Shield tem
a impressionante capacidade de decodificação de MP3
e a funcionalidade de
armazenamento do cartão SD. Agora você pode
puxar arquivos MP3 a partir de um cartão SD e
reproduzi-los usando apenas este shield,
efetivamente transformando todo o Arduino em
um completo MP3 Player! O Shield
de MP3ainda utiliza o decodificador de
áudio MP3 VS1053B IC para decodificar os arquivos de
áudio. O VS1053 também é capaz de
decodificar áudio Ogg Vorbis/MP3/AAC/WMA/MIDI e
codificação IMA ADPCM.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
LCD Shield
O LCD Shield Color,
fornece uma forma
fácil de conectar o
popular Nokia 6100
LCD no Arduino.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Shield EasyVR
The Shield EasyVR é um
shield de reconhecimento de
voz para placas Arduino
integrando um módulo
EasyVR. Ele inclui todas as
funcionalidades do módulo
EasyVR que simplifica a
conexão à placa Arduino e PC.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Sensores
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Sensores
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Sensores
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Livros
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Site Oficial
www.arduino.cc
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
#MãoNaMassa!
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
#MãoNaMassa!
O setup() é função para
configurações inicias. Use-se:
• Inicializar variáveis.
• Configuração de pino (entrada ou
saída)
É executada apenas uma vez, após cada
reinicialização da placa Arduino.
o loop() faz exatamente o
que seu nome sugere, e laços
infinito. O Código no loop() ativamente
“seu programa” a placa Arduino.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Portas Digitais
0 à 13
PWM: 3, 5, 6, 9, 10,
e 11 ( ~ )
Comunicação Serial:
1 e 0 (TX e RX)
Funções para portas Digitais
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
pinMode( )
Sintaxe:
pinMode (pino, modo)
Parâmetros:
pino: o número do pin cujo modo
que você deseja definir
modo: INPUT (Entrada)
OUTPUT (Saída)
INPUT_PULLUP (Entrada com
PULL-UP)
Retorno:
Nenhum
Configura o pino especificado como uma
entrada ou saída.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
pinMode( )
Configuração de Portas
Digitais:
pinMode (pino, modo)
modo: INPUT (Entrada)
OUTPUT(Saída)
INPUT_PULLUP (Entrada
com PULLUP interno,
essa opção não é
necessário o circuito
PULLUP externo
podendo assim ser
ligado diretamente no
GND.
*Não se utiliza para
entradas analógicas.
Quando pressionado
“envia” 0 volts(GND)
(LOW) para porta.
Quando pressionado
“envia” 5 volts (HIGH)
para porta.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
digitalWrite()
Sintaxe:
digitalWrite (pino, valor)
Parâmetros:
pino: o número do pino
valor: HIGH (ALTO ) ou LOW (BAIXO)
Retorno:
Nenhum
Escreve uma valor ALTO ou valor
BAIXO para um pino digital
configurado como SAÍDA.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
digitalRead()
Sintaxe
digitalRead (pino)
Parâmetros
pino: o número do pino digital que
você quer ler configurado como
ENTRADA
Retorno:
HIGH ou LOW
Lê o valor de um pino digital
especificado, ALTO ou BAIXO
definido como ENTRADA.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Exercício Portas Digitais
1- Faça um programa que faça o LED1 da placa (pino 13) piscar de 1 em 1 segundo.
Ligue um outro LED2 no pino 4 da porta digital e toda vez que o botão(PULL-UP Interno
pino 3) for precisado o LED2 deve ligar, caso contrario o LED2 deve ficar apagado.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Exercício Portas Digitais
2- Faça um programa que se botão(D2) estiver pressionado pisque 3 LED (D4,D5,D6)
cada um de cada vez da direita para esquerda no intervalo de 1 segundo. Se o botão
não tiver pressionado pisque 3 LED (D4,D5,D6) cada um de cada vez da esquerda para
direita no intervalo de 1 segundo.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Aula 2: Portas Analógicas, Comunicação
Serial e LCD
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Funções para portas Analógicas
Portas
Analógicas
0 à 5
PWM: 3, 5, 6, 9, 10,
e 11 ( ~ )
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
analogReference( )
Configura a tensão de referência utilizada
para a entrada analógica (SETUP)
As opções são:
• DEFAULT: a referência analógica
padrão de 5 volts
• INTERNAL: referência igual a 1,1
volts(ATmega168 ou ATmega328)
• INTERNAL1V1: referência 1.1V
referência (apenas Arduino Mega)
• INTERNAL2V56: referência 2.56V
(apenas Arduino Mega)
• EXTERNAL: referência de tensão
aplicada ao pino AREF (0 a 5V )
Sintaxe:
analogReference(tipo)
Parâmetro:
tipo: DEFAULT, INTERNO,
INTERNAL1V1, INTERNAL2V56 ou
EXTERNAL.
Retorno:
Nenhum
TensãodeReferência
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
analogRead( )
Lê o valor do pino analógico especificado.
Mapeia tensões de
entrada entre 0 e tensão
de referência em valores
inteiros entre 0 e 1023
Sintaxe:
analogRead (pino)
Parâmetros:
pino: o número do pino de entrada
analógica.
Retorno:
Número inteiro de 0 a 1023
Convertendo Retorno em Tensão:
𝑇𝑒𝑛𝑠ã𝑜 = 𝑅𝑒𝑡𝑜𝑟𝑛𝑜 𝑥
𝑇𝑒𝑛𝑠ã𝑜 𝑑𝑒 𝑅𝑒𝑓ê𝑟𝑒𝑛𝑐𝑖𝑎
1024
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
analogWrite( )
Escreve um valor tensão no pino
especificado PWM.
Sintaxe:
analogWrite(pino, valor)
Parâmetros:
pino: Número do pino .
Valor : Entre 0 (0 Volts/ 0% Duty) a 255
(5 Volts/100% Duty).
Returno:
Nenhum
𝑇𝑒𝑛𝑠ã𝑜 𝑛𝑜 𝑃𝑖𝑛𝑜 =
5 𝑥 𝑣𝑎𝑙𝑜𝑟
255
Arduino Uno:
PWM: 3, 5, 6, 9, 10,
e 11 ( ~ )
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Funções para Comunicação Serial
Comunicação Serial:
1 e 0 (TX e RX)
Usado para a comunicação entre a placa Arduino e um
computador ou outros dispositivos.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Serial.begin( )
Define a taxa de dados em bits por
segundo (Banda) para a transmissão de
dados serial .
Sintaxe:
Serial.begin (velocidade)
Parâmetros:
Velocidade: em bits por segundo (banda)
Retorno:
Nenhum
Para se comunicar com o computador, use uma
dessas taxas: 300, 600, 1200, 2400, 4800, 9600,
14400, 19200, 28800, 38400, 57600 ou 115200.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Serial.print( )
Imprime/Envia dados para a porta
serial/computador.
Sintaxe:
Serial.print (val)
Parâmetros:
val: o valor para imprimir - qualquer tipo
de dados
millis (): Retorna o número de milissegundos desde que o
Arduino começou a executar o programa atual.
delay(): Pausa o programa para a quantidade de tempo (em
milissegundos) especificado como parâmetro. (1000
milissegundos são um segundo.)
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Serial.read( ) / Serial.available( )
Lê os dados de entrada Serial.
Sintaxe:
Serial.read ()
Parâmetros:
Nenhum
Retorna:
Um numero inteiro referente
a tabela ASCII.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Tabela ASCII
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Exercício
1- Faça um programa que leia o sensor LM35 utilizando a porta analógica 0, e envia esse
dado para computador de 1 em 1 segundo em ºC.
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
O sensor LM35 é um sensor de precisão,
fabricado pela National Semiconductor ,que
apresenta uma saída de tensão linear relativa à
temperatura em que ele se encontrar no
momento em que for alimentado por uma
tensão de 4-20Vdc e GND, tendo em sua saída
um sinal de 10mV para cada Grau Celsius de
temperatura.
LiquidCrystal Biblioteca
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
Esta biblioteca permite que uma placa
Arduino possa controlar um LCD baseado no
Hitachi HD44780
LiquidCrystal Biblioteca
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
LiquidCrystal ()
Cria uma variável do tipo LiquidCrystal.
Sintaxe:
LiquidCrystal “NOME” (rs, enable,D4, D5,D6,D7)
begin ()
Especifica as dimensões (largura e altura)
do display.
Sintaxe:
lcd.begin (colunas, linhas)
Parâmetros:
lcd: uma variável do tipo LiquidCrystal
colunas: o número de colunas do LCD
linhas: o número de linhas do LCD
LiquidCrystal Biblioteca
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
print ()
Imprime texto ao LCD.
Sintaxe:
lcd.print (dados)
Parâmetro:
lcd: uma variável do tipo LiquidCrystal
dados: os dados para imprimir (char,
byte, int, long, ou string)
LiquidCrystal Biblioteca
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
setCursor ()
Posicione o cursor LCD, isto é, definir o
local em que o texto subseqüente é
escrito no LCD.
Sintaxe:
lcd.setCursor (coluna, linha)
Parâmetros:
lcd: uma variável do tipo LiquidCrystal
coluna: a coluna na qual se posiciona o
cursor (sendo 0 a primeira coluna)
linha: a linha em que a posição do cursor
(sendo 0 a primeira linha)
Exercício
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
2- Faça um programa que imprima na Primeira linha o seu primeiro nome e na segunda
linha o primeiro nome do seu parceiro de bancada.
4- Entre em file/exemples/LiquidCrystal/Scroll e rode o programa.
FIM
Ministrado por: Wellington Cássio Faria
Contato: wellingtonf@gec.inatel.br
www.facebook.com/engenheiromaonamassa

Curso de arduino

  • 1.
    Curso de BásicoArduino! Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 2.
    Aula 1: Introduçãoao Arduino e Portas Digitais Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 3.
    Quem sou eu? WellingtonCássio Faria Formação: Curso técnico – Médio (2o grau) Técnico em Eletrônica Industrial, CEP - Centro de Educação Profissional Tancredo Neves (julho/2010) - concluída. Graduação Engenharia da Computação, Inatel (junho/2015) - cursando. Atividades: Bolsista de Iniciação Científica Conversão de sistemas de medição analógicos para digitais na Agrometereologia utilizando plataforma Arduino. Monitor Voluntário Cas@viva - Arduino Natural : Paraisópolis - MG
  • 4.
    O que éARDUINO? É uma plataforma de prototipagem eletrônica de hardware livre, projetada com um microcontrolador Atmel AVR de placa única, com suporte de entrada / saída embutido, uma linguagem de programação padrão, a qual tem origem em Wiring, e é essencialmente C/C++. O objetivo do projeto é criar ferramentas que são acessíveis, com baixo custo, flexíveis e fáceis. Principalmente para aqueles que não teriam alcance aos controladores mais sofisticados e de ferramentas mais complicadas. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 5.
    O que quequer dizer open-source? As placas podem ser construídas à mão ou comprado pré-montado, o software (IDE) pode ser baixado gratuitamente. Os projetos de hardware de referência (arquivos de CAD) estão disponíveis sob uma licença de código aberto, você é livre para adaptá-los às suas necessidades . Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 6.
    O que éARDUINO? Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 7.
    Hardware do ARDUINOUNO Portas Digitais 0 à 13 PWM: 3, 5, 6, 9, 10, e 11 ( ~ ) Comunicação Serial: 1 e 0 (TX e RX) Portas Analógicas 0 à 5Alimentação Externa USB Barramento de Extensão Microcontrolador ATmega328 Botão para Reiniciar Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 8.
    Programação do Arduino Programaçãodo Arduino pode ser dividido em três partes principais: estruturas, valores (variáveis ​​e constantes) e funções. A linguagem tem origem em Wiring, e é essencialm ente C/C++ Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 9.
    PIC assembly XPIC em C X Arduino Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 10.
    Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br
  • 11.
    Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br
  • 12.
    Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br
  • 13.
    PIC assembly XPIC em C X Arduino Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 14.
    Shields do Arduino: Shieldssão placas que podem ser conectados em cima do Arduino estendendo as suas capacidades. Os diferentes shields seguem a mesma filosofia que do Arduino: eles são baratos de produzir e fáceis de montar e programar. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 15.
    Arduino Ethernet Shield OShield permite que Arduino conecte-se à internet. Existe uma entrada de cartão micro-SD , que pode ser usado para armazenar arquivos para disponibilizar na web. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 16.
    Arduino WiFi Shield OShield permite que que Arduino conecte-se à internet usando o WiFi. O Shield WiFi pode se conectar a redes sem fio que operam de acordo com as especificações 802.11be 802.11g. Há uma entrada de cartão micro-SD , que pode ser usado para armazenar dados que podem serem transmitidos via WiFi. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 17.
    Arduino Wireless SDShield O Shield permite que uma que Arduino para comunicar sem fios com um módulo sem fios(RF). Ele baseia-se nos módulos Xbee produzidos pela Digi. Há um slot para cartão SD. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 18.
    Shield Arduino GSMShield O shield conecta o Arduino à internet usando a rede GPRS sem fio. Você também pode fazer / receber chamadas de voz (você vai precisar de um alto-falante externo e circuito de microfone) e enviar / receber mensagens SMS. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 19.
    Arduino Motor Shield Oshield permite que você controle dois motores DC com sua placa Arduino, controlando a velocidade , a direção de cada um de forma independente. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 20.
    MP3 Player Shield OMP3 Player Shield tem a impressionante capacidade de decodificação de MP3 e a funcionalidade de armazenamento do cartão SD. Agora você pode puxar arquivos MP3 a partir de um cartão SD e reproduzi-los usando apenas este shield, efetivamente transformando todo o Arduino em um completo MP3 Player! O Shield de MP3ainda utiliza o decodificador de áudio MP3 VS1053B IC para decodificar os arquivos de áudio. O VS1053 também é capaz de decodificar áudio Ogg Vorbis/MP3/AAC/WMA/MIDI e codificação IMA ADPCM. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 21.
    LCD Shield O LCDShield Color, fornece uma forma fácil de conectar o popular Nokia 6100 LCD no Arduino. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 22.
    Shield EasyVR The ShieldEasyVR é um shield de reconhecimento de voz para placas Arduino integrando um módulo EasyVR. Ele inclui todas as funcionalidades do módulo EasyVR que simplifica a conexão à placa Arduino e PC. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 23.
    Sensores Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br
  • 24.
    Sensores Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br
  • 25.
    Sensores Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br
  • 26.
    Livros Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br
  • 27.
    Site Oficial www.arduino.cc Ministrado por:Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 28.
    #MãoNaMassa! Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br
  • 29.
    #MãoNaMassa! O setup() éfunção para configurações inicias. Use-se: • Inicializar variáveis. • Configuração de pino (entrada ou saída) É executada apenas uma vez, após cada reinicialização da placa Arduino. o loop() faz exatamente o que seu nome sugere, e laços infinito. O Código no loop() ativamente “seu programa” a placa Arduino. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 30.
    Portas Digitais 0 à13 PWM: 3, 5, 6, 9, 10, e 11 ( ~ ) Comunicação Serial: 1 e 0 (TX e RX) Funções para portas Digitais Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 31.
    pinMode( ) Sintaxe: pinMode (pino,modo) Parâmetros: pino: o número do pin cujo modo que você deseja definir modo: INPUT (Entrada) OUTPUT (Saída) INPUT_PULLUP (Entrada com PULL-UP) Retorno: Nenhum Configura o pino especificado como uma entrada ou saída. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 32.
    pinMode( ) Configuração dePortas Digitais: pinMode (pino, modo) modo: INPUT (Entrada) OUTPUT(Saída) INPUT_PULLUP (Entrada com PULLUP interno, essa opção não é necessário o circuito PULLUP externo podendo assim ser ligado diretamente no GND. *Não se utiliza para entradas analógicas. Quando pressionado “envia” 0 volts(GND) (LOW) para porta. Quando pressionado “envia” 5 volts (HIGH) para porta. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 33.
    digitalWrite() Sintaxe: digitalWrite (pino, valor) Parâmetros: pino:o número do pino valor: HIGH (ALTO ) ou LOW (BAIXO) Retorno: Nenhum Escreve uma valor ALTO ou valor BAIXO para um pino digital configurado como SAÍDA. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 34.
    digitalRead() Sintaxe digitalRead (pino) Parâmetros pino: onúmero do pino digital que você quer ler configurado como ENTRADA Retorno: HIGH ou LOW Lê o valor de um pino digital especificado, ALTO ou BAIXO definido como ENTRADA. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 35.
    Exercício Portas Digitais 1-Faça um programa que faça o LED1 da placa (pino 13) piscar de 1 em 1 segundo. Ligue um outro LED2 no pino 4 da porta digital e toda vez que o botão(PULL-UP Interno pino 3) for precisado o LED2 deve ligar, caso contrario o LED2 deve ficar apagado. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 36.
    Exercício Portas Digitais 2-Faça um programa que se botão(D2) estiver pressionado pisque 3 LED (D4,D5,D6) cada um de cada vez da direita para esquerda no intervalo de 1 segundo. Se o botão não tiver pressionado pisque 3 LED (D4,D5,D6) cada um de cada vez da esquerda para direita no intervalo de 1 segundo. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 37.
    Aula 2: PortasAnalógicas, Comunicação Serial e LCD Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 38.
    Funções para portasAnalógicas Portas Analógicas 0 à 5 PWM: 3, 5, 6, 9, 10, e 11 ( ~ ) Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 39.
    analogReference( ) Configura atensão de referência utilizada para a entrada analógica (SETUP) As opções são: • DEFAULT: a referência analógica padrão de 5 volts • INTERNAL: referência igual a 1,1 volts(ATmega168 ou ATmega328) • INTERNAL1V1: referência 1.1V referência (apenas Arduino Mega) • INTERNAL2V56: referência 2.56V (apenas Arduino Mega) • EXTERNAL: referência de tensão aplicada ao pino AREF (0 a 5V ) Sintaxe: analogReference(tipo) Parâmetro: tipo: DEFAULT, INTERNO, INTERNAL1V1, INTERNAL2V56 ou EXTERNAL. Retorno: Nenhum TensãodeReferência Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 40.
    analogRead( ) Lê ovalor do pino analógico especificado. Mapeia tensões de entrada entre 0 e tensão de referência em valores inteiros entre 0 e 1023 Sintaxe: analogRead (pino) Parâmetros: pino: o número do pino de entrada analógica. Retorno: Número inteiro de 0 a 1023 Convertendo Retorno em Tensão: 𝑇𝑒𝑛𝑠ã𝑜 = 𝑅𝑒𝑡𝑜𝑟𝑛𝑜 𝑥 𝑇𝑒𝑛𝑠ã𝑜 𝑑𝑒 𝑅𝑒𝑓ê𝑟𝑒𝑛𝑐𝑖𝑎 1024 Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 41.
    analogWrite( ) Escreve umvalor tensão no pino especificado PWM. Sintaxe: analogWrite(pino, valor) Parâmetros: pino: Número do pino . Valor : Entre 0 (0 Volts/ 0% Duty) a 255 (5 Volts/100% Duty). Returno: Nenhum 𝑇𝑒𝑛𝑠ã𝑜 𝑛𝑜 𝑃𝑖𝑛𝑜 = 5 𝑥 𝑣𝑎𝑙𝑜𝑟 255 Arduino Uno: PWM: 3, 5, 6, 9, 10, e 11 ( ~ ) Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 42.
    Funções para ComunicaçãoSerial Comunicação Serial: 1 e 0 (TX e RX) Usado para a comunicação entre a placa Arduino e um computador ou outros dispositivos. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 43.
    Serial.begin( ) Define ataxa de dados em bits por segundo (Banda) para a transmissão de dados serial . Sintaxe: Serial.begin (velocidade) Parâmetros: Velocidade: em bits por segundo (banda) Retorno: Nenhum Para se comunicar com o computador, use uma dessas taxas: 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 ou 115200. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 44.
    Serial.print( ) Imprime/Envia dadospara a porta serial/computador. Sintaxe: Serial.print (val) Parâmetros: val: o valor para imprimir - qualquer tipo de dados millis (): Retorna o número de milissegundos desde que o Arduino começou a executar o programa atual. delay(): Pausa o programa para a quantidade de tempo (em milissegundos) especificado como parâmetro. (1000 milissegundos são um segundo.) Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 45.
    Serial.read( ) /Serial.available( ) Lê os dados de entrada Serial. Sintaxe: Serial.read () Parâmetros: Nenhum Retorna: Um numero inteiro referente a tabela ASCII. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 46.
    Tabela ASCII Ministrado por:Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br
  • 47.
    Exercício 1- Faça umprograma que leia o sensor LM35 utilizando a porta analógica 0, e envia esse dado para computador de 1 em 1 segundo em ºC. Ministrado por: Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br O sensor LM35 é um sensor de precisão, fabricado pela National Semiconductor ,que apresenta uma saída de tensão linear relativa à temperatura em que ele se encontrar no momento em que for alimentado por uma tensão de 4-20Vdc e GND, tendo em sua saída um sinal de 10mV para cada Grau Celsius de temperatura.
  • 48.
    LiquidCrystal Biblioteca Ministrado por:Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br Esta biblioteca permite que uma placa Arduino possa controlar um LCD baseado no Hitachi HD44780
  • 49.
    LiquidCrystal Biblioteca Ministrado por:Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br LiquidCrystal () Cria uma variável do tipo LiquidCrystal. Sintaxe: LiquidCrystal “NOME” (rs, enable,D4, D5,D6,D7) begin () Especifica as dimensões (largura e altura) do display. Sintaxe: lcd.begin (colunas, linhas) Parâmetros: lcd: uma variável do tipo LiquidCrystal colunas: o número de colunas do LCD linhas: o número de linhas do LCD
  • 50.
    LiquidCrystal Biblioteca Ministrado por:Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br print () Imprime texto ao LCD. Sintaxe: lcd.print (dados) Parâmetro: lcd: uma variável do tipo LiquidCrystal dados: os dados para imprimir (char, byte, int, long, ou string)
  • 51.
    LiquidCrystal Biblioteca Ministrado por:Wellington Cássio Faria Contato: wellingtonf@gec.inatel.br setCursor () Posicione o cursor LCD, isto é, definir o local em que o texto subseqüente é escrito no LCD. Sintaxe: lcd.setCursor (coluna, linha) Parâmetros: lcd: uma variável do tipo LiquidCrystal coluna: a coluna na qual se posiciona o cursor (sendo 0 a primeira coluna) linha: a linha em que a posição do cursor (sendo 0 a primeira linha)
  • 52.
    Exercício Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br 2- Faça um programa que imprima na Primeira linha o seu primeiro nome e na segunda linha o primeiro nome do seu parceiro de bancada. 4- Entre em file/exemples/LiquidCrystal/Scroll e rode o programa.
  • 53.
    FIM Ministrado por: WellingtonCássio Faria Contato: wellingtonf@gec.inatel.br www.facebook.com/engenheiromaonamassa