Paso 7: Código Arduino: promedio de los datos del sensor de presión
La siguiente pieza de código que me gustaría explicar es cómo capturar las lecturas del sensor de presión y convertirlos a valores de 1-9. Este código se modifica desde el tutorial Arduino de suavizado que se puede leer directamente.
Encima al principio del código (que esperemos que descargó en el paso pasado y mirando en el IDE de Arduino), hay algunas líneas que definen las cosas que necesitamos hacer un seguimiento de nuestras matemáticas simple. Incluyen:
- const int numReadings = 10; habrá 10 lecturas del sensor de presión
- int lecturas [numReadings]; Aquí se almacenará la lectura de la entrada analógica
- Índice de int = 0; el índice de la lectura actual
- int total = 0; la ejecución total de las lecturas del sensor
- int promedio = 0; el promedio de las lecturas del sensor
- int inputPin = A0; Éste es el sensor del fsr en el pin analógico A0
El código que toma las lecturas del sensor de presión y tiendas y medias de ellos tiene que ser mezclado con algún código que hará que el numitron la cuenta regresiva de 9 a 0 y hacer el LED apagado uno por uno. Es el código en la imagen de arriba. Traté de anotar bien, línea por línea. Básicamente, el microcontrolador tiene 10 lecturas en una matriz y resta la lectura más antigua y a continuación agrega una nueva en. Entonces un promedio de todas las 10 lecturas y almacena este número en un lugar llamado 'promedio'. Esto es importante porque necesitamos ese número para asignar un valor de 1 a 9. Se hace una vez luego se mueve a la siguiente parte del código.
La siguiente parte del código envía secuencias de 1 y 2 los registros de dos turnos. El numitron la cuenta regresiva y el LED enciende y luego distinguirse uno a la vez (consulte el paso anterior sobre secuencias). Después de enviar una parte de la secuencia, se espera cierta cantidad de tiempo (que establecer a 600 milisegundos) luego hace otra vez - significado de resta el valor de presión más antiguo, agarra uno nuevo, calcula un nuevo promedio y aparece la siguiente parte de la secuencia. Hace esto 10 veces y entonces existe esta parte del programa porque dijeron hacerlo 10 veces usando esta línea de código para arriba al principio de esta sección:
para (int n = 0; n < 10; n ++)
Si esto es confuso, como lo fue al principio, sólo reconocer que la frase anterior tiene un {después de él que inicia el bucle pequeño y entonces hay un} en el extremo del lazo y el lazo contiene el material del sensor de presión y las cosas de la cuenta regresiva de numitron.