DESCRIPCIÓN DEL LABORATORIO
consiste el controlar el tiempo de encendido y apagado de 8 LEDs usando dos potenciometros (un potenciometro para los tiempos de encendido, otro potenciometro para los tiempos de apagado).
MATERIALES:
- Arduino
- 8 LEDs
- 8 resistencias
- 2 potenciometros (10 K)
- Computador (con el IDE de Arduino, y el driver adecuado instalados)
MONTAJE PASO A PASO:
- montamos en la protoboard
DIAGRAMAS ( FRITZING)
- En protoboard
- En ESQUEMATICO
- VIDEO DEL FUNCIONAMIENTO:
1: /********** Proyecto **********
2: * Laboratorio 02: 8 LEDs en linea controlados con Potenciometros
3: * Autor: FANOR STIWAR ZAPATA
4: * Descripcion:
5: * Mover un LED encendido de Izquierda a Derecha y viceversa
6: * con tiempos controlados por potenciometros
7: * Conexiones:
8: * 8 LEDs + resistencias a los pines D2 .. D9
9: * 2 Potenciometros a los pines A0 y A1
10: * Version: 1
11: */
12:
13: /********** Librerias **********/
14:
15: // ninguna
16:
17: /********** Constantes **********/
18:
19: #define POT1 A0
20:
21: #define POT2 A1
22:
23: #define TOTLED 8 // Total LEDs
24:
25: /********** Objetos **********/
26:
27: // ninguno
28:
29: /********** Variables **********/
30:
31: int led[TOTLED] = {
32:
33: 2, 3, 4, 5, 6, 7, 8, 9
34:
35: };
36:
37: int t_encendido = 500;
38:
39: int t_apagado = 500;
40:
41: /********** Configuracion **********/
42:
43: void setup() {
44:
45: int pos = 0;
46:
47: while (pos < TOTLED) {
48:
49: pinMode(led[pos], OUTPUT);
50:
51: pos = pos + 1;
52:
53: }
54:
55: pinMode(POT1, INPUT);
56:
57: pinMode(POT2, INPUT);
58:
59: } // end setup()
60:
61: /********** Ciclo Principal **********/
62:
63: void loop() {
64:
65: // Acciones
66:
67: for (int pos = 0; pos < TOTLED; pos++) {
68:
69: leer();
70:
71: on(led[pos], t_encendido);
72:
73: off(led[pos], t_apagado);
74:
75: }
76:
77: for (int pos = TOTLED - 2; pos > 0; pos--) {
78:
79: leer();
80:
81: on(led[pos], t_encendido);
82:
83: off(led[pos], t_apagado);
84:
85: }
86:
87: } // end loop()
88:
89: /********** Funciones **********/
90:
91: void leer()
92:
93: {
94:
95: // Sensores
96:
97: t_encendido = analogRead(POT1);
98:
99: t_apagado = analogRead(POT2);
100:
101: }
102:
103: // Pone en +5V el pin indicado, durante tantos milisegundos
104:
105: void on(int pin, int ms) {
106:
107: digitalWrite(pin, HIGH);
108:
109: delay(ms);
110:
111: } // end on()
112:
113: // Pone en GND el pin indicado, durante tantos milisegundos
114:
115: void off(int pin, int ms) {
116:
117: digitalWrite(pin, LOW);
118:
119: delay(ms);
120:
121: } // end off()
122:
123: /********** Fin ***********/
No hay comentarios:
Publicar un comentario