Controlador del ratón
Due tiene la capacidad de actuar como un
host
USB para periféricos como
ratones conectados al puerto serie USB. Este ejemplo demuestra el uso de la
biblioteca MouseController
Hardware Necesario
-
1 Placa Arduino Due
-
1 Ratón USB
Código
/*
Ejemplo de Mouse Controller
Muestra la salida de un ratón USB conectado ael puerto USB nativo en una placa Arduino Due.
creado 8 Octubre 2012
por Cristian Maglie
http://arduino.cc/en/Tutorial/MouseController
Este código es de dominio público.
*/
// Necesita la biblioteca de control del ratón
#include <MouseController.h>
// iniializa el Controlador USB
USBHost usb;
// Conecta el controlador del ratón a USB
MouseController mouse(usb);
// variables para los estados de los botones del ratón
boolean leftButton = false;
boolean middleButton = false;
boolean rightButton = false;
// Esta función intercepta los movimientos del ratón
void mouseMoved() {
Serial.print("Movimiento: ");
Serial.print(mouse.getXChange());
Serial.print(", ");
Serial.println(mouse.getYChange());
}
// Esta función intercepta los movimientos del ratón mientras hay un botón pulsado
Ejemplo de Mouse Controller
Muestra la salida de un ratón USB conectado ael puerto USB nativo en una placa Arduino Due.
creado 8 Octubre 2012
por Cristian Maglie
http://arduino.cc/en/Tutorial/MouseController
Este código es de dominio público.
*/
// Necesita la biblioteca de control del ratón
#include <MouseController.h>
// iniializa el Controlador USB
USBHost usb;
// Conecta el controlador del ratón a USB
MouseController mouse(usb);
// variables para los estados de los botones del ratón
boolean leftButton = false;
boolean middleButton = false;
boolean rightButton = false;
// Esta función intercepta los movimientos del ratón
void mouseMoved() {
Serial.print("Movimiento: ");
Serial.print(mouse.getXChange());
Serial.print(", ");
Serial.println(mouse.getYChange());
}
// Esta función intercepta los movimientos del ratón mientras hay un botón pulsado
void mouseDragged() {
Serial.print("ARRASTRE: ");
Serial.print(mouse.getXChange());
Serial.print(", ");
Serial.println(mouse.getYChange());
}
// Esta función intercepta el botón pulsado del ratón
void mousePressed() {
Serial.print("Pulsado: ");
if (mouse.getButton(LEFT_BUTTON)){
Serial.print("Izquierdo");
leftButton = true;
}
if (mouse.getButton(MIDDLE_BUTTON)){
Serial.print("Mesdio");
middleButton = true;
}
if (mouse.getButton(RIGHT_BUTTON)){
Serial.print("Derecho");
Serial.println();
rightButton = true;
}
}
// Esta función intercepta el botón soltado de ratón
void mouseReleased() {
Serial.print("Soltado: ");
if (!mouse.getButton(LEFT_BUTTON) && left==true) {
Serial.print("Izquierdo");
leftButton = false;
}
if (!mouse.getButton(MIDDLE_BUTTON) && middle==true) {
Serial.print("Medio");
middleButton = false;
}
if (!mouse.getButton(RIGHT_BUTTON) && right==true) {
Serial.print("Derecho");
rightButton = false;
}
Serial.println();
}
void setup()
{
Serial.begin(9600);
Serial.println("Programa iniciado");
delay(200);
}
void loop()
{
// Tareas USB
usb.Task();
}
Serial.print("ARRASTRE: ");
Serial.print(mouse.getXChange());
Serial.print(", ");
Serial.println(mouse.getYChange());
}
// Esta función intercepta el botón pulsado del ratón
void mousePressed() {
Serial.print("Pulsado: ");
if (mouse.getButton(LEFT_BUTTON)){
Serial.print("Izquierdo");
leftButton = true;
}
if (mouse.getButton(MIDDLE_BUTTON)){
Serial.print("Mesdio");
middleButton = true;
}
if (mouse.getButton(RIGHT_BUTTON)){
Serial.print("Derecho");
Serial.println();
rightButton = true;
}
}
// Esta función intercepta el botón soltado de ratón
void mouseReleased() {
Serial.print("Soltado: ");
if (!mouse.getButton(LEFT_BUTTON) && left==true) {
Serial.print("Izquierdo");
leftButton = false;
}
if (!mouse.getButton(MIDDLE_BUTTON) && middle==true) {
Serial.print("Medio");
middleButton = false;
}
if (!mouse.getButton(RIGHT_BUTTON) && right==true) {
Serial.print("Derecho");
rightButton = false;
}
Serial.println();
}
void setup()
{
Serial.begin(9600);
Serial.println("Programa iniciado");
delay(200);
}
void loop()
{
// Tareas USB
usb.Task();
}
No hay comentarios:
Publicar un comentario