Pages: [1]   Go Down
Author Topic: Presentacion y consulta  (Read 552 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.smiley-wink
Logged

0
Offline Offline
Edison Member
*
Karma: 8
Posts: 1040
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Me imagino que te refieres a esto

Code:
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:
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


Logged

Trabajando en ...

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

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

Donostia
Offline Offline
God Member
*****
Karma: 3
Posts: 743
elektronikadonbosco
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

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
Logged

Alicante
Offline Offline
Sr. Member
****
Karma: 2
Posts: 413
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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

Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.
Logged

Alicante
Offline Offline
Sr. Member
****
Karma: 2
Posts: 413
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok. Muchas gracias smiley-wink

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
Logged

0
Offline Offline
God Member
*****
Karma: 1
Posts: 524
Arduino inside
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.
Logged

Pages: [1]   Go Up
Jump to: