Constanza Maldonado - Evaluación 1: Arduino Outputs
De Casiopea
Título | Arduino Outputs |
---|---|
Período | 2019-2019 |
Asignatura | Interacción y Performatividad |
Del Curso | Interacción y Performatividad 2019 |
Carreras | Diseño, Diseño Industrial"Diseño Industrial" is not in the list (Arquitectura, Diseño, Magíster, Otra) of allowed values for the "Carreras Relacionadas" property., Interacción y Servicios"Interacción y Servicios" is not in the list (Arquitectura, Diseño, Magíster, Otra) of allowed values for the "Carreras Relacionadas" property. |
Alumno(s) | Constanza Maldonado |
Profesor | Renzo Varela |
Requerimientos
1. Encienda 5 leds con un patrón a definir por el alumno.
2. Encienda 3 leds con efecto "degradé" o "fade"
3. Encienda 1 led RGB con el que debe pasar por los 3 colores principales.
Código
#define led1 13 #define led2 12 #define led3 11 #define led4 10 #define led5 6 #define rgb1 5 #define rgb2 4 #define rgb3 3 #define pi 3.1416 int state = 3; void setup() { pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); pinMode(led3, OUTPUT); pinMode(led4, OUTPUT); pinMode(led5, OUTPUT); pinMode(rgb1, OUTPUT); pinMode(rgb2, OUTPUT); pinMode(rgb3, OUTPUT); } void loop() { if(state == 1){ digitalWrite(led1, true); delay(500); digitalWrite(led2, true); delay(500); digitalWrite(led3, true); delay(500); digitalWrite(led4, true); delay(500); digitalWrite(led5, true); delay(2500); digitalWrite(led1, false); delay(500); digitalWrite(led2, false); delay(500); digitalWrite(led3, false); delay(500); digitalWrite(led4, false); delay(500); digitalWrite(led5, false); delay(2500); }else if(state == 2){ for(float i = 0; i <= (2 * pi); i = i + 2 * pi / 360){ analogWrite(led3, int(abs(sin(i) * 255))); analogWrite(led4, int(abs(sin(i - 2 * pi / 3) * 255))); analogWrite(led5, int(abs(sin(i + 2 * pi / 3) * 255))); delay(10 * 100/36); // el primer valor (10 en este caso) son los segundos que durara en total } }else if(state == 3){ digitalWrite(rgb1, true); digitalWrite(rgb2, false); digitalWrite(rgb3, false); delay(2000); digitalWrite(rgb1, false); digitalWrite(rgb2, true); digitalWrite(rgb3, false); delay(2000); digitalWrite(rgb1, false); digitalWrite(rgb2, false); digitalWrite(rgb3, true); delay(2000); } delay(1); }