Библиотека Arduino Uno для оптического датчика paw3515db
Я хочу использовать координаты xy от мыши, которая прикреплена к Arduino, и попросить Processing сгенерировать график координат в режиме реального времени. Я использовал библиотеку OptiMouse-master, но она показывает случайное значение и постоянно увеличивается. Я использую оптический датчик paw3515db и arduino uno, поэтому, пожалуйста, помогите мне найти правильную библиотеку и код, чтобы она работала.
#include "PAN3101.h"
// #include "ADNS2051.h"
// #include "ADNS2610.h"
// #include "ADNS2620.h"
// #include "ADNS2083.h"
#define SCLK 2 // Serial clock pin on the Arduino
#define SDIO 3 // Serial data (I/O) pin on the
Arduino
PAN3101 Optical1 = PAN3101(SCLK, SDIO); // Create an instance of the
PAN3101 object
// ADNS2051 Optical1 = ADNS2051(SCLK, SDIO);
// ADNS2610 Optical1 = ADNS2610(SCLK, SDIO);
// ADNS2620 Optical1 = ADNS2620(SCLK, SDIO);
// ADNS2083 Optical1 = ADNS2083(SCLK, SDIO);
signed long x = 0; // Variables for our 'cursor'
signed long y = 0; //
int c = 0; // Counter variable for
coordinate
reporting
void setup()
{
Serial.begin(38400);
Optical1.begin(); // Resync (not really necessary?)
}
void loop()
{
// The status commands are available only for the PAN3101 and the
ADNS2051:
// Optical1.updateStatus(); // Get the latest motion status
// if (Optical1.motion()) // If the 'Motion' status bit
is
set,
// {
x += Optical1.dx(); // Read the dX register and
in/decrease X with that value
y += Optical1.dy(); // Same thing for dY register.....
// }
if (c++ & 0x80)
{ // Report the coordinates once in a
while...
Serial.print("x=");
Serial.print(x, DEC);
Serial.print(" y=");
Serial.print(y, DEC);
Serial.println();
c = 0; // Reset the report counter
}
}