Mouse.move()

Descripción

Mueve el cursor en un ordenador conectado. El movimiento en la pantalla es siempre relativo a la ubicación actual del cursor. Antes de utilizar Mouse.move() debe llamar a Mouse.begin()

ADVERTENCIA: Cuando se utiliza el comando Mouse.move(), el Arduino se hace cargo del ratón! Asegúrate de que tienes el control antes de utilizar el comando. Un botón para cambiar el estado de control del ratón es eficaz.

Sintaxis

Mouse.move(xVal, yPos, wheel);

Parámetros

  • xVal: cantidad que se mueve a lo largo del eje x - char con signoyVal: cantidad que se mueve a lo largo del eje y - char con signowheel: cantidad que se mueve con la rueda de desplazamiento - char con signo

Retornos

  • Ninguno

Ejemplo

const int xAxis = A1; // sensor analogico para el eje X const int yAxis = A2; // sensor analogico para el eje Y int range = 12; // rango de salida del movimiento X o Y int responseDelay = 2; // tiempo de respuesta del ratón en ms int threshold = range / 4; // umbral de reposo int center = range / 2; // valor de posición de reposo int minima[] = {1023, 1023}; // analogRead mínima actual para {x, y} int maxima[] = {0, 0}; // analogRead máxima actual para {x, y} int axis[] = {xAxis, yAxis}; // números de pines pata {x, y} int mouseReading[2]; // valores finales para el ratón {x, y} void setup() { Mouse.begin(); } void loop() { // read and scale the two axes: int xReading = readAxis(0); int yReading = readAxis(1); // move the mouse: Mouse.move(xReading, yReading, 0); delay(responseDelay); } /* lee un eje (0 o 1 para x o y) y escala el rango de entrada analógica en una gama de 0 a <rango> */ int readAxis(int axisNumber) { int distance = 0; // distancia del centro del rango de salida // lee la entrada analógica: int reading = analogRead(axis[axisNumber]); // de la lectura actual excede el máximo o el mínimo para este eje, // restablece el máximo o el mínimo if (reading < minima[axisNumber]) { minima[axisNumber] = reading; } if (reading > maxima[axisNumber]) { maxima[axisNumber] = reading; } // mapea la lectura de la gama de entrada analógica al rango de salida: reading = map(reading, minima[axisNumber], maxima[axisNumber], 0, range); // si la lectura de salida se encuentra fuera del // umbral de la posición de reposo, usa esto if (abs(reading - center) > threshold) { distance = (reading - center); } // el eje Y necesita ser invertido para // mapear el movimiento correctamente if (axisNumber == 1) { distance = -distance; } // devuelve la distancia desde los ejes: return distance; }

ARDUINO BUY RECOMMENDATION

Arduino UNO R3
Arduino Starter Kit
Disclosure: Some links in this section are Amazon affiliate links. If you make a purchase through these links, we may earn a commission at no extra cost to you.
Additionally, some links direct to products from our own brand, DIYables.

※ OUR MESSAGES