Tirantes de señal de giro (15 / 15 paso)

Paso 15: Mi código capacidad plena

/ * hice mi mejor esfuerzo para fijar la mutilación de mi formato que pasó cuando pegué mi código en la página. Algunas cosas habían incluso sido autorizado/no pega!

Sería sabio comprobar y asegurarse de que algo importante no fue comentada al llegar en el entorno de Arduino.

Original compila bien, comentario si es broken.* /

int sensor1 = A2; cosido a mi... dedo puntero

int sensor2 = A3; //middle int sensor3 = A4; anillo int sensor4 = A5; Pinky

#include / / yaaap, quiere ser como esto. ver su uberguide para instalarlo en tu biblioteca de arduino.

Es un proceso relativamente fácil de ~ 3 paso, vale la pena. Los archivos y las instrucciones están en el siguiente sitio:

https://Learn.Adafruit.com/Adafruit-neopixel-Uber...

Luego pincha en el banner "Sketch" del archivo y seleccione Agregar archivo en el menú para navegar a donde está guardado el archivo .h para agregar su ficha a este proyecto

Static int PIN = 10; Si olvidas esto, donde dice PIN ahí abajo va a enojarse el compilador.

El número es el nombre de su lilypad que los datos enviados desde el pasador.

la siguiente es recto desde el archivo de ejemplo "strandtest"

Parámetro 1 = número de píxeles en tira

Parámetro 2 = número de pin (la mayoría son válidos)

Parámetro 3 = píxeles tipo banderas, sumar como sea necesario: (izquierda hacia fuera la información extra, significa poco para mí) tira de Adafruit_NeoPixel = Adafruit_NeoPixel (15, PIN, NEO_GRB + NEO_KHZ800);

Tengo 15 píxeles, así número

/******************************************************************** *********************************************************************

* instalado *

* *

********************************************************************/

void setup() {}

para las luces:

Strip.Begin();

Strip.Show();

"Inicializar todos los píxeles en 'off'"

inicializar la comunicación serial a 9600 bits por segundo:

pinMode (sensor1, entrada); establece pin de puntero del knit del potenciómetro a la entrada

digitalWrite (sensor1, HIGH); //initializes el sensor de

pinMode (sensor2, entrada); pin de juegos medio punto potenciómetro entrada

digitalWrite (sensor2, HIGH); Inicializa el sensor

pinMode (sensor3, entrada); conjuntos de anillo pin de hoja del potenciómetro a la entrada de punto

digitalWrite (sensor3, HIGH); Inicializa el sensor

pinMode (sensor4, entrada); establece pin de pinky del knit del potenciómetro a la entrada

digitalWrite (sensor4, HIGH); Inicializa el sensor

Serial.Begin(9600); }

/******************************************************************** *********************************************************************

* *

* función principal *

* *

********************************************************************* ********************************************************************/

void loop() {}

int medio = 8; media luz

int derecha = 15; luz de extremo derecho (dirección más alta del LED)

int izquierda = 1; luz de extremo izquierdo (bajo dirección del LED)

leer la entrada en el pin analógico:

3.3 V es 1024

0 V es 0

"SV" corto para valor de sensor

int SV1 = analogRead(sensor1); 300-400 lo 890 950 Hola

int SV2 = analogRead(sensor2); 650-700 lo 900-1015 Hola

int SV3 = analogRead(sensor3); min promedio máximo promedio de 650-700 1000

int SV4 = analogRead(sensor4); min 530 máximo 1024 - avg Hola 950 avg lo 650ish

Si mezcla colores eran el deseo, asignación de 0-250 a 300-950 como el valor de un RGB por dedo meñique fresco podría ser un extraño al azar mezcla ecuaciones RGB utilizando el valor asignado. EH.

/ * //uncomment esta sección para utilizar la función de impresión de serial y haz tu propio dedo gamas de electrodos.

imprimir el valor de leer:

Serial.Print ("valor 1 =");

Serial.Print(sensorValue1);

Serial.Print ("valor 2 =");

Serial.Print(sensorValue2);

Serial.Print ("valor 3 =");

Serial.Print(sensorValue3);

Serial.Print ("valor 4 =");

Serial.println(sensorValue4);

*/

/********************************************************************

* IF/THEN respuesta *

********************************************************************/

rango de respuesta máximo a 950, creo que esto debe impedir que todos respondieron verdadero.

por ahora, tengo alta/baja determinar... brote, número de repeticiones de sonidos bien. ¿Color demasiado?

se repite el uint16_t = 2; Inicializa en dos >> sólo arrojar número de llamada a la función!

PUNTERO de dedo---> girar a la derecha

300-400 lo 890 950 Hola

