SlideShare uma empresa Scribd logo
1 de 13
Programação do Arduino
Leonardo
Usando bibliotecas USB
Tyler James Dennis
2013/04/05
Tyler Dennis
ECE 480 Equipe 5
O seguinte aplication note dá ao leitor o
conhecimento básico necessário para começar a
programar um Arduino Leonardo usando
bibliotecas USB. O documento descreve as etapas
para configurar o Arduino Leonardo, descreve as
funções da biblioteca USB, e conduz o leitor através
de um programa de exemplo.
Índice
Introdução ao Arduino..................................... 1
Arduino Leonardo .......... ................................. 1
Introdução ao Arduino Leonardo ....... .............. 1
Funções da biblioteca USB ................................ 3
Mouse ................................... .......................... 3
Teclado ................................................ ........... 4
Exemplo de código .................. ......................... 5
Resumo ........................................................... 7
Referências ............ .......................................... 8
Introdução ao Arduino
Um Arduino é um microcontrolador. A linha de
microcontroladores Arduino foi projetada
especificamente para simplificar a criação de
protótipos eletrônicos para amadores e pequenos
projetos de design. O Arduino é programado
utilizando a linguagem de programação Arduino,
que se baseia na linguagem de programação de
fiação. O software Arduino utiliza um ambiente de
desenvolvimento que se baseia na IDE existente,
Processamento.
Arduino Leonardo
Figura 1. O Arduino Leonardo
Ao contrário das outras placas Arduino, o Arduino
Leonardo tem um único microcontrolador para a
conexão USB e o usuário que cria programas
Arduino. Isto dá ao utilizador uma maior
flexibilidade quando se trata de reconhecimento do
dispositivo por um computador. O Leonardo
também oferece mais funcionalidade como um
dispositivo de entrada do que outros modelos
Arduino. Isto é devido ao facto de que ele é
reconhecido como um dispositivo de entrada na
conexão ao computador através de uma porta USB.
O Leonardo tem 20 pinos deentrada / saída, que
dão ao usuário a abundância de entradas e saídas
para o máximode funcionalidade. A placa também
foi construída com uma porta de alimentação jack
micro-USB para suportar o uso de uma fonte de
alimentação externa.
Introdução ao Arduino Leonardo
A fim de começar a usar o Leonardo, o usuário
precisa dos seguintes itens:
1. Computador Pessoal
2. Cabo Micro-USB
1) Baixe o Arduino IDE
O Arduino IDE é o ambiente em que o Arduino
Leonardo pode ser programado. Este software
é uma ferramenta necessária para o
desenvolvedor. O Arduino IDE pode ser
baixado do site do Arduino. No link fornecido
abaixo:
http://arduino.cc/en/Main/Software
2) Conecte a placa ao computador usando um
cabo micro-USB. Uma vez conectado, o
Arduino Leonardo começará a receber energia
através da conexão USB. O LED verde com a
indicação "ON" se acenderá.
3) Faça o download dos drivers Arduino
Os drivers mais recentes Arduino podem ser
localizados e transferidos através do
gerenciador de dispositivos do Windows. Basta
clicar no dispositivo Arduino Leonardo na lista
e escolha Atualizar driver.
O usuário precisa garantir que os drivers serão
baixados na a pasta apropriada. A Figura 2
mostra o diretório apropriado:
4)Escolha o dispositivo preferido
A fim de incluir as bibliotecas necessárias, o
usuário precisa optar por usar o Arduino
Leonardo através do Arduino IDE. A fim de fazer
isso o usuário precisa executar o seguinte dentro
do IDE:
Selecione Ferramentas -> Board -> Arduino Leonardo
Uma vez que os passos 1 a 4 foram concluídos,
o Arduino Leonardo pode ser programado.
Funções da biblioteca USB
O Arduino Leonardo é uma das poucas placas
Arduino que podem ser programados usando
bibliotecas USB. Essas bibliotecas permitem
que o usuário facilmente emular um teclado ou
mouse usando o Arduino Leonardo. As
bibliotecas USB são automaticamente incluídas
no programa quando o usuário optar por usar
o Arduino Leonardo através do Arduino IDE.
Alguns dos comandos básicos do teclado e do
mouse emulação são explicados abaixo.
mouse
Mouse.begin() e Mouse.end ()
A função begin () inicia a biblioteca mouse.
Isso permite que o Leonardo possa começar a
funcionar como um mouse. Por outro lado, a
função end () interrompe a emulação.
Mouse.click ()
A função click () emula um clique do mouse. Os
padrões de função do botão esquerdo do
mouse em um clique. No entanto, a função
click () pode aceitar três parâmetros
diferentes:
 MOUSE LEFT - Clique no botão esquerdo do mouse
 MOUSE_RIGHT - Clique no botão direito do mouse
 MOUSE MIDDLE - Clique no botão do meio do mouse
