AULA 1 - Microcontroladores - Técnico

De IFSC
Revisão de 14h32min de 2 de outubro de 2015 por imported>Fargoud (→‎IDE Arduino)
Ir para navegação Ir para pesquisar

Introdução aos Microcontroladores

Apresentação sobre Microcontroladores

Apostila sobre Microcontroladores

A plataforma Arduíno

(Extraído da apostila Curso de Arduíno, de Álvaro Justen e do curso Programação Básica em Arduíno, UFSC)

Arduino 1 é um projeto que engloba software e hardware e tem como objetivo fornecer uma plataforma fácil para prototipação de projetos interativos, utilizando um microcontrolador.

O projeto do Arduino teve início em 2005 na cidade de Ivrea, Itália.

O Arduino é composto por uma placa com microcontrolador Atmel AVR e um ambiente de programação baseado em Wiring e C++.

Tanto o hardware como o ambiente de programação do Arduino são livres, ou seja, qualquer pessoa pode modificá-los e reproduzi-los.


O Arduino também é conhecido como plataforma de computação física.

Existem inúmeros modelos de Arduínos, como veremos na sequência, mas existem alguns mais populares, como o antigo Duemilanove (2009, em italiano) e o Uno, muito utilizado atualmente.


Due.jpg
Uno.jpg

A principal diferença entre um Arduino e um computador convencional é que, além ter menor porte (tanto no tamanho quanto no poder de processamento), o Arduino utiliza dispositivos diferentes para entrada e saída em geral.

Por exemplo: em um PC utilizamos teclado e mouse como dispositivos de entrada e monitores e impressoras como dispositivos de saída; já em projetos com o Arduino os dispositivos de entrada e saída são circuitos elétricos/eletrônicos.


Como a interface do Arduino com outros dispositivos está mais perto do meio físico que a de um PC, podemos ler dados de sensores (temperatura, luz, pressão etc.) e controlar outros circuitos (lâmpadas, motores, eletrodomésticos etc.), dentre outras coisas que não conseguiríamos diretamente com um PC.

A grande diferença com relação ao uso desses dispositivos, no caso do Arduino, é que, na maior parte das vezes, nós mesmos construímos os circuitos que são utilizados, ou seja, não estamos limitados apenas a produtos existentes no mercado: o limite é dado por nosso conhecimento e criatividade! O melhor de tudo nesse projeto é que seu software, hardware e documentação so abertos. O software é livre (GNU GPL2), o hardware é totalmente aberto, especificado (basta entrar no site e baixar os esquemas) e a documentação está disponível em Creative Commons3, os usuários podem colaborar (seja escrevendo documentação, seja traduzindo) através da wiki!



Referências:

  1. Site oficial Projeto Arduino
  2. Baixar apostila de Álvaro Justen
  3. Curso de programação básica para Arduíno

Modelos de Arduíno

  • Arduino UNO
  • Arduino Leonardo
  • Arduino Due
  • Arduino Esplora
  • Arduino Mega
  • Arduino Mega ADK
  • Arduino Ethernet
  • Arduino Mini
  • Arduino LilyPad
  • Arduino Micro
  • Arduino Nano
  • Arduino ProMini
  • Arduino Pro
  • Arduino Fio
Modelos.jpg

Quadro Comparativo

(arduino.org)

Quadro.jpg

Arduino UNO:

  • Microcontrolador: ATmega328
  • Tensão de operação: 5V
  • Tensão recomendada (entrada): 7-12V
  • Limite da tensão de entrada: 6-20V
  • Pinos digitais: 14 (seis pinos com saída PWM)
  • Entrada analógica: 6 pinos
  • Corrente contínua por pino de entrada e saída: 40 mA
  • Corrente para o pino de 3.3 V: 50 mA
  • Quantidade de memória FLASH: 32 KB (ATmega328) onde 0.5 KB usado para o bootloader
  • Quantidade de memória SRAM: 2 KB (ATmega328)
  • Quantidade de memória EEPROM: 1 KB (ATmega328)
  • Velocidade de clock: 16 MHz

Alimentação

  • O Arduino UNO pode ser alimentado pela porta USB ou por uma fonte externa DC.
  • A recomendação é que a fonte externa seja de 7 V a 12 V e pode ser ligada diretamente no conector de fonte ou nos pinos Vin e Gnd.

IDE Arduino

O ambiente de desenvolvimento do Arduino (IDE) é gratuito e pode ser baixado no seguinte endereço: [http:www.arduino.cc. ]

Arduino.jpg

Utiliza uma biblioteca de funções que simplifica a sua programação, por meio de uma sintaxe similar a das linguagens C e C++ (‘’Wiring’’).


As principais funcionalidades do IDE do Arduino são:

  • Escrever o código do programa
  • Salvar o código do programa
  • Compilar um programa
  • Transportar o código compilado para a placa do Arduino (menu ‘’’Upload’’’)

Permitir comunicação serial com o PC

Funções

As duas principais funções de um programa desenvolvido para o Arduino são:

  • setup(): onde devem ser definidas algumas configurações iniciais do programa. Executa uma única vez, no início.
  • loop(): função principal do programa. Fica executando indefinidamente.

Todo programa para o Arduino deve ter estas duas funções.

Outras funções

Digital I/O pinMode() digitalWrite() digitalRead() _ Analógico I/O analogReference() analogRead() analogWrite() - PWM _ Avançado I/O tone() noTone() shiftOut() pulseIn() _ Tempo millis() micros() delay() delayMicroseconds() _ Matemática min() max() abs() constrain() map() pow() ***só do C/C++ sqrt() ***só do C/C++ _ Trigonométrica sin() ***só do C/C++ cos() ***só do C/C++ tan() ***só do C/C++ _ N_umeros aleatórios randomSeed() random() _ bits e Bytes lowByte() highByte() bitRead() bitWrite() bitSet() bitClear() bit() _ Interrupç~oes externas attachInterrupt() detachInterrupt() _ Interrupç~oes interrupts() noInterrupts() _ Comunicação Serial