Pesquisar no site

Contactos

www.cursopraticoarduino.pt

miguel-vieira97@hotmail.com

Arduino Leonardo

O Arduino Leonardo é uma placa de microcontrolador baseado no ATmega32u4 ( folha de dados ). Ele tem 20 pinos digitais de entrada / saída (dos quais 7 podem ser usados ​​como saídas PWM e 12 entradas como analógicas), a 16 MHzcristal oscilador, uma conexão micro USB, um fone de poder, um cabeçalho ICSP e um botão de reset. Ele contém tudo o necessário para apoiar o microcontrolador; basta conectá-lo a um computador com um cabo USB ou ligá-lo com um adaptador AC-CC ou bateria para começar.

O Leonardo difere de todas as placas precedentes em que o ATmega32u4 construiu-em comunicação USB, eliminando a necessidade de um processador secundário. Isso permite que o Leonardo para aparecer para um computador conectado como um rato e teclado, além de um (CDC) porta serial / COM virtual. Ele também tem outras implicações para o comportamento do conselho; estas são detalhadas na página de Introdução .

 

Inspire-se
Descubra alguns projectos Arduino Leonardo destaque do Arduino Projeto Hub , a nossa plataforma tutorial:
   

 

Resumo

Microcontrolador ATmega32u4
Tensão operacional 5V
Tensão de entrada (recomendado) 7-12V
Tensão de entrada (limites) 6-20V
Digital pinos I / O 20
Canais PWM 7
Canais de entrada analógica 12
Corrente DC por I / O Pin 40 mA
Corrente DC 3.3V para Pin 50 mA
Memória flash 32 KB ( ATmega32u4 ), dos quais 4 KB utilizado por bootloader
SRAM 2,5 kb ( ATmega32u4 )
EEPROM 1 KB ( ATmega32u4 )
Velocidade do relógio 16 MHz
Comprimento 68,6 mm
Largura 53,3 mm
Peso 20g

Esquemática e Referência projeto

Arquivos EAGLE: arduino-leonardo-reference-design.zip

Diagrama: arduino-leonardo-esquemática-rev3b.pdf

Poder

O Arduino Leonardo pode ser alimentado através da ligação USB micro ou com uma fonte de alimentação externa. A fonte de alimentação é selecionada automaticamente.

(Não-USB) de energia externa pode vir com um adaptador AC-CC (parede-verruga) ou a bateria. O adaptador pode ser ligado, ligando um plug 2,1 milímetros de centro-positivo à tomada de alimentação do tabuleiro. Leads de uma bateria podem ser inseridos nas GND e Vin cabeçalhos dos pinos do conector POWER.

A placa pode operar com uma fonte externa de 6 a 20 volts. Se fornecido com menos de 7V, no entanto, o pino 5V pode fornecer menos de cinco volts e do conselho pode ser instável. Se usar mais de 12V, o regulador de tensão pode superaquecer e danificar a placa. O intervalo recomendado é de 7 a 12 volts.

Os pinos de energia são os seguintes:

  • VIN. A tensão de entrada para a placa Arduino quando ele está usando uma fonte de alimentação externa (por oposição aos 5 volts a partir da conexão USB ou outra fonte de energia regulada). Você pode fornecer tensão por este pino, ou, se o fornecimento de tensão através da tomada de energia, acessá-lo através deste pino.
  • 5V. A fonte de alimentação regulada usada para alimentar o microcontrolador e outros componentes na placa. Isso pode vir tanto de VIN através de um regulador on-board, ou ser fornecida por USB ou de outra fonte de 5V regulado.
  • 3V3. A alimentação de 3,3 volt gerado pelo regulador on-board. Tração máxima atual é 50 mA.
  • GND. Pinos de terra.
  • IOREF. A tensão em que os pinos I / O do conselho estão operando (ie VCC para a placa). Este é 5V no Leonardo.

Memória

ATmega32u4 tem 32 KB (com 4 KB utilizado para o bootloader). Ele também tem 2,5 kb de SRAM e 1 KB de memória EEPROM (o qual pode ser lido e escrito com a biblioteca EEPROM ).

Entrada e saída

Cada um dos 20 E / S digitais pinos no Leonardo pode ser usado como uma entrada ou saída, usando pinMode () ,digitalWrite () , e digitalRead () funções. Eles operam a 5 volts. Cada pino pode fornecer ou receber um máximo de 40 mA e tem um resistor pull-up interno (desconectado por padrão) de 20-50 kOhms. Além disso, alguns pinos têm funções especializadas:

  • Serial: 0 (RX) e 1 (TX). Utiliza-se para recepção (RX) e transmitir os dados em série (TX) usando o TTL ATmega32U4capacidade de série do hardware. Note-se que no Leonardo, o Serial classe refere-se USB de comunicação (CDC);para série TTL nos pinos 0 e 1, utilize o Serial1 classe.
  • TWI: 2 (SDA) e 3 (SCL). Comunicação TWI Suporte usando a biblioteca Wire .
  • Interrupções Externo:. 3 (interromper 0), 2 (interromper 1), 0 (interrupção 2), 1 (interromper 3) e 7 (interromper 4)Estes pinos podem ser configurados para disparar uma interrupção por um valor baixo, uma subida ou borda de descida ou uma mudança de valor. Veja a attachInterrupt () função para obter detalhes.
  • PWM: 3, 5, 6, 9, 10, 11, e 13. Fornecer saída PWM de 8 bits com a analogWrite () função.
  • SPI:. No cabeçalho ICSP Estes pinos suportam comunicação SPI utilizando a biblioteca de SPI . Note-se que os pinos SPI não estão ligados a qualquer um dos pinos de E / S digital como eles estão no Uno, eles só estão disponíveis no conector ICSP. Isto significa que se você tem um escudo que usa SPI, mas não tem um conector ICSP 6 pinos que se conecta ao cabeçalho ICSP de 6 pinos do Leonardo, o escudo não vai funcionar.
  • LED: 13. Há um built-in LED conectado ao pino digital 13. Quando o pino é de alto valor, o LED está ligado, quando o pino é baixo, ele está fora.
  • Entradas analógicas:. A0-A5, A6 - A11 (nos pinos digitais 4, 6, 8, 9, 10, e 12) O Leonardo tem 12 entradas analógicas, rotulados A0 através A11, todos os quais também podem ser usados ​​como i digitais / o. Pinos A0-A5 aparecem nos mesmos locais como no Uno; Entradas A6-A11 estão em I / O digital pinos 4, 6, 8, 9, 10 e 12, respectivamente. Cada entrada analógica fornecer 10 bits de resolução (ie 1024 valores diferentes). Por padrão, a medida de entradas analógicas de a 5 volts, embora seja possível mudar a extremidade superior da sua gama usando o pino AREF eaanalogReference function ().