Mouse.move()
A função move () permite que o Leonardo
controlar a localização do cursor do mouse na
tela. A função move () requer três argumentos
inteiros:
 xVal - Define a quantidade o cursor se move no eixo-x
 yVal - Define o valor que o cursor se move no eixo-y
 wheel - Define a quantidade dos pontos da roda
de rolagem
Mouse.press () e Mouse.release()
A função press () opera de forma semelhante à
função click (). No entanto, a função press ()
mantém o botão escolhido até que seja
liberado manualmente com a função de
release (). As funções press () e release()valem
para os botões padrão tanto para o botão
esquerdo do mouse, mas pode aceitar os
mesmos argumentos que a função click ().
Mouse.isPressed()
A função IsPressed() retorna um valor
booleano (true ou false) se uma determinada
tecla é pressionada. Esta função também tem
como padrão o botão esquerdo do mouse, e
pode aceitar os mesmos argumentos que as
funções press (), release () e click em ().
teclado
Keyboard.begin() e Keyboard.end()
As funções begin () e end () da biblioteca teclado
funcionam da mesma forma como os seus
homólogos da biblioteca mouse.
Keyboard.press () e Keyboard.release ()
As funções press () e release () também funcionam
de forma semelhante às suas respectivas funções
da biblioteca mouse. No entanto, o usuário pode
especificar qual tecla é pressionada ou solta por
meio de um argumento de caráter.
Keyboard.print()
A função print () é usado para enviar as teclas
digitadas no computador. Como parâmetros, a
função aceita caracteres. Os caracteres podem ser
transmitidos, quer um de cada vez ou como nos
strings.
Keyboard.println()
A função println () opera de forma semelhante à
função print. No entanto, a função println () sempre
realiza um retorno de carro e inicia uma nova linha
no final dos caracteres impressos.
Keyboard.releaseAll ()
A função releaseAll()opera de forma similar a
função release (), mas ela libera todas as teclas
pressionadas ao mesmotempo.
Keyboard.write ()
A função write () permite ao usuário enviar
qualquer combinação de teclas para o computador,
incluindo asteclas não-caráter . Exemplos de
combinações de teclas que não são caracteres
incluem o backspace, control, alt, e teclas de
função. A função write () pode aceitar inteiro
(ASCII), caráter, hex, e argumentos binários.
exemplo de código
Esta seção irá mostrar e explicar (usando
comentários) um exemplo de programa que
apresenta o uso das bibliotecas de teclado e mouse.
// Inicializaos pinos analógicas no Arduino e atribui cada um para uma
teclado teclado correspondente
constint upButton = 2;
constint downButton = 3;
const int leftButton = 4;
constint rightButton = 5;
constint mouseButton = 6;
void setup()
{
// Designaos pinos para ser entradas analógicas
pinMode(upButton, INPUT);
pinMode(downButton, INPUT);
pinMode(leftButton, INPUT);
pinMode(rightButton, INPUT);
pinMode(mouseButton, INPUT);
Serial.begin(9600);
// Inicializaas bibliotecas de mouse e teclado
Mouse.begin();
Keyboard.begin();
}
void loop()
{
// Instrui o Arduino para usar a porta serial para o controle do mouse
if (Serial.available() > 0)
{
char inChar = Serial.read();
switch (inChar)
{
// Mover o cursor com base nos dados armazenados na variável
inChar
case 'u':
Mouse.move(0, -40);
break;
case 'd':
Mouse.move(0, 40);
break;
case 'l': Mouse.move(-40, 0);
break;
case 'r': Mouse.move(40, 0);
break;
case 'm': Mouse.click(MOUSE_LEFT);
break;
}
}
// Dados do Teclado são emulados quando o pino de entrada analógica
escolhido lê valor alto.
if (digitalRead(upButton) == HIGH)
{
Keyboard.write('u');
}
if (digitalRead(downButton) == HIGH)
{
Keyboard.write('d');
}
if (digitalRead(leftButton) == HIGH)
{
Keyboard.write('l');
}
if (digitalRead(rightButton) == HIGH)
{
Keyboard.write('r');
}
if (digitalRead(mouseButton) == HIGH)
{
Keyboard.write('m');
}
}
Em resumo, este programa simulauma tecla e
move o cursor do mouse simultaneamentequando
uma voltagem diferente de zero é detectada em
algum dos pinos de entrada analógica declarados.
Se interruptores momentâneos estão ligados para
controlar a tensão destes pinos, em seguida, os
switches podem acionar as funções de teclado e
mouse. As aplicações práticas desse programa são
praticamente inexistentes, mas mostra como ambas
as bibliotecas funcionam.
resumo
O Arduino Leonardo oferece muitas ferramentas
que agilizam a emulação de dispositivos de entrada.
As bibliotecas de teclado e mouse e construído em
porta micro-USB estão no cerne desta conveniência.
Há também bibliotecas criadas pelo usuário que
podem ser baixadas para melhorar o desempenho
do Leonardo ainda mais. A simplicidade e poder do
Leonardo permitem grandes oportunidades na
criação de dispositivos de entrada.