Si ((SV1 < = 950) & & (SV1 > = 650))

eligió 650 desde su alrededor de la mitad de mi "bajo high-end" y más "bajas" las lecturas.

{

Right_then (de la tira. Color(250,140,0),4,Middle,Right); puede cambiar aquí de color RGB

}

Si ((SV1 < = 649) & & (SV1 > = 0))

{Right_then (de la tira. Color(250,0,0),8,Middle,Right); }

DEDO medio---> girar a la izquierda

650-700 lo 900-1015 Hola

Si ((SV2 < = 950) & & (SV2 > = 775))

{Left_I_go (de la tira. Color(250,140,0), 4, centro, izquierda); }

Si ((SV2 < = 774) & & (SV2 > = 0))

{Left_I_go (de la tira. Color(250,0,0), 8, centro, izquierda); }

DEDO anular---> blink lindo

min promedio máximo promedio de 650-700 1000

Si ((SV3 < = 950) & & (SV3 > = 840))

{Notice_me_Cute (de la tira. Color(0,0,150), 3, izquierda, centro, derecha); azul}

Si ((SV3 < = 839) & & (SV3 > = 0)) //not diferencia == menor exactitud == yo estoy manteniendo las repeticiones cortas para vueltas pueden ser señaladas

{Notice_me_Cute (de la tira. Color(127,255,0), 5, izquierda, centro, derecha); verde lima}

PINKY---> meh

min 530 máximo 1024 - avg Hola 950 avg lo 650ish 650 + (950-650) / 2 = valor medio elegir

Si ((SV4 < = 960) & & (SV4 > = 800))

{dualFade (dejado, derecho);}

Si ((SV4 < = 799) & & (SV4 > = 0))

{dualFade2 (dejado, derecho);}

/********************************************************************

* blink defecto *

********************************************************************

/ más adelante, puede tratar de hacer el "lindo" por tener un contador genérico, diciendo: contador ++; cada lazo,

y usar un % 8 para ser difícil de hacer otro cambio de variable entre 1-7

¿.. .y cambiar entre + y -? puede ser que necesite una tercera variable existentes en la «si 8% == 0" para %2 con y un if anidado declaración sobre +-

'aviso me'

para (int i = izquierda; i > = derecha; i ++)

{//strip.setPixelColor(pixel#,(R,G,B) definida en función de la alimentación)

strip.setPixelColor(i,255,215,0); color "oro"

Strip.Show();

}

Delay(300);

poner fuera de los soportes para tratar de tener luces encender "a la vez" estancia entonces un poco

ahora lo apague

para (int i = derecha; i > = izquierda; i--)

{/ / strip.setPixelColor(pixel#,R,G,B);

strip.setPixelColor(i,0,0,0);

Strip.Show();

}

Delay(300);

retardo entre lecturas parpadeando para estabilidad (era de 75 para la impresión de la serie).

> <> <> <> <> <

}

/********************************************************************

* FINAL de función principal *

********************************************************************

********************************************************************

* *

* SENSOR FUNCIONA!!!!!! *

* *

* Me encanta llamar a funciones, su modo... LIMPIAR!!!!!! *

* *

* Necesario: blink mitad izquierda (píxeles 1-8... o es eso 0-7?) *

* parpadear mitad derecha (8-15 píxeles... o 7-14) *

* "Note me" parpadea (arco iris, seguro) *

para la diversión: paño del arco iris *

*********************************************************************

* es mi LED dirigida

[1] [2 [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]

¿o [0] [1] [2 [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14]?

Cambiará mi iteraciones internas for() *

********************************************************************

* parpadear izquierda *

********************************************************************/

void Left_I_go (color de uint32_t, repeticiones uint16_t, int medio, int izquierda)

basado en colorWipe en strandtest. Aquí es cómo se llamaba el "c de uint32_t" en 'main()' 50 era la "espera"!

/ * colorWipe (de la tira. Color(255, 0, 0), 50); Rojo

colorWipe (de la tira. Color(0, 255, 0), 50); / / verde

colorWipe (de la tira. Color(0, 0, 255), 50); / / azul * /

de la tira. Color(_,_,_),Repeats,Middle,Left)

