Paso 4: Codificación:-
void setup() {}
pinMode (A0, entrada); configurar el pin para leer el potenciómetro / / ahora tenemos que configurar nuestros pasadores LED como salidas:
int i; para (i = 0; i < 15; i ++) {}
pinMode (led_pins [i], salida); Por defecto cada LED apagado. Esto supone que los ánodos de los LEDs están conectados / / a los pines de salida (con una resistencia de 330 ohmios en el medio para la limitación de la corriente) / / y el otro lado de todos los LEDs (los cátodos) está conectado a tierra.
digitalWrite (led_pins [i], LOW); }}
void loop() {/ / fijamos una variable índice en nuestra matriz de números de pin. Va por defecto a 0 (la primera / / LED) y su rango va de 0 a 14 inclusive (el valor de XV en nuestra matriz).
Índice de int = 0; También necesitaremos una variable que nos diga qué dirección nos estamos 'despedir' a los LEDs. Voy empezar con 1 y utilice -1 para ir a la otra dirección:
Dirección int = 1; mientras que {} (1)
int valor = analogRead(A0); obtener la posición de 0 a 1023 / / usaremos este valor como el número de milisegundos para retrasar entre avance entre el de LED. Hay 1000 milisegundos en un segundo, así que esto nos da un buen rango de retardo de 1/1000 a un / / poco más de 1 segundo. Pero primero tenemos que encender el LED 'actual' (el que está indexado por 'index'):
digitalWrite (led_pins [index], HIGH); a su vez el LED del perno alto, '1', + 5v, todos lo mismo... / / ahora retrasar por un tiempo en relación con el potenciómetro. La función 'delay()' espera el número de / / de milisegundos dárselo antes de que devuelve así que esto funciona perfecto: delay(value); Apagar la corriente LED antes de avanzar:
digitalWrite (led_pins [index], LOW); avanzamos nuestro número índice así sucesivamente el paso siguiente nos referimos el LED siguiente:
Dirección de += índice; Inspeccionamos nuestro índice para ver si estamos a punto de ir más allá de cada extremo. Si bien hemos llegado / / final será simplemente multiplicamos la dirección por -1 cada vez que se llega a un extremo o el otro y esto / / conmutará de 1 y -1, preparándose para el siguiente paso:
Si ((index == 0) || (index == 9))
{Dirección * = -1;} }
}