Mais conteúdo relacionado

Mais procurados

Gas turbine technology
Gas turbine technologyGas turbine technology
Gas turbine technology
Ashish kumar
 

Mais procurados (20)

Observability of InfluxDB IOx: Tracing, Metrics and System Tables
Observability of InfluxDB IOx: Tracing, Metrics and System TablesObservability of InfluxDB IOx: Tracing, Metrics and System Tables
Observability of InfluxDB IOx: Tracing, Metrics and System Tables
 
Prometheus Monitoring Mixins
Prometheus Monitoring MixinsPrometheus Monitoring Mixins
Prometheus Monitoring Mixins
 
Understanding DPDK algorithmics
Understanding DPDK algorithmicsUnderstanding DPDK algorithmics
Understanding DPDK algorithmics
 
Dual fuel System
Dual fuel SystemDual fuel System
Dual fuel System
 
Using Optimizer Hints to Improve MySQL Query Performance
Using Optimizer Hints to Improve MySQL Query PerformanceUsing Optimizer Hints to Improve MySQL Query Performance
Using Optimizer Hints to Improve MySQL Query Performance
 
Gas turbine technology
Gas turbine technologyGas turbine technology
Gas turbine technology
 
eBPF Trace from Kernel to Userspace
eBPF Trace from Kernel to UserspaceeBPF Trace from Kernel to Userspace
eBPF Trace from Kernel to Userspace
 
Advanced MySQL Query Tuning
Advanced MySQL Query TuningAdvanced MySQL Query Tuning
Advanced MySQL Query Tuning
 
SUSE shim and things related to it
SUSE shim and things related to itSUSE shim and things related to it
SUSE shim and things related to it
 
MySQL 5.5 Guide to InnoDB Status
MySQL 5.5 Guide to InnoDB StatusMySQL 5.5 Guide to InnoDB Status
MySQL 5.5 Guide to InnoDB Status
 
Query Optimization with MySQL 5.6: Old and New Tricks - Percona Live London 2013
Query Optimization with MySQL 5.6: Old and New Tricks - Percona Live London 2013Query Optimization with MySQL 5.6: Old and New Tricks - Percona Live London 2013
Query Optimization with MySQL 5.6: Old and New Tricks - Percona Live London 2013
 
Major project. simulation of turbocharger
Major project. simulation of turbochargerMajor project. simulation of turbocharger
Major project. simulation of turbocharger
 
簡介 Linux 的 Network Namespace 功能
簡介 Linux 的 Network Namespace 功能簡介 Linux 的 Network Namespace 功能
簡介 Linux 的 Network Namespace 功能
 
Query Optimization with MySQL 8.0 and MariaDB 10.3: The Basics
Query Optimization with MySQL 8.0 and MariaDB 10.3: The BasicsQuery Optimization with MySQL 8.0 and MariaDB 10.3: The Basics
Query Optimization with MySQL 8.0 and MariaDB 10.3: The Basics
 
Qemu JIT Code Generator and System Emulation
Qemu JIT Code Generator and System EmulationQemu JIT Code Generator and System Emulation
Qemu JIT Code Generator and System Emulation
 
XPDS14 - Intel(r) Virtualization Technology for Directed I/O (VT-d) Posted In...
XPDS14 - Intel(r) Virtualization Technology for Directed I/O (VT-d) Posted In...XPDS14 - Intel(r) Virtualization Technology for Directed I/O (VT-d) Posted In...
XPDS14 - Intel(r) Virtualization Technology for Directed I/O (VT-d) Posted In...
 