{//variables

espera de uint8_t = 20;

uint16_t i;

uint16_t z; 'z' es diferente 'i'

Quiero a parpadear un par de veces, así que haciendo un anidados para lazo

para (z = 0; z < = repeticiones; z ++)

{para (i = centro; i > = izquierda; i--)

{

strip.setPixelColor(i,color);

Strip.Show();

Delay(Wait); }

otro retraso para mantenerlos un poco

Delay(100);

ahora lo apague

> <> <

para (i = centro; i > = izquierda; i--)

{/ / strip.setPixelColor(pixel#,R,G,B);

strip.setPixelColor(i,0,0,0);

Strip.Show();

}

Delay(100);

> <> <

}

}

/********************************************************************

* parpadear derecho *

********************************************************************/

void Right_then (color de uint32_t uint16_t repeticiones, int medio, derecho int

) {/ / tira. Color(_,_,_),Repeats,Middle,Right)

variables

espera de uint8_t = 20; hacer corto

uint16_t i;

uint16_t z;

Quiero a parpadear un par de veces, así que haciendo un anidados para lazo

para (z = 0; z < = repeticiones; z ++)

{para (i = centro; i < = derecha; i ++)

{

strip.setPixelColor(i,color);

Strip.Show();

Delay(Wait);

}

otro retraso para mantenerlos un poco

Delay(100);

ahora lo apague

> <> <

para (i = medio; i < = derecha; i ++) //note cómo he hojeado > a < y--++

{

strip.setPixelColor(i,0,0,0);

Strip.Show();

}

Delay(100); }

}

/********************************************************************

* lindo chocando blink *

********************************************************************/

HM. tal vez hay una manera, Umm... palabra. ¿que el valor predeterminado parpadee parte del void loop(), como poner antes de cualquier sensor verifica, debe ser rápido, derecho? puede Agregar un retraso. ¡ sí! Sólo haré esta una linda versión lujo, dos luces bounching de unos a otros en el medio y de los extremos...

void Notice_me_Cute (color de uint32_t, repeticiones uint16_t, int izquierda, int medio, derecho int)

{/ / tira. Color(_,_,_),Repeats,Left,Middle,Right)

