Go Down

Topic: Presentacion y consulta (Read 600 times) previous topic - next topic

c0c0l0c0

Muy buenas a todos los componentes de este foro. Me presento ante todos vosotros, soy Carlos de Torrevieja. Tengo muy poca experiencia en esto....mas bien nada, pero necesito una decoracion electronica de leds y tantisimo he oido hablar de esto que me interesa mucho, y necesito haceros una consulta a los profesionales.

Para ello, tengo una fila de 8 o 10 leds y un pulsador.
Necesito que con un pulsador se vayan encendiendo leds de la siguente forma:
1ª pulsacion- deben hacer un efecto "rata"....vamos, como si la luz pasara del lednº 1 al led nº 8 quedando este ultimo encendido.
2ª pulsacion- igual que la primera pero quedandose el 7º led (ahora tendria que haber 2 leds encendidos)
3ª pulsacion- igual que la segunda y la primera pero dejando el 6º led encendido tambien

Y asi hasta que se queden todos los leds encendidos. Entonces con la ultima pulsacion (si hubiese 8 leds, seria la 9ª pulsacion) deben apagarse todos.

Si podeis hecharme un cable, os estare eternamente agradecido.
Si este post no estuviese bien colocado, o no procediese, pido mil disculpas y autorizo al administrador a bloquearlo o cambiarlo donde proceda.

Espero vuestras respuestas. MUCHAS GRACIAS DE ANTEMANO.;)

flico

Me imagino que te refieres a esto

Code: [Select]

digitalWrite(ledPin1, HIGH);   // enciendo el led1
  delay(1000);                  // espero un segundo
  digitalWrite(ledPin2, HIGH);    // enciendo el led2
  digitalWrite(ledPin1, LOW);    // apago el led1
delay(1000);                  // espero un segundo
  digitalWrite(ledPin3, HIGH);    // enciendo el led3
  digitalWrite(ledPin2, LOW);    // apago el led2
delay(1000);                  // espero un segundo
  digitalWrite(ledPin4, HIGH);    // enciendo el led4
  digitalWrite(ledPin3, LOW);    // apago el led3


o haciendolo directamente

Code: [Select]

DDRD = B11111110;  // configura los pines del 1 al 7 como salidas y el pin 0 como entrada

PORTD = B00000010; // enciendo el led 1
delay(1000);                  // espero un segundo
PORTD = B00000100; // enciendo el led 2
delay(1000);                  // espero un segundo
PORTD = B00001000; // enciendo el led 3
delay(1000);                  // espero un segundo


Trabajando en ...

    * Control Domotico (En montaje ...)
    http://casitadomotica.blogspot.com/
 

[url=https://bitbucket.org/fmalpartida

ionhs

Es un ejercicio relativamente sencillo que si sigues los tutoriales (http://arduino.cc/es/Tutorial/HomePage) de la página arduino en poco tiempo deberías de ser capaz de realizarlo más o menos.

En el código de flico cambia de estado cada 1 segundo, en lo que tu quieres hacer cambia de estado cuando se pulsa el botón. Si sigues los tutoriales (comprendiendo lo que haces, no hacer por hacer) blink y button creo que se te ocurrirá como hacer todo el código. Si te atascas con algo en concreto pon el código y seguro que a alguien se le ocurre como solucionarlo. Salu2

PascuaL

Otra manera de hacerlo es con Case y contador de pulsaciones.

c0c0l0c0

Muchisimas gracias por vuestra respuesta.

He estado mirando los tutos, y la verdad...hay algunos, como el de button por ejemplo que el codigo no se ve....parece que la url de la imagen no funciona....

Por lo poco que entiendo, parece que quiero pillar algo...pero esta muy lejos. Esto me va a costar horas...ya vereis...

Volviendo al tema de la programacion....cuando se pulsa el boton, a mi me interesa que pasen los leds como si fuese una rafaga....osea que sea muy rapido, como mucho 1 seg en recorrer los 8 leds, y que se quede encendido el 8º.....supongo que modificando los delay sera suficiente....pero bueno, no quiero ser pesado....antes de seguir dando la tabarra, voy a ver si me entra el codigo en la cabeza y logro comprender algo.

Lo dicho, que toda ayuda es bienvenida, y mas cuando es para un novato como yo.

MUCHAS GRACIAS.
Muchas gracias.

PascuaL

Si no te sale el código, en la barra de direcciones cambia "es" por "en". Como dices debe haber un error. Con ésto cambiad el idioma a inglés y ya se te verá bien.

Si lo que quieres es hacer que cada vez que pulses haga algo, no te bastará con el ejemplo de button. Empieza por ahí que es lo básico de lo básico. Luego te busco unos links y te los paso cuando pueda.

c0c0l0c0

Ok. Muchas gracias ;)

Es complicado explicar lo que necesito, lo que deben hacer los leds, pero voy a hecharle un ojo a los codigos y voy a ver si voy comprendiendo algo, que como dije soy muuuy novato. :smiley-roll-sweat: :smiley-roll-sweat:

nayma

tranquilo todo es empezar. Empieza por un led con el Blink. Después con un botón y un led. Después ya verás que es más fácil.

Go Up