How to Analyze and Tune MySQL Queries for Better Performance
How to Analyze and Tune MySQL Queries for Better PerformanceHow to Analyze and Tune MySQL Queries for Better Performance
How to Analyze and Tune MySQL Queries for Better Performance
 
Linux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old SecretsLinux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old Secrets
 
Introduction to SLURM
 Introduction to SLURM Introduction to SLURM
Introduction to SLURM
 
QEMU - Binary Translation
QEMU - Binary Translation QEMU - Binary Translation
QEMU - Binary Translation
 

Semelhante a Programando o arduino leonardo

Ufes erus minicurso arduino
Ufes erus minicurso arduinoUfes erus minicurso arduino
Ufes erus minicurso arduino
tamarasalvatori
 
Arduino - aula Teste - Ilha
Arduino - aula Teste - IlhaArduino - aula Teste - Ilha
Arduino - aula Teste - Ilha
Luckas Judocka
 
Cartilhado arduino ed10
Cartilhado arduino ed10Cartilhado arduino ed10
Cartilhado arduino ed10
SEDUCCE
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
elliando dias
 

Semelhante a Programando o arduino leonardo (20)

Erus minicurso arduino
Erus minicurso arduinoErus minicurso arduino
Erus minicurso arduino
 
Ufes erus minicurso arduino
Ufes erus minicurso arduinoUfes erus minicurso arduino
Ufes erus minicurso arduino
 
Workshop iniciação à robótica - Farrusco
Workshop iniciação à robótica - FarruscoWorkshop iniciação à robótica - Farrusco
Workshop iniciação à robótica - Farrusco
 
Introdução a plataforma arduino
Introdução a plataforma arduinoIntrodução a plataforma arduino
Introdução a plataforma arduino
 
Introdução ao arduino palestra
Introdução ao arduino palestraIntrodução ao arduino palestra
Introdução ao arduino palestra
 
ARDUINO PRIMEIROS PASSOS
ARDUINO  PRIMEIROS PASSOSARDUINO  PRIMEIROS PASSOS
ARDUINO PRIMEIROS PASSOS
 
Arduino Básico
Arduino BásicoArduino Básico
Arduino Básico
 
Aula básica Arduino
Aula básica Arduino Aula básica Arduino
Aula básica Arduino
 
Cartilhado arduino ed1
Cartilhado arduino ed1Cartilhado arduino ed1
Cartilhado arduino ed1
 
Arduino - aula Teste - Ilha
Arduino - aula Teste - IlhaArduino - aula Teste - Ilha
Arduino - aula Teste - Ilha
 
Cartilhado arduino ed1 - cópia
Cartilhado arduino ed1 - cópiaCartilhado arduino ed1 - cópia
Cartilhado arduino ed1 - cópia
 
Cartilhado arduino ed1
Cartilhado arduino ed1Cartilhado arduino ed1
Cartilhado arduino ed1
 
Cartilhado arduino ed1
Cartilhado arduino ed1Cartilhado arduino ed1
Cartilhado arduino ed1
 
Cartilhado arduino ed10
Cartilhado arduino ed10Cartilhado arduino ed10
Cartilhado arduino ed10
 
CartilhadoArduino_ed9.pdf
CartilhadoArduino_ed9.pdfCartilhadoArduino_ed9.pdf
CartilhadoArduino_ed9.pdf
 
Robô seguidor de linha
Robô seguidor de linhaRobô seguidor de linha
Robô seguidor de linha
 
Oficina Arduino
Oficina ArduinoOficina Arduino
Oficina Arduino
 
Introdução a arduino, oficina para iniciantes
Introdução a arduino, oficina para iniciantesIntrodução a arduino, oficina para iniciantes
Introdução a arduino, oficina para iniciantes
 
Como criar o seu próprio joystick!
Como criar o seu próprio joystick!Como criar o seu próprio joystick!
Como criar o seu próprio joystick!
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 