strip.setPixelColor(pixel#,R,G,B);

variables

espera de uint8_t = 50; un poco más lento que el 20 por el giro

uint16_t i;

uint16_t z;

para (z = 0; z < = repeticiones; z ++)

{

en y luz media

strip.setPixelColor(middle,color);

Strip.Show();

Delay(Wait);

strip.setPixelColor(middle,0,0,0);

Strip.Show();

ahora para la fractura

para (i = 1; i

{

strip.setPixelColor(middle-i,color); va a la izquierda del centro de

strip.setPixelColor(middle+i,color); va desde centro

Strip.Show(); ¿muestran juntos?

Delay(Wait);

desde 'uno a uno' necesidad de apagar luces de interior para el lazo

strip.setPixelColor(middle-i,0,0,0);

strip.setPixelColor(middle+i,0,0,0);

Strip.Show();

}

ahora a volver a subir a la mitad

comprobación de entrada de sensor unos aquí sería sabio si lo quiero repetir mucho... pero no sé si es posible y cómo

para (i = 1; i; i--) //did (media-1) ya que no quiero los bordes parpadea dos veces, son golpe una vez cuando el resto se han ido dos veces en un ciclo.

{

strip.setPixelColor(middle-i,color); Esto debe ir a la derecha de la izquierda

strip.setPixelColor(middle+i,color); y esta a la izquierda de la derecha

Strip.Show();

Delay(Wait);

strip.setPixelColor(middle-i,0,0,0);

strip.setPixelColor(middle+i,0,0,0);

Strip.Show(); }

}

}

/********************************************************************

* dualFade (meh!) *

4 º opción sería cool poner sonido o cualquier otra cosa en su lugar.

********************************************************************

/ algo para lanzar en el meñique, ya que no puedo conseguir el arco iris funciona en el strandtest a trabajar.

void dualFade (int izquierda, int derecha)

{

para (int i = 0; i < 255; i = i + 1)

{

para (int k = izquierda; k < = derecha; k ++)

{

int dividir = k 2 %;

Si (dividir == 0)

strip.setPixelColor (k, i, 0, 255-i);

otra cosa

strip.setPixelColor (k, 0, i, 255-i);

Delay(10);

Strip.Show(); }

}

}

/********************************************************************

* meh 2 *

********************************************************************

/ void dualFade2 (int izquierda, int derecha)

{para (int i = 0; i < 255; i = i + 1) {}

para (int k = izquierda; k < = derecha; k ++)

{int dividir = k 2 %;

Si (dividir == 0)

strip.setPixelColor (k, i, 255-i, 0);

otra cosa

strip.setPixelColor (k, 0, 255-i, i);

Delay(10);

Strip.Show();

}

}

}

Artículos Relacionados

Unidades de disquete musical

Unidades de disquete musical

Gire a la vieja tecnología música, que era la meta y se logró con algunas investigaciones en instructables y otros sitios Web.Esto se ha hecho un montón de veces antes pero quería hacerlo y tratar de explicarlo lo mejor que pueda para que su fácil pa
Flores de glaseado fácil, impresionante, dimensiones

Flores de glaseado fácil, impresionante, dimensiones

Para hacer este glaseado royal flor te va a necesitar:-Consistencia duro glaseado real en uno o dos tonos de rojo (o cualquier otro color)-Una punta de tubería pétalo (usé Wilton #104)-Un clavo de flor(usé Wilton #7)- Perlas de azúcar blancas grandes
¿Diseño de la camiseta DIY: coser encaje arriba a los lados - No

¿Diseño de la camiseta DIY: coser encaje arriba a los lados - No

conseguido una camiseta que es demasiado grande y podría así ser una camisa de noche? Trocear en forma de guarnición túnica, mini vestido o top largo con encaje arriba a los lados. Nueva costura necesaria, solo tijeras y alfileres/imperdibles.He añad
Acortar el iPhone 5 Lightning Cable

Acortar el iPhone 5 Lightning Cable

quería acortar a uno de mis iPhone 5 lightning cables para mi coche cargar así que pensé daría un giro.  Soy nuevo una soldadura y no han hecho nada como esto anteriormente con este tipo de cable no estaba seguro de que funcionaría.   He intentado es
Hacer un descargador de batería simple para baterías de NiCad o NiMH.

Hacer un descargador de batería simple para baterías de NiCad o NiMH.

Este instructable le mostrará cómo hacer un simple descargador para sus paquetes de baterías de NiCad o NiMH para coches de Airsoft AEG o RC, barcos, aviones,. Drenaje sus baterías de NiCad es un paso importante en la preservación de la vida de la ba
Hacer este Motor electrostático de desecho

Hacer este Motor electrostático de desecho

IntroAquí es un electrostático que motor' s fácilmente construido para un proyecto de Ciencias. El rotor fue construido por laminar una tira de papel de aluminio entre capas de cinta de embalaje plástico y rodando en un tubo. El tubo fue montado en u
Escalada gorila de cartón

Escalada gorila de cartón

esta es una versión de cartón de un juguete tradicional de madera, con una pequeña modificación para darle hacer pivotar las piernas, "porque".Paso 1: Materiales y herramientas. Se necesita un número de materiales fácilmente obtenidos.¿Tarjeta a
X10 cámara Mod

X10 cámara Mod

tengo 3 x10 (ninja) pan y tilt bases y sólo 1 x10 cámara. También tengo otras dos cámaras inalámbricas, pero la forma se establecen los x10, sólo x10 las cámaras son compatibles (lo que he investigado), así que hice mi modificación a mi cámara sin hi
La hélice de vuelo Cool Super

La hélice de vuelo Cool Super

me inspiré para hacerlo porque una vez más estaba rascándome la cabeza y pensando "¿qué diablos puedo hacer para mantener mi grado 8 metal trabajo estudiantes interesados?" A menudo estoy haciendo esto tal vez para mantenerme interesado, también
Montaje magnético de GoPro - 3D impreso o CD

Montaje magnético de GoPro - 3D impreso o CD

¿Cuántas veces han fallado o siquiera intentado configurar tu cámara GoPro en los lugares?No puede utilizar monturas adhesivas (o no quiere comprar una nueva cada vez), el apoyo es demasiado sucio/porosos/desigual con ventosas, no srew pegamento sobr
Hacer tira de gabinete personalizado

Hacer tira de gabinete personalizado

Puede hacer su propia tira gabinete personalizado de cualquier material que puede convertir en un torno. Esto abre un mundo de posibilidades en la fabricación de manijas a la medida que coincidan con la madera de su proyecto o acento el proyecto con
Sombrero del sol convertible hecho de tiras de tela

Sombrero del sol convertible hecho de tiras de tela

Verano es genial, pero sin una gorra y protector solar, pasar luciendo como una langosta. Suelen llevar un gorro militar sobrante, pero quería algo un poco más... bueno, una dama. Un día que estaba sentado afuera, esperando que alguien que iba a qued
Tira de Mobius con cinta

Tira de Mobius con cinta

¿qué es una tira Mobius puede pedir? Es una forma que es raro porque si fueras a trazar una línea a lo largo de un lado, sería transversal ambos lados antes de llegar a donde comenzó la línea, sin tener que cruzar un borde! Así que básicamente, sólo
Tira de LED de estireno soportes

Tira de LED de estireno soportes

He comprado una tira de LEDs de RBG de Adafruit de Phenoptix. Vienen con una funda protectora de silicona para detener la humedad dañar ellos o cortocircuito los electrodos metálicos. Esto es genial pero les hace muy difícil de montar ya que descarta