Go Down

Topic: cubo led 3x3x3 (Read 2737 times) previous topic - next topic

tazma

Dec 07, 2012, 07:09 pm Last Edit: Dec 10, 2012, 06:43 pm by tazma Reason: 1
hola e montado un cubo led 3x3x3 con este codigo que no es mio

lo que me gustaría ahora es mas variaciones de juego de luces segun tengo entendido eso se hace modificado esto es cierto o hay que modificarlo de otro modo

agradeceria una pequeña explicacion

salu2



Code: [Select]
digitalWrite(Filas[1], HIGH);
digitalWrite(Columnas[1], HIGH);

delay(75);

digitalWrite(Columnas[1], LOW);
digitalWrite(Filas[1], HIGH);



codigo
int Columnas[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};

int Filas[] = {12, 11, 10};
int RandFila;     //Variable para fila aleatoria
int RandColumna;  //Variable para columna aleatoria

void setup()
{
  int contador;

  for (int contador = 0; contador < 10; contador++){
    pinMode(Columnas[contador], OUTPUT); }

  for (int contador = 0; contador < 4; contador++){
    pinMode(Filas[contador], OUTPUT); }
}

void loop()
{
  RandLed();
}

void RandLed()
{
  RandFila = random(0,3);
  RandColumna = random(0,9);

  digitalWrite(Filas[RandFila], HIGH);
  digitalWrite(Columnas[RandColumna], HIGH);

  delay(75);

  digitalWrite(Filas[RandFila], LOW);
  digitalWrite(Columnas[RandColumna], LOW);

  delay(50);
}


PepeChorva

Pues con tanto espacio en blanco hace que sea asquerosillo de leer (sin acritud). Edita el código y elimina tanto salto de linea, que así es duro leerlo.
Code: [Select]

int Columnas[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
int Filas[] = {12, 11, 10};
int RandFila;     //Variable para fila aleatoria
int RandColumna;  //Variable para columna aleatoria


void setup(){
  int contador;
  for (int contador = 0; contador < 10; contador++){
    pinMode(Columnas[contador], OUTPUT); }
  for (int contador = 0; contador < 4; contador++){
    pinMode(Filas[contador], OUTPUT); }
}

void loop(){
  RandLed();
}

void RandLed(){
  RandFila = random(0,3);
  RandColumna = random(0,9);
  digitalWrite(Filas[RandFila], HIGH);
  digitalWrite(Columnas[RandColumna], HIGH);
  delay(75);
  digitalWrite(Filas[RandFila], LOW);
  digitalWrite(Columnas[RandColumna], LOW);
  delay(50);
}


por lo que he visto en el código, enciende un led aleatoriamente en el loop, durante 75 ms y luego lo apaga.

---
Saludos,
José Chorva
www.pepechorva.com
@pepechorva on twitter

tazma

hola no puedo creer que con la inteligencia que hay en este foro no me pueda dar nadie una contestacion creo que no pido mucho
como ya digo soy un mero aficionado que me gusta la electronica pero no tengo medios para ir
ha estudiar y como  entendereis esto no es facil
salu2

PepeChorva

Arriba de los emoticonos, hay un botón que pone # eso es para poner el código dentro.

Por cierto, querías una explicación de lo que hace el código y te la he dado, si lo que quieres es que te haga yo las variaciones, pues va a ser que no, lo siento…

Deberías mirar qué es lo que hacen las instrucciones ;
Code: [Select]
random(0,3);
  digitalWrite(Filas[RandFila], HIGH);
  delay(75);
  digitalWrite(Filas[RandFila], LOW);


Te explico un poco el cubo de leds, está programado como una matriz  de 9 columnas x 3 filas, por eso usa Columnas[] y Filas[] con esa configuración.
A partir de ahí, lo que quieras hacer con el cubo, depende de tu imaginación.
---
Saludos,
José Chorva
www.pepechorva.com
@pepechorva on twitter

tazma

hola gracias no quiero que me aga nadie nada jeje solo un poco de teorico
muchas gracias

nayma

pues yo opino como PepeChorva
el código que tienes lo hace aleatorio, si quieres encender uno en concreto sustituye el 0 por el que tu quieras, fila tiene que ser un valor entre 0 y 2, columna un valor entre 0 y 8. Las matrices empiezan por el 0.
digitalWrite(Filas[0], HIGH);
digitalWrite(Columnas[0], HIGH);

tazma

ok gracias ya voy haciendo pruebas

prueba con este code

http://compassionchurch.byethost8.com/ledcode.txt

fuente

http://www.youtube.com/watch?v=ryrtH-VQ_8Y

tazma

ok gracias otro code para practicar  :)

Go Up