Programando o arduino leonardo

  • 1. Programação do Arduino Leonardo Usando bibliotecas USB Tyler James Dennis 2013/04/05 Tyler Dennis ECE 480 Equipe 5 O seguinte aplication note dá ao leitor o conhecimento básico necessário para começar a programar um Arduino Leonardo usando bibliotecas USB. O documento descreve as etapas para configurar o Arduino Leonardo, descreve as funções da biblioteca USB, e conduz o leitor através de um programa de exemplo.
  • 2. Índice Introdução ao Arduino..................................... 1 Arduino Leonardo .......... ................................. 1 Introdução ao Arduino Leonardo ....... .............. 1 Funções da biblioteca USB ................................ 3 Mouse ................................... .......................... 3 Teclado ................................................ ........... 4 Exemplo de código .................. ......................... 5 Resumo ........................................................... 7 Referências ............ .......................................... 8
  • 3. Introdução ao Arduino Um Arduino é um microcontrolador. A linha de microcontroladores Arduino foi projetada especificamente para simplificar a criação de protótipos eletrônicos para amadores e pequenos projetos de design. O Arduino é programado utilizando a linguagem de programação Arduino, que se baseia na linguagem de programação de fiação. O software Arduino utiliza um ambiente de desenvolvimento que se baseia na IDE existente, Processamento. Arduino Leonardo Figura 1. O Arduino Leonardo Ao contrário das outras placas Arduino, o Arduino Leonardo tem um único microcontrolador para a conexão USB e o usuário que cria programas
  • 4. Arduino. Isto dá ao utilizador uma maior flexibilidade quando se trata de reconhecimento do dispositivo por um computador. O Leonardo também oferece mais funcionalidade como um dispositivo de entrada do que outros modelos Arduino. Isto é devido ao facto de que ele é reconhecido como um dispositivo de entrada na conexão ao computador através de uma porta USB. O Leonardo tem 20 pinos deentrada / saída, que dão ao usuário a abundância de entradas e saídas para o máximode funcionalidade. A placa também foi construída com uma porta de alimentação jack micro-USB para suportar o uso de uma fonte de alimentação externa. Introdução ao Arduino Leonardo A fim de começar a usar o Leonardo, o usuário precisa dos seguintes itens: 1. Computador Pessoal 2. Cabo Micro-USB 1) Baixe o Arduino IDE O Arduino IDE é o ambiente em que o Arduino Leonardo pode ser programado. Este software é uma ferramenta necessária para o
  • 5. desenvolvedor. O Arduino IDE pode ser baixado do site do Arduino. No link fornecido abaixo: http://arduino.cc/en/Main/Software 2) Conecte a placa ao computador usando um cabo micro-USB. Uma vez conectado, o Arduino Leonardo começará a receber energia através da conexão USB. O LED verde com a indicação "ON" se acenderá. 3) Faça o download dos drivers Arduino Os drivers mais recentes Arduino podem ser localizados e transferidos através do gerenciador de dispositivos do Windows. Basta clicar no dispositivo Arduino Leonardo na lista e escolha Atualizar driver. O usuário precisa garantir que os drivers serão baixados na a pasta apropriada. A Figura 2
  • 6. mostra o diretório apropriado: 4)Escolha o dispositivo preferido A fim de incluir as bibliotecas necessárias, o usuário precisa optar por usar o Arduino Leonardo através do Arduino IDE. A fim de fazer isso o usuário precisa executar o seguinte dentro do IDE: Selecione Ferramentas -> Board -> Arduino Leonardo Uma vez que os passos 1 a 4 foram concluídos, o Arduino Leonardo pode ser programado.
  • 7. Funções da biblioteca USB O Arduino Leonardo é uma das poucas placas Arduino que podem ser programados usando bibliotecas USB. Essas bibliotecas permitem que o usuário facilmente emular um teclado ou mouse usando o Arduino Leonardo. As bibliotecas USB são automaticamente incluídas no programa quando o usuário optar por usar o Arduino Leonardo através do Arduino IDE. Alguns dos comandos básicos do teclado e do mouse emulação são explicados abaixo. mouse Mouse.begin() e Mouse.end () A função begin () inicia a biblioteca mouse. Isso permite que o Leonardo possa começar a funcionar como um mouse. Por outro lado, a função end () interrompe a emulação. Mouse.click () A função click () emula um clique do mouse. Os padrões de função do botão esquerdo do mouse em um clique. No entanto, a função click () pode aceitar três parâmetros diferentes:
  • 8.  MOUSE LEFT - Clique no botão esquerdo do mouse  MOUSE_RIGHT - Clique no botão direito do mouse  MOUSE MIDDLE - Clique no botão do meio do mouse Mouse.move() A função move () permite que o Leonardo controlar a localização do cursor do mouse na tela. A função move () requer três argumentos inteiros:  xVal - Define a quantidade o cursor se move no eixo-x  yVal - Define o valor que o cursor se move no eixo-y  wheel - Define a quantidade dos pontos da roda de rolagem Mouse.press () e Mouse.release() A função press () opera de forma semelhante à função click (). No entanto, a função press () mantém o botão escolhido até que seja liberado manualmente com a função de release (). As funções press () e release()valem para os botões padrão tanto para o botão esquerdo do mouse, mas pode aceitar os mesmos argumentos que a função click (). Mouse.isPressed() A função IsPressed() retorna um valor
  • 9. booleano (true ou false) se uma determinada tecla é pressionada. Esta função também tem como padrão o botão esquerdo do mouse, e pode aceitar os mesmos argumentos que as funções press (), release () e click em (). teclado Keyboard.begin() e Keyboard.end() As funções begin () e end () da biblioteca teclado funcionam da mesma forma como os seus homólogos da biblioteca mouse. Keyboard.press () e Keyboard.release () As funções press () e release () também funcionam de forma semelhante às suas respectivas funções da biblioteca mouse. No entanto, o usuário pode especificar qual tecla é pressionada ou solta por meio de um argumento de caráter. Keyboard.print() A função print () é usado para enviar as teclas digitadas no computador. Como parâmetros, a função aceita caracteres. Os caracteres podem ser transmitidos, quer um de cada vez ou como nos strings.
  • 10. Keyboard.println() A função println () opera de forma semelhante à função print. No entanto, a função println () sempre realiza um retorno de carro e inicia uma nova linha no final dos caracteres impressos. Keyboard.releaseAll () A função releaseAll()opera de forma similar a função release (), mas ela libera todas as teclas pressionadas ao mesmotempo. Keyboard.write () A função write () permite ao usuário enviar qualquer combinação de teclas para o computador, incluindo asteclas não-caráter . Exemplos de combinações de teclas que não são caracteres incluem o backspace, control, alt, e teclas de função. A função write () pode aceitar inteiro (ASCII), caráter, hex, e argumentos binários. exemplo de código Esta seção irá mostrar e explicar (usando comentários) um exemplo de programa que
  • 11. apresenta o uso das bibliotecas de teclado e mouse. // Inicializaos pinos analógicas no Arduino e atribui cada um para uma teclado teclado correspondente constint upButton = 2; constint downButton = 3; const int leftButton = 4; constint rightButton = 5; constint mouseButton = 6; void setup() { // Designaos pinos para ser entradas analógicas pinMode(upButton, INPUT); pinMode(downButton, INPUT); pinMode(leftButton, INPUT); pinMode(rightButton, INPUT); pinMode(mouseButton, INPUT); Serial.begin(9600); // Inicializaas bibliotecas de mouse e teclado Mouse.begin(); Keyboard.begin(); } void loop() { // Instrui o Arduino para usar a porta serial para o controle do mouse if (Serial.available() > 0) { char inChar = Serial.read(); switch (inChar)
  • 12. { // Mover o cursor com base nos dados armazenados na variável inChar case 'u': Mouse.move(0, -40); break; case 'd': Mouse.move(0, 40); break; case 'l': Mouse.move(-40, 0); break; case 'r': Mouse.move(40, 0); break; case 'm': Mouse.click(MOUSE_LEFT); break; } } // Dados do Teclado são emulados quando o pino de entrada analógica escolhido lê valor alto. if (digitalRead(upButton) == HIGH) { Keyboard.write('u'); } if (digitalRead(downButton) == HIGH) { Keyboard.write('d'); } if (digitalRead(leftButton) == HIGH) { Keyboard.write('l'); } if (digitalRead(rightButton) == HIGH) { Keyboard.write('r'); } if (digitalRead(mouseButton) == HIGH)
  • 13. { Keyboard.write('m'); } } Em resumo, este programa simulauma tecla e move o cursor do mouse simultaneamentequando uma voltagem diferente de zero é detectada em algum dos pinos de entrada analógica declarados. Se interruptores momentâneos estão ligados para controlar a tensão destes pinos, em seguida, os switches podem acionar as funções de teclado e mouse. As aplicações práticas desse programa são praticamente inexistentes, mas mostra como ambas as bibliotecas funcionam. resumo O Arduino Leonardo oferece muitas ferramentas que agilizam a emulação de dispositivos de entrada. As bibliotecas de teclado e mouse e construído em porta micro-USB estão no cerne desta conveniência. Há também bibliotecas criadas pelo usuário que podem ser baixadas para melhorar o desempenho do Leonardo ainda mais. A simplicidade e poder do Leonardo permitem grandes oportunidades na criação de dispositivos de entrada.