Codigo Para Controlar Un Acelerometro Con Arduino, Por Victor Mayén
Enviado por victormayen05 • 25 de Noviembre de 2012 • 490 Palabras (2 Páginas) • 915 Visitas
codigo para controlar un acelerometro con arduino, por victor mayén
const int tierrapin = 18;
const int alimentacionpin = 19;
int val; // puntos en el eke X
int val1;// puntos en el eje Y
int sensorValue = 0;
const int valormedio = 14;
const int valorminimo = 25;
const int valormaximo= 170;
int salida1 = 2;
int salida2 = 3;
int salida3 = 4;
int salida4 = 5;
int salida5 = 6;
void setup()
{
Serial.begin(9600);
pinMode(salida1,OUTPUT);
pinMode(salida2,OUTPUT);
pinMode(salida3,OUTPUT);
pinMode(salida4,OUTPUT);
pinMode(salida5,OUTPUT);
pinMode(tierrapin, OUTPUT);
pinMode(alimentacionpin, OUTPUT);
digitalWrite(tierrapin, LOW);
digitalWrite(alimentacionpin, HIGH);
}
void loop()
{
Serial.print("y:\t");
Serial.print("\t");
Serial.print(analogRead(A2));
Serial.print("\t");
Serial.print("x:\t");
Serial.print("\t");
Serial.print(analogRead(A3));
Serial.println();
val = analogRead(A3);
val = map(val, 374, 660 , 0 , 260);//VARIACION DE RANGOS EN X
Serial.print(val);
val1 = analogRead(A2);
val1 = map(val1, 374, 660 , 0 , 200);//VARIACION EN Y
Serial.print(val1);
int range = map(val, valorminimo, valormaximo, 0, 4);
switch (range) {
case 0://X HACIA ABAJO
Serial.println("alto");
digitalWrite(salida1,HIGH);
digitalWrite(salida2,LOW);
digitalWrite(salida3,LOW);
digitalWrite(salida4,LOW);
digitalWrite(salida5,LOW);
break;
case 1:
digitalWrite(salida1,LOW);
digitalWrite(salida2,LOW);
digitalWrite(salida3,LOW);
digitalWrite(salida4,LOW);
digitalWrite(salida5,LOW);
break;
case 2:
break;
case 3:
digitalWrite(salida1,LOW);
digitalWrite(salida2,LOW);
digitalWrite(salida3,LOW);
digitalWrite(salida4,LOW);
digitalWrite(salida5,LOW);
break;
case 4://X HACIA ARRIBA
Serial.println("abajo");
digitalWrite(salida1,LOW);
digitalWrite(salida2,LOW);
digitalWrite(salida3,HIGH);
digitalWrite(salida4,LOW);
...