AULA 1 - Microcontroladores - Técnico: mudanças entre as edições
imported>Fargoud |
imported>Fargoud |
||
| Linha 81: | Linha 81: | ||
[[imagem: quadro.jpg|center]] | [[imagem: quadro.jpg|center]] | ||
===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: arduino.cc. | |||
[[imagem: arduino.jpg|center]] | |||
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 | |||
Edição das 14h30min de 2 de outubro de 2015
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.
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:
- Site oficial Projeto Arduino
- Baixar apostila de Álvaro Justen
- 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
Quadro Comparativo
(arduino.org)
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: arduino.cc.
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




