Paso 2: Paso 2: códigos de Arduino
Aquí están los códigos para este tipo de potenciómetro de calibración.
/*
Fecha:---22 de diciembre de 2015
Título:---JOYSTICK potenciómetro calibrado
Autor:---Por Firas Helou---
Aprender a calibrar un potenciómetro de la palanca de mando con Arduino Uno
*/
int defaultData; Ajuste de una variable para datos del potenciómetro por defecto en el arranque
int datos; Variable para almacenar datos lee en analógico Arduino pin A0 desde el potenciómetro
startTime int = 0; Tipo de datos variable tiempo se define como entero porque no necesitamos más de 10 //microseconds
int TimeGap = 10; Definir el espacio de tiempo
reasignación del int; Reasignación de variable para almacenar los datos de remaped procedentes del pin analógico de Arduino A0
FUNCIÓN VOID SETUP()
void setup() {}
Establecer la comunicación Serial en el ratio de morosidad
Serial.Begin(9600);
Ponemos tiempo para definir el valor por defecto en el pin analógico de Arduino A0, porque tenemos un pin de centrado joystick, //so su valor predeterminado es diferente de 0
Si (micros() - startTime > = TimeGap) {}
Potenciómetro conectado al Arduino analógico
defaultData = analogRead(A0);
}
}
FUNCIÓN VOID LOOP()
void loop() {}
Establecemos el valor de datos igual uno leer en el pin analógico de Arduino A0
datos = analogRead(A0); En este caso, el valor predeterminado en Inicio es 488
Si (datos < defaultData + 1) {}
Debemos reasignar el valor de datos en pin analógico de Arduino A0 a un valor más pequeño entre 0 y 255
pero nosotros debemos restar 1 del valor por defecto, porque si no lo hacemos, no vamos a tener un valor predeterminado de 0 cuando la posición de //stick se centra
en su lugar tenemos un valor flotante comprendido entre 1 y 0
así que para evitar ese problema flotante simplemente restamos - 1
reasignación de = mapa (datos, defaultData 0, - 1, 255, 0);
} else if (datos > = defaultData) {}
En esta parte, no tenemos que restar nada
reasignación de = mapa (datos, defaultData, 1023, 0, 255);
}
Serie imprimir los valores que recibimos
Serial.Print ("reasignación de valor:");
Serial.println(Remap);
Serial.Print ("valor por defecto:");
Serial.println(defaultData);
Delay(200);
}
Digamos que escogí el eje y, al cargar el código y abrir al monitor de serie, tenemos que ver un valor predeterminado de 488 en mi caso (podría tener un valor diferente). Esta es la posición centrada en ralentí para el palillo así que hay que calibrarla para ver un valor 0 en lugar de 488 como un comienzo. Y aquí es donde este sketch en lugar. La foto de arriba muestra los resultados que i recibió después subí el bosquejo final anterior.
Este es mi primer tutorial instructable. Espero que esto le ayudaría de alguna manera. No dude en añadir sus preguntas en la sección de comentarios si tienes alguna o si tienes una mejor forma de lo codificación sería buena comprobarlo hacia fuera, que me ayudaría a mejorar. Si encuentras zonas donde mejoras pueden tener lugar en este por favor, añadirlo en los comentarios o enviarme un mensaje privado. Sería útil para los demás en cuanto a mí mismo.