+Angel Rosales Gracias Angel , ahora me pregunto como puedo alterar el codigo para adicionar dos shwitches, uno para hacer que las luces vayan hacia la izquierda y otro para que las luces vayan a la derecha.
+Gisselle Zuniga Hola que tipo de switch?. yo te recomendaria con button push y lo que haria es que cuando oprimas un boton empezaria de la izquierda y realizara su secuencia y cuando termine y oprimas el otro empezara de la derecha y al terminar cada una de sus secuencias se mantendra apagado hasta que se oprima algun boton este es el codigo y el diagrama espero se entienda. Nota si deseas agregar mas leds sigue la secuencia 3,4,5, etc y por cada led que aumentes tienes que sumarle uno al numero que se encuentra dentro del corchete de la variable matriz y un numero mas por cada led a la variable contador. Saludos Codigo: int timer = 100; int BUTTON = 12; int BUTTON2 = 13; int matriz [3] = {0, 1, 2}; int contador=3; void setup() { // put your setup code here, to run once: pinMode(BUTTON,INPUT); pinMode(BUTTON2,INPUT); for(int pin=0;pin=0;pin--) { digitalWrite(matriz[pin],HIGH); delay(timer); digitalWrite(matriz[pin],LOW); } // put your main code here, to run repeatedly: for(int pin=0;pin
int timer=100; //establecemos el tiempo de espera en milisegundos int cont = 5; //indica que usamos 5 LEDs y por tanto 5 pines digitales int matriz[5] = {5, 7, 9, 11, 13}; //la matriz contiene los cinco pines digitales usados y su orden void setup(){ for (int pin=0; pin < cont; pin++){ //recorremos los 5 pines pinMode (matriz [pin], OUTPUT); //establecemos la salida de cada pin } } void loop () { for (int pin=0; pin < cont; pin++) //recorremos los 5 pines { digitalWrite (matriz [pin], HIGH); //encendemos el LED que toca delay (timer); //el LED permanece encendido el tiempo indicado en la variable timer digitalWrite (matriz [pin], LOW); //transcurrido el tiempo de espera se apaga el LED } for (int pin=cont-1;pin>=0; pin --) //recorremos los 5 pines pero ahora en sentido contrario { digitalWrite (matriz [pin], HIGH); //encendemos el LED que toca delay (timer); //el LED permanece encendido el tiempo indicado en la variable timer digitalWrite (matriz [pin], LOW); //transcurrido el tiempo de espera se apaga el LED } }
excelente explicación, esto es lo que estaba buscando porque programe este ejemplo con lenguaje C pero en Mikroc gracias otra vez excelente explicación
Excelente vídeo, ¿Como le podría hacer para conectar aproximadamente 45 leds para que igualmente prendan en secuencia? Si no hay suficientes puertos, espero me puedas ayudar con una solución. Gracias..
No he podido evitar fijarme que en los pines "5" y "13" hay más retardo que en los demás.Lo he comprobado en mi arduino con el mismo código que explicas subiendo el valor de delay y efectivamente tarda casi el doble. ¿A qué se debe esto? Gracias.
Gracias muy buen video, disculpa me gustaria saber como hacer este mismo codigo para que al presionar un boton de pc digamos A, encienda la secuencia, saludos me suscribo, espero respuesta
Funciona con cualquier arduino? Yo uso el arduino uno y cuando pongo"subir", me aparece "problema subiendo a la placa" ya lo solucione: es que tenia que enchufar bien el USB al arduino luego seleccionar el puerto que usaba 😅
Disculpa, en la segunda linea me marca en rojo, nose que sera el error, intento saber que es pero no doy con el problema, se te agradeceria si me pudieras ayudar... int timer = 100; int aatriz [] = (5, 7, 9, 11, 13)
Y SI QUISIERA HACER QUE ESTA SECUENCIA PUEDA FUNCIONAR CON UN PULSADOR EN EXACTO ESTE EJERCICIO Con un pulsador haga que 8 leds conectados en el puerto B, se enciendan de derecha a izquierda uno a la vez, empezando de B0 a B7, al final este último permanece encendido, con otro pulsador haga que los leds se desplacen uno a uno hacia la derecha, es decir desde B7 que fue el último y que está actualmente encendido se desplace hasta B0, las pausas son de 300 mls.
Hola, me encanto el video, yo quiero hacer algo asi: tener un secuenciador de 25 leds y despues de unos 10 segundos esos primero 25 leds se apaguen y prenda otra hilera de 25 leds secuenciados y despues de 10 segundos se apague esta segunda fila de 25 leds y prenda una tercer fila de 25 leds secuenciados tambien y a los 10 segundos repetir el ciclo, alguien podria ayudarme? es para una tarea de la escuela, soy estudiante de electronica. Gracias de antemano
int timer = 100; int matriz [] = {5, 7, 9, 11, 13}; yo crei que eran parentesis,pero son llaves las que se ponen y al final de esta linea de codigo se pone punto y coma
int timer = 100;
int matriz [5] = {5,7,9,11,13};
int cont = 5;
void setup(){
for(int pin=0;pin
Arty Mc i love u
Gracias yo buscando y buscando, nada funcionaba pero esto si funciona, genial, de verdad gracias por compartir esto
@@sunxiyana2442 muy bien pero al final tienes q borrar el punto para q funcione el codigo amigos
Heroe
este es el codigo correcto
int timer =100;
int matriz [ 5 ] ={5, 7, 9, 11, 13};
int cont=5;
void setup(){
for(int pin=0;pin
+Angel Rosales Gracias Angel , ahora me pregunto como puedo alterar el codigo para adicionar dos shwitches, uno para hacer que las luces vayan hacia la izquierda y otro para que las luces vayan a la derecha.
+Gisselle Zuniga Hola que tipo de switch?. yo te recomendaria con button push y lo que haria es que cuando oprimas un boton empezaria de la izquierda y realizara su secuencia y cuando termine y oprimas el otro empezara de la derecha y al terminar cada una de sus secuencias se mantendra apagado hasta que se oprima algun boton este es el codigo y el diagrama espero se entienda.
Nota si deseas agregar mas leds sigue la secuencia 3,4,5, etc y por cada led que aumentes tienes que sumarle uno al numero que se encuentra dentro del corchete de la variable matriz y un numero mas por cada led a la variable contador.
Saludos
Codigo:
int timer = 100;
int BUTTON = 12;
int BUTTON2 = 13;
int matriz [3] = {0, 1, 2};
int contador=3;
void setup() {
// put your setup code here, to run once:
pinMode(BUTTON,INPUT);
pinMode(BUTTON2,INPUT);
for(int pin=0;pin=0;pin--)
{
digitalWrite(matriz[pin],HIGH);
delay(timer);
digitalWrite(matriz[pin],LOW);
}
// put your main code here, to run repeatedly:
for(int pin=0;pin
amigo quisiera hacerte consultas sobre el arduino pasame tu facebook para preguntarte por favor, es una ayuda
gracias bro eres un crack, si me sirvió tu codigo
excelente man no se en que me equiboque pero el tulo esta bueno
int timer=100; //establecemos el tiempo de espera en milisegundos
int cont = 5; //indica que usamos 5 LEDs y por tanto 5 pines digitales
int matriz[5] = {5, 7, 9, 11, 13}; //la matriz contiene los cinco pines digitales usados y su orden
void setup(){
for (int pin=0; pin < cont; pin++){ //recorremos los 5 pines
pinMode (matriz [pin], OUTPUT); //establecemos la salida de cada pin
}
}
void loop () {
for (int pin=0; pin < cont; pin++) //recorremos los 5 pines
{
digitalWrite (matriz [pin], HIGH); //encendemos el LED que toca
delay (timer); //el LED permanece encendido el tiempo indicado en la variable timer
digitalWrite (matriz [pin], LOW); //transcurrido el tiempo de espera se apaga el LED
}
for (int pin=cont-1;pin>=0; pin --) //recorremos los 5 pines pero ahora en sentido contrario
{
digitalWrite (matriz [pin], HIGH); //encendemos el LED que toca
delay (timer); //el LED permanece encendido el tiempo indicado en la variable timer
digitalWrite (matriz [pin], LOW); //transcurrido el tiempo de espera se apaga el LED
}
}
excelente explicación, esto es lo que estaba buscando porque programe este ejemplo con lenguaje C pero en Mikroc gracias otra vez excelente explicación
Si funciona, hay un pequeño error que ya han mencionado anteriormente pero te hace pensar para descubrirlo, gracias por el aporte.
y si sabe porque no colabora
haga el favor y ayude men
Funciona a la perfección, basta con analizar los "for"
int timer = 80;int matriz [5] = {5,7,9,11,13};int cont = 5;void setup() {
// put your setup code here, to run once:
for ( int pin = 0; pin < cont ; pin ++ ) { pinMode (matriz [pin], OUTPUT);
}
}void loop() {
// put your main code here, to run repeatedly:
for ( int pin = 0 ; pin < cont ; pin ++ )
{
digitalWrite (matriz [pin], HIGH);
delay (timer);
digitalWrite (matriz [pin], LOW);
}
for (int pin = cont -1 ; pin >=0; pin --)
{
digitalWrite (matriz [pin], HIGH);
delay (timer);
digitalWrite (matriz[pin], LOW);
}
}
gracias, gracias a ti he conseguido aprobar, te quiero .
Interesante y detallado el video, si puedes haz uno con efecto de estrella fugaz ida y vuelta.
Gracias Roberto, estoy preparando el video que me has pedido, en menos de una semana estará subido.
Un saludo.
Excelentes videos, gracias Tuto!!!
hey bro y sabes poner un potenciometro para contralar la velocidad de la secuencia
Excelente vídeo, ¿Como le podría hacer para conectar aproximadamente 45 leds para que igualmente prendan en secuencia?
Si no hay suficientes puertos, espero me puedas ayudar con una solución. Gracias..
Me dice el siguiente error con la matriz, allguien me ayuda?
exit status 1
array must be initialized with a brace-enclosed initializ
No he podido evitar fijarme que en los pines "5" y "13" hay más retardo que en los demás.Lo he comprobado en mi arduino con el mismo código que explicas subiendo el valor de delay y efectivamente tarda casi el doble. ¿A qué se debe esto? Gracias.
Gracias muy buen video, disculpa me gustaria saber como hacer este mismo codigo para que al presionar un boton de pc digamos A, encienda la secuencia, saludos me suscribo, espero respuesta
interesante, si pudieras hacer un ejemplo con pilas y colas, seria interesante igual.
ayúdame está mostrando este erro : exit status 1
initializer fails to determine size of 'matriz'
tal vez puedes hacerle con un enlace en java, pares de botones inicio, paro, reanudar, fin. gracias
hola, como estas. necesito ayuda. necesito una secuencia que enciendan progresivamente pero que el anterior no se apage. como lo puedo hacer?? grciass
int x;
int tiempo=200;
void setup() {
for(x=4;x
Resulto, sale de 10... Gracias amigo...
int timer = 100;
int matriz [] = {2, 5, 7};
int cont = 3;
void setup() {
for (int pin = 0; pin < cont; pin++)
{
pinMode(matriz[pin], OUTPUT);
}
}
void loop() {
for ( int pin = 0 ; pin < cont; pin++ )
{
digitalWrite(matriz[pin], HIGH);
delay(timer);
digitalWrite(matriz[pin], LOW);
}
for (int pin = cont - 1 ; pin >= 0; pin --)
{
digitalWrite(matriz [pin], HIGH);
delay(timer);
digitalWrite(matriz [pin], LOW);
}
}
Las resistencias son de 300 ohm?
Hola buenas, tengo un problema al realizar un proyecto con Arduino, me podrias ayudar?
gracias, me gusto mucho la explicacion
pongo el código pero me dice error, ya lo revisé varias veces. Podrías escribir el código en la descripción porfa?
me podes pasar la programacion es que no se mira nada en el video
hoye quiero acer uno que tenga un prendido y apagado pero con un sensor de sonido como le ago??
Funciona con cualquier arduino? Yo uso el arduino uno y cuando pongo"subir", me aparece "problema subiendo a la placa" ya lo solucione: es que tenia que enchufar bien el USB al arduino luego seleccionar el puerto que usaba 😅
Y para hacerlo con millis?
de cuanto son las resistencias
Disculpa, en la segunda linea me marca en rojo, nose que sera el error, intento saber que es pero no doy con el problema, se te agradeceria si me pudieras ayudar...
int timer = 100;
int aatriz [] = (5, 7, 9, 11, 13)
+Jocsan Irribarra los valores de la matriz van dentro de llaves {} :D y al final con ;
buen video ,mas bn si pudieras hacer con efectos de un cubo de 3x3x3 ....
Você poderia desenvolver um contador de 2 em 2 que no total daria 4 dentes sempre em alto e baixo
Tengo problemas en distingir las llaves de los parentesis. No funciona.
¿Puedes poner imagenes mas definidas?
Y SI QUISIERA HACER QUE ESTA SECUENCIA PUEDA FUNCIONAR CON UN PULSADOR
EN EXACTO ESTE EJERCICIO
Con un pulsador haga que 8 leds conectados en el puerto B, se enciendan de derecha a izquierda uno a la vez, empezando de B0 a B7, al final este último permanece encendido, con otro pulsador haga que los leds se desplacen uno a uno hacia la derecha, es decir desde B7 que fue el último y que está actualmente encendido se desplace hasta B0, las pausas son de 300 mls.
Va muy bien, crack
int timer = 100;
int matriz[] = {5,7,9,11,13};
int cont = 5;
void setup() {
for (int pin = 0; pin < cont; pin++)
{
pinMode (matriz[pin], OUTPUT);
}
}
void loop() {
for ( int pin = 0; pin < cont; pin++)
{
digitalWrite (matriz[pin], HIGH);
delay (timer);
digitalWrite (matriz[pin], LOW);
}
for ( int pin = cont -1; pin >= 0; pin--)
{
digitalWrite (matriz[pin], HIGH);
delay (timer);
digitalWrite (matriz[pin], LOW);
}
}
de cuanto son las resistencias?
enrique glez 220 ohm
Y con millis cómo sería
No me funciono me da error con los INT
bueno, pero l calidad de la imagen no me ayuda para leer el código.
el codigo esta mal, detecta un error y no puedo solucionar, podrias arreglarlo
+cesar reyes
int timer = 100;
int matriz [] = {5, 7, 9, 11, 13};
int cont = 5;
Alguien sabe cómo son los codios
muy bueno ,
eso no me quedo bien, sigue apareciendo el error en la matriz¡¡
así es el código correcto;
int timer=50;
int matriz []={0,1,2,3,4,5};
int cont=6;
void setup()
{
for(int pin=0; pin
puto amo, hasme un ijo wapo
aydaaa me da un error
int timer = 100;
int matriz [] = (5, 7, 9, 11, 13)(aqui esta el error)
int cont = 5;
void setup() {
for ( int pin = 0; pin < cont ; pin++ )
pinMode (matriz [pin], OUTPUT);
)
}
void loop(){
for ( int pin =0 ; pin < cont ; pin --)
(
digitalWrite (matriz [pin], HIGH);
delay (timer);
digitalWrite (matriz [pin], LOW);
)
}
buen video
Hola, me encanto el video, yo quiero hacer algo asi: tener un secuenciador de 25 leds y despues de unos 10 segundos esos primero 25 leds se apaguen y prenda otra hilera de 25 leds secuenciados y despues de 10 segundos se apague esta segunda fila de 25 leds y prenda una tercer fila de 25 leds secuenciados tambien y a los 10 segundos repetir el ciclo, alguien podria ayudarme? es para una tarea de la escuela, soy estudiante de electronica. Gracias de antemano
Pones 25 leds en paralelo con su respectiva resistencia
No te entendi Genaro.
sepa explicar bien para los que estan iniciando
No se ve bien el código.
mama mia que mal programas poniendo una variable a el tamaño de la matriz.. se puede conseguir ese tamao de otras formas y no queda tan mal
no funciona men en matriz
No me funciona
Me da un montón de errores, y está calcado de el vídeo. : (
nose como la haces mi estimado pero tu codigo esta mal nose q haces para q pueda correr tus programas ninguno funciona..!!! fraude
waldo ustariz prueba este
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int led6 = 7;
int led7 = 8;
int led8 = 9;
void setup() {
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
}
void loop() {
digitalWrite(2,HIGH);
delay(150);
digitalWrite(3,HIGH);
delay(150);
digitalWrite(4,HIGH);
delay(150);
digitalWrite(5,HIGH);
delay(150);
digitalWrite(6,HIGH);
delay(150);
digitalWrite(7,HIGH);
delay(150);
digitalWrite(8,HIGH);
delay(150);
digitalWrite(9,HIGH);
delay(150);
digitalWrite(2,LOW);
delay(50);
digitalWrite(3,LOW);
delay(50);
digitalWrite(4,LOW);
delay(50);
digitalWrite(5,LOW);
delay(50);
digitalWrite(6,LOW);
delay(50);
digitalWrite(7,LOW);
delay(50);
digitalWrite(8,LOW);
delay(50);
digitalWrite(9,LOW);
delay(50);
digitalWrite(2,HIGH);
delay(50);
digitalWrite(3,HIGH);
delay(50);
digitalWrite(4,HIGH);
delay(50);
digitalWrite(5,HIGH);
delay(50);
digitalWrite(6,HIGH);
delay(50);
digitalWrite(7,HIGH);
delay(50);
digitalWrite(8,HIGH);
delay(50);
digitalWrite(9,HIGH);
delay(50);
digitalWrite(2,LOW);
delay(50);
digitalWrite(3,LOW);
delay(50);
digitalWrite(4,LOW);
delay(50);
digitalWrite(5,LOW);
delay(50);
digitalWrite(6,LOW);
delay(50);
digitalWrite(7,LOW);
delay(50);
digitalWrite(8,LOW);
delay(50);
digitalWrite(9,LOW);
delay(50);
digitalWrite(9,HIGH);
delay(50);
digitalWrite(8,HIGH);
delay(50);
digitalWrite(7,HIGH);
delay(50);
digitalWrite(6,HIGH);
delay(50);
digitalWrite(5,HIGH);
delay(50);
digitalWrite(4,HIGH);
delay(50);
digitalWrite(3,HIGH);
delay(50);
digitalWrite(2,HIGH);
delay(50);
digitalWrite(9,LOW);
delay(50);
digitalWrite(8,LOW);
delay(50);
digitalWrite(7,LOW);
delay(50);
digitalWrite(6,LOW);
delay(50);
digitalWrite(5,LOW);
delay(50);
digitalWrite(4,LOW);
delay(50);
digitalWrite(3,LOW);
delay(50);
digitalWrite(2,LOW);
delay(50);
digitalWrite(9,HIGH);
delay(50);
digitalWrite(8,HIGH);
delay(50);
digitalWrite(7,HIGH);
delay(50);
digitalWrite(6,HIGH);
delay(50);
digitalWrite(5,HIGH);
delay(50);
digitalWrite(4,HIGH);
delay(50);
digitalWrite(3,HIGH);
delay(50);
digitalWrite(2,HIGH);
delay(50);
digitalWrite(9,LOW);
delay(150);
digitalWrite(8,LOW);
delay(150);
digitalWrite(7,LOW);
delay(150);
digitalWrite(6,LOW);
delay(150);
digitalWrite(5,LOW);
delay(150);
digitalWrite(4,LOW);
delay(150);
digitalWrite(3,LOW);
delay(150);
digitalWrite(2,LOW);
delay(5000);
}
***** hacer este codigo tan largo es lo que queremos evitar, pero funciona
+raul antonio contreras Crack, aca te encuentro
Hola
marca un error
Como lo haces esta mal hecho :s
TU CÓDIGO ESTÁ MAL Y NO ES LEGIBLE, POR FAVOR CHÉCALO Ó SI FUERAS TAN AMABLE DE COMPARTIR EL CÓDIGO EN BLOG DE NOTAS O ALGO.
GRACIAS
int timer = 100;
int matriz [] = {5, 7, 9, 11, 13};
yo crei que eran parentesis,pero son llaves las que se ponen y al final de esta linea de codigo se pone punto y coma
me pones mazo noerviosso, no se ve una mierda
PinMode
de cuanto son las resistencias?
moralloquendo 220
me da error en la primera matriz
a mi igual
No me funciona