Há um par de outros pinos na placa:

  • AREF. Tensão de referência para as entradas analógicas. Usado com analogReference ().
  • Repor. Traga esta linha baixa para repor o microcontrolador. Tipicamente usado para adicionar um botão de reposição para shields que bloqueiam o que há na placa.

Veja também o mapeamento entre os pinos do Arduino e as portas ATmega32u4 .

Comunicação

O Leonardo tem uma série de facilidades para se comunicar com um computador, outro Arduino ou outros microcontroladores. ATmega32U4 fornece UART TTL (5V) de comunicação serial, que está disponível nos pinos digitais 0 (RX) e 1 (TX). O 32U4 também permite (CDC) de comunicação serial através de USB e aparece como uma porta virtual para o software no computador. O chip também atua como um dispositivo de velocidade total USB 2.0, usando drivers USB COM padrão. No Windows, um arquivo .inf é necessária . O software Arduino inclui um monitor serial que permite que dados simples de texto sejam enviadas de e para a placa Arduino. Os RX e TX LEDs na placa pisca quando os dados estão sendo transmitidos através da ligação USB ao computador (mas não para comunicação serial nos pinos 0 e 1).

biblioteca SoftwareSerial permite comunicação serial em qualquer um dos pinos digitais do Leonardo.

ATmega32U4 também suporta I2C (TWI) e comunicação SPI. O software Arduino inclui uma biblioteca Wire para simplificar o uso do I2C bus; ver a documentação para mais detalhes. Para a comunicação SPI, use a biblioteca SPI .

O Leonardo aparece como um teclado e mouse genérico, e pode ser programado para controlar esses dispositivos de entrada, utilizando os teclado e mouse classes.

Programação

O Leonardo pode ser programado com o software Arduino ( de download ). Selecione "Arduino Leonardo da Tools> Board menu (de acordo com o microcontrolador em sua placa). Para mais detalhes, consulte a referência e tutoriais .

Os ATmega32U4 no Arduino Leonardo vem preburned com um bootloader que permite o envio de novos códigos sem o uso de um programador de hardware externo. Comunica-se usando o AVR109 protocolo.

Você também pode ignorar o bootloader e programar o microcontrolador através do (Programação Serial In-Circuit) ICSP cabeçalho usando Arduino ISP ou similar; veja estas instruções para obter detalhes.

Automática (Software) Reset e Bootloader Iniciação

Em vez de exigir uma imprensa física do botão de reset antes de um upload, o Leonardo foi concebido de uma forma que permite que ele seja reposto por software rodando em um computador conectado. A reposição é acionado quando (CDC) porta virtual de série / COM do Leonardo é aberta em 1200 de transmissão e, em seguida, fechado. Quando isso acontece, o processador irá repor, quebrando a conexão USB para o computador (o que significa que a porta serial / COM virtual irá desaparecer). Após a reinicialização do processador, o bootloader for iniciado, permanecendo ativa por cerca de 8 segundos. O bootloader pode também ser iniciada pressionando o botão de reset no Leonardo. Note-se que quando a placa primeiros poderes, ele irá pular direto para o esboço do usuário, se presente, em vez de iniciar o bootloader.

Devido à forma como o Leonardo lida redefinir é melhor deixar o try software Arduino para iniciar a reposição antes de enviar, especialmente se você tem o hábito de pressionar o botão de reset antes de carregar em outras placas. Se o software não pode reiniciar a placa você sempre pode iniciar o bootloader pressionando o botão de reset na placa.

Proteção de sobrecorrente USB

O Leonardo tem uma POLYFUSE reajustável que protege portas USB do seu computador a partir de shorts e sobrecorrente. Embora a maioria dos computadores fornecem sua própria proteção interna, o fusível fornece uma camada extra de proteção. Se houver mais de 500 mA é aplicada à porta USB, o fusível romper automaticamente a conexão até a curto ou a sobrecarga é retirada.

Características físicas

O comprimento e a largura máximas do Leonardo PCB são 2,7 e 2,1 polegadas, respectivamente, com a tomada do conector USB e poder que se estende para além da dimensão ex. Quatro furos permitem que a placa para ser ligado a uma superfície ou caso. Note-se que a distância entre os pinos digitais 7 e 8 é de 160 mil (0,16 "), e não um múltiplo do espaçamento de 100 milésimos de polegada os outros pinos.