1
0
mirror of https://github.com/arduino/Arduino.git synced 2025-02-12 06:54:24 +01:00

43 lines
752 B
Plaintext

// Memsic2125
#define X 2
#define Y 3
int dx = 0;
int dy = 0;
void setup()
{
Serial.begin(9600);
pinMode(X, INPUT);
pinMode(Y, INPUT);
}
void loop()
{
int pulseX, pulseY;
int accX, accY;
// wait for previous pulse to end
while (digitalRead(X) == HIGH) {}
// read pulse from x-axis
pulseX = pulseIn(X,HIGH);
// wait for previous pulse to end
while (digitalRead(Y) == HIGH) {}
// read pulse from y-axis
pulseY = pulseIn(Y,HIGH);
// convert the pulse width into acceleration
// accX and accY are in milli-g's: earth's gravity is 1000.
accX = ((pulseX / 10) - 500) * 8;
accY = ((pulseY / 10) - 500) * 8;
Serial.print(accX);
Serial.print(" ");
Serial.print(accY);
Serial.println();
delay(100);
}