potentiometre-souris.ino

Arduino Micro · Archivo : potentiometre-souris.ino · Lenguaje : Arduino · Uso : Un potentiomètre qui déplace le curseur de la souris comme un mini trackball

La desviación del potenciómetro respecto a su reposo se convierte en velocidad del cursor: la placa hace de trackball. El calibrado ocurre al arrancar: centre el potenciómetro antes de alimentar.

Hardware necesario

Un Arduino Micro (ATmega32U4, 16 MHz, 5 V) en formato para protoboard con conector micro-USB y USB nativo (teclado/ratón). 1 potenciómetro de 10 kΩ.

Cableado

Extremos a 5 V/GND, cursor a A0.

Funcionamiento

Una zona muerta de ±30 evita la deriva; la velocidad se limita a ±10 px por paso de 20 ms. En el Arduino IDE, elija « Arduino Micro » y el puerto, y suba. En Windows puede requerirse un driver .inf para el puerto COM. Como el 32U4 es el propio USB, un mal sketch puede bloquear el reflujo (doble reset).

Para ir más lejos

Un segundo potenciómetro en A1 añade el eje Y para un cursor de 2 ejes.

potentiometre-souris.ino

// Potentiometre sur A0 : ecart au centre = vitesse du curseur.
#include <Mouse.h>

const int POT = A0;
int centre = 0;

void setup() {
  Serial.begin(9600);
  Mouse.begin();
  centre = analogRead(POT); // position au demarrage = repos
  Serial.print(F("Centre: "));
  Serial.println(centre);
}

void loop() {
  int v = analogRead(POT);
  int ecart = v - centre;
  if (abs(ecart) > 30) {
    Mouse.move(constrain(ecart / 20, -10, 10), 0);
  }
  delay(20);
}

← Volver a la ficha