MINIJUEGO con ARDUINO para MEJORAR LA MEMORIA || SIMON DICE || [proyecto explicado paso a paso]

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ม.ค. 2025

ความคิดเห็น • 209

  • @RobotUNO
    @RobotUNO  ปีที่แล้ว +5

    👇Más Proyectos de Electronica y Arduino👇
    www.robotuno.com/

  • @alfredogimenez6217
    @alfredogimenez6217 ปีที่แล้ว +14

    funciona de lujo, cambié en la linea 150 "duracionNotas" por "duracionNotas[i]" y me anduvo, también verifiquen que los leds tengan negativo conectado

  • @Eliassam5
    @Eliassam5 ปีที่แล้ว +5

    Excelente, me funcionó a la perfección. Para los que preguntan por el circuito eléctrico y la programación, está en los links de la descripción. Saludos desde Argentina

    • @rephaen11
      @rephaen11 8 หลายเดือนก่อน +1

      oye una pregunta al hacerlo no te dio errores, tu crees que si lo hago ahora con el codigo seguira sirviendo ?

    • @Eliassam5
      @Eliassam5 8 หลายเดือนก่อน

      @@rephaen11 el código es el mismo, verificaste bien errores de conexión en todos los pines? Es habitual y le pasó, que queden desconectado pero visualmente se veían bien. Otra cosa, revisa las salidas del Arduino correctas, en mi caso use el Leonardo.

    • @rephaen11
      @rephaen11 8 หลายเดือนก่อน

      @@Eliassam5 puse el código tal y cómo esta en la pagina y ma marca error y muchas líneas

  • @bottarinifranco1784
    @bottarinifranco1784 4 ปีที่แล้ว +10

    Gracias genio quedo hermoso el proyecto muchas gracias por hacer estos vídeos tan interesantes seguí haciendo así mas vídeos explicando lo que vas haciendo y todo vas muy bien.

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +2

      Muchisimas gracias!! Un saludo compañero!!

    • @brayanokoner1521
      @brayanokoner1521 7 หลายเดือนก่อน

      ​@@RobotUNO me pasa el código del Arduino xff

  • @pablobustos9753
    @pablobustos9753 ปีที่แล้ว +6

    En nuestro caso usando el cableado del video y el código del enlace, tuvimos que modificar las líneas de lectura de los botones por 'if(digitalRead(ENTRADA_C) == LOW){' y funcionó!! muy divertido

    • @JahirGarciaAguilar
      @JahirGarciaAguilar ปีที่แล้ว

      Hola , en que linea se modifica? saludos

    • @pablobustos9753
      @pablobustos9753 ปีที่แล้ว

      Ya está corregido en la página ahora. La modificación era cambiar a LOW en las líneas 81, 95, 109 y 123

    • @maxramirez8133
      @maxramirez8133 ปีที่แล้ว

      Bro y si al parecer es el codigo porque me pasa que prenden los colores con sonido y luego me da el sonido que perdi y sucesivamente se repite pero no me deja precionar boton para jugarlo

    • @raulapishin2052
      @raulapishin2052 2 หลายเดือนก่อน

      @@maxramirez8133 si a mi me pasa lo mismo alquien sabe como se arregla como se arregla...

  • @emiliodeluna9242
    @emiliodeluna9242 ปีที่แล้ว +2

    NOTA: cuando hagan la conexion, metanse al esquematico del link donde viene el programa, por que como el conecta los push botton esta mal

  • @155097170
    @155097170 5 หลายเดือนก่อน

    Una maravilla... Funciona 10 puntos. Muchas gracias

  • @AlexColque-c8q
    @AlexColque-c8q หลายเดือนก่อน +1

    Hola me salta un error de (generasecuencia();) dice q no esta declarado ,pero si esta declarado nose si alguien me puedo ayudar en eso xf

  • @alejandromores6406
    @alejandromores6406 4 ปีที่แล้ว +4

    hola disculpame, una vez que subo el codigo prenden 2 leds, no me da tiempo ni a tocar el boton y empiezan a titilar digamos todas como si hubiera perdido y empieza de nuevo y hace exactamente lo mismo, que puede ser??

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +1

      Te has asegurado de que el montaje sea el correcto?? No se cual puede ser el error....

    • @alejandromores6406
      @alejandromores6406 4 ปีที่แล้ว +1

      @@RobotUNO Sisi, el montaje esta tal cual lo mostraste en el video

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +2

      Pues no se a que se puede deber... prueba a volver a copiar el codigo, por si acaso...

    • @Tato3037
      @Tato3037 4 ปีที่แล้ว +2

      Hola Alejandro, a mi me sucede lo mismo que a vos. ¿Pudiste solucionarlo? Avisame cual es la posible solucion. Desde ya muchas gracias
      Por cierto lo que nos compartiste @Robot UNO, muy bueno!!!!

    • @alejandromores6406
      @alejandromores6406 4 ปีที่แล้ว +1

      @@Tato3037 holaaa, lo que me pasó a mí fue que yo utilizaba los botones grandes, no sé si afecta en algo o no, desp utilizé los chiquitos y copié nuevamente el código y ahí me funciono

  • @EL_V8-GREGORYHD8
    @EL_V8-GREGORYHD8 ปีที่แล้ว +4

    Buenas, me puedes dar el diagrama de como armarlo, ya que lo hice no me funciono, pero los leds encendieron y el buzer no sono, plis.

    • @evelyncruz-j4o
      @evelyncruz-j4o หลายเดือนก่อน

      a mi me paso al reves JAJAJAJ

  • @luisdavidal1829
    @luisdavidal1829 ปีที่แล้ว

    Que onda viejo, mira. ¿El buzzer que usaste es pasivo o activo?

  • @ECHANIZCAMACHO
    @ECHANIZCAMACHO ปีที่แล้ว +1

    A mi me pasa q si conecto el positivo no hace nada y si lo desconecto inicia el juego pero inmediatamente pierdo. No da tiempo de presionar los botones.

    • @GlobalAnimeMix
      @GlobalAnimeMix ปีที่แล้ว

      Pudiste solucionarlo??? Me pasa lo mismo que a vos

    • @EL_D4N1C4RZ4
      @EL_D4N1C4RZ4 ปีที่แล้ว

      Me pasa lo mismo carnal, tendrás el fallo solucionado?

    • @maxramirez8133
      @maxramirez8133 ปีที่แล้ว

      Me paso lo mismo lo pudieron solucionar?

  • @cristinavelasco6749
    @cristinavelasco6749 ปีที่แล้ว +2

    Ola...me puedes compartir el código completo porfa

    • @RobotUNO
      @RobotUNO  ปีที่แล้ว

      Hola! Tienes el enlace en la descripción

    • @hectorpuentessalim5694
      @hectorpuentessalim5694 ปีที่แล้ว

      @@RobotUNO Hice todo a la perfección pero solo realiza una secuencia de encendido de leds. Sabes que puede ser ?

  • @aleejaandroo
    @aleejaandroo 4 ปีที่แล้ว +2

    Que chuli! ❤️

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +1

      Muchas gracias Alejandro!

  • @saralourdespinedamelendez1366
    @saralourdespinedamelendez1366 7 หลายเดือนก่อน

    Que genial tu proyecto, me ha parecido muy chulo, es posible que me envíes en código para replicarlo en mi clase? Por cierto me ha encantado tu explicación 🤩

  • @mariobarberogarcia1044
    @mariobarberogarcia1044 2 ปีที่แล้ว +2

    Hola, puedo conseguir el codigo?

  • @Akita333
    @Akita333 3 ปีที่แล้ว +1

    Realicé el circuito y copié el código pero lo único que sucede es sonar la bocina. Que puede ser?

    • @alex_8485
      @alex_8485 2 ปีที่แล้ว

      Me pasa lo mismo

  • @davidgallego4116
    @davidgallego4116 2 ปีที่แล้ว +1

    Hola quisiera hacer el juego con 2 o 4 luces más. Se puede hacer?

  • @Julian_PR
    @Julian_PR 2 ปีที่แล้ว +4

    EL JUEGO SE JUEGA A SI MIISMO Y NO SE PUEDE JUGAR PERO PROBE SACAR LOS BOTONES Y SE JUEGA SOLO IGUAL NO SE QUE HACER NECESITO ¡AYUDA!

    • @SantiagoAFR
      @SantiagoAFR 8 หลายเดือนก่อน

      Como asi que juega solo? no es necesario los botones de abajo?

  • @encarnalopezdelbano4187
    @encarnalopezdelbano4187 4 วันที่ผ่านมา

    Me encanta tu proyecto, me puedes pasar el código? Gracias

  • @cristobaltorovasquez6736
    @cristobaltorovasquez6736 4 ปีที่แล้ว +2

    Hola cuando pongo el código dice : In function 'void melodiaError()':

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +1

      No se a que se puede deber el error, se lo paso de nuevo por si hubo algun problema

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +6

      //Canal de TH-cam -> RobotUNO
      //Juego Simon dice
      #define BUZZER 7
      #define ENTRADA_A 13
      #define ENTRADA_B 12
      #define ENTRADA_C 11
      #define ENTRADA_D 10
      #define SALIDA_A 2
      #define SALIDA_B 3
      #define SALIDA_C 4
      #define SALIDA_D 5
      int melodia[ ] = {262, 196, 196, 220, 196, 0, 247, 262};
      int duracionNotas[] = {4, 8, 8, 4, 4, 4, 4, 4};
      int nivelActual = 1;
      int velocidad = 500;
      const int NIVEL_MAX = 100;
      int secuencia[NIVEL_MAX];
      int secuenciaUsuario[NIVEL_MAX];
      void setup(){
      pinMode(ENTRADA_D, INPUT);
      pinMode(ENTRADA_C, INPUT);
      pinMode(ENTRADA_B, INPUT);
      pinMode(ENTRADA_A, INPUT);
      pinMode(SALIDA_A, OUTPUT);
      pinMode(SALIDA_B, OUTPUT);
      pinMode(SALIDA_C, OUTPUT);
      pinMode(SALIDA_D, OUTPUT);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      }
      void loop(){
      if(nivelActual == 1){
      generaSecuencia();
      muestraSecuencia();
      leeSecuencia();
      }
      if(nivelActual != 1){
      muestraSecuencia();
      leeSecuencia();
      }
      }
      void muestraSecuencia(){
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      for(int i = 0; i < nivelActual; i++){
      if( secuencia[i] == SALIDA_A ){
      tone(BUZZER, 200);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_B ){
      tone(BUZZER, 300);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_C ){
      tone(BUZZER, 400);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_D ){
      tone(BUZZER, 500);
      delay(200);
      noTone(BUZZER);
      }
      digitalWrite(secuencia[i], HIGH);
      delay(velocidad);
      digitalWrite(secuencia[i], LOW);
      delay(200);
      }
      }
      void leeSecuencia(){
      int flag = 0;
      for(int i = 0; i < nivelActual; i++){
      flag = 0;
      while(flag == 0){
      if(digitalRead(ENTRADA_D) == LOW){
      digitalWrite(SALIDA_D, HIGH);
      tone(BUZZER, 500);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_D;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_D, LOW);
      }
      if(digitalRead(ENTRADA_C) == LOW){
      digitalWrite(SALIDA_C, HIGH);
      tone(BUZZER, 400);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_C;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_C, LOW);
      }
      if(digitalRead(ENTRADA_B) == LOW){
      digitalWrite(SALIDA_B, HIGH);
      tone(BUZZER, 300);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_B;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_B, LOW);
      }
      if(digitalRead(ENTRADA_A) == LOW){
      digitalWrite(SALIDA_A, HIGH);
      tone(BUZZER, 200);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_A;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_A, LOW);
      }
      }
      }
      secuenciaCorrecta();
      }
      void generaSecuencia(){
      randomSeed(millis());
      for(int i = 0; i < NIVEL_MAX; i++){
      secuencia[i] = random(2,6);
      }
      }
      void melodiaError(){
      for(int i = 0; i < 8; i++){
      int duracionNota = 1000/duracionNotas[i];
      tone(BUZZER, melodia[i],duracionNotas);
      int pausaEntreNotas = duracionNota * 1.30;
      delay(pausaEntreNotas);
      noTone(BUZZER);
      }
      }
      void secuenciaError(){
      digitalWrite(SALIDA_A, HIGH);
      digitalWrite(SALIDA_B, HIGH);
      digitalWrite(SALIDA_C, HIGH);
      digitalWrite(SALIDA_D, HIGH);
      delay(250);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      delay(250);
      melodiaError();
      nivelActual = 1;
      velocidad = 500;
      }
      void secuenciaCorrecta(){
      if(nivelActual < NIVEL_MAX);
      nivelActual++;
      velocidad -= 50;
      delay(200);
      }

    • @cristobaltorovasquez6736
      @cristobaltorovasquez6736 4 ปีที่แล้ว +1

      Listo gracias

  • @joesaacrb2088
    @joesaacrb2088 4 ปีที่แล้ว +2

    Disculpa cuando subo el programa al Arduino marca error
    Que puedo hacer?

  • @hetrixyeon92
    @hetrixyeon92 11 วันที่ผ่านมา

    Hola, tengo un problema, sucede que los leds solo se prenden si toco los botones, pero no me da los leds aleatorios

  • @KarenMonserratEspíndolaPáez
    @KarenMonserratEspíndolaPáez หลายเดือนก่อน

    Cuál es la introducción de este provecyo

  • @raulapishin2052
    @raulapishin2052 2 หลายเดือนก่อน

    Realice el codigo y el montaje tal cual y solo inicia el juego y una sesion de luces no me deja hacer nada cuando automaticamente pierdo, alguien sabe lo puedo solucionar

  • @alexposvic1903
    @alexposvic1903 4 ปีที่แล้ว +2

    hola fiera gracias por enseñarnos algo nuevo (tengo un problema con el codigo)
    he copiado tanto el esquema visual que has segido como el codigo que has dejado en los comentarios y no funciona (por lo que veo el codigo salta solo no deja pulsar los botones y cada dos acciones pierdes intento darle a reset a la placa y nada) ¿que puedo hacer?

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +1

      Quizas sea un problema de las conexiones de los botones, comprueba que estan correctamente conectados. Si no es eso, no se a que se puede deber.

    • @Julian_PR
      @Julian_PR 2 ปีที่แล้ว

      A MI ME PASO LO MISMO POR QUE SERA??????

  • @NskskksMsksksk
    @NskskksMsksksk ปีที่แล้ว

    Yo nomas lo conecto y sempiesa ensendiendo dos les y no cambia de esos y no me deja presionar los botones y el código esta correcto y las conexiones también, que esta pasando?

    • @maxramirez8133
      @maxramirez8133 ปีที่แล้ว

      Pudiste solucionar bro me pasa lo mismo no deja ni presionar el boton

  • @clevicalexanderaquinoleone1476
    @clevicalexanderaquinoleone1476 10 หลายเดือนก่อน +1

    Saludos, me encantan tus proyectos, podrian enviarme el codigo x favor

  • @tobiasgarcia1575
    @tobiasgarcia1575 2 ปีที่แล้ว

    Sigue asi bro!

  • @borjaalcon8173
    @borjaalcon8173 4 ปีที่แล้ว +2

    Muy bueno!!!! una pregunta por alguna razon cuando el arduino esta conectado a la computadora no pasa nada pero cuando lo conecto con la pila de 9v después de un rato, las luces se pones locas y empieza a titilar una luz en el arduino (L) que puede ser? cuando hice el proyecto del "ping pong" me paso lo mismo... saludos!!!

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +2

      La verdad es que no se porque pasa eso, ¿Has comprobado que la pila no este muy gastada? solo se me ocurre eso

    • @mariokempes5470
      @mariokempes5470 4 ปีที่แล้ว

      @@RobotUNO a mi me pasa q a cierto nivel se empiezan a apagar, o muy tenues las luces, estando conectada a la pc

  • @baconpro123xdz
    @baconpro123xdz 3 หลายเดือนก่อน

    oye ami no me funciona por que cuando presiono amarillo no pasa nada y es infinito asta que presione otro y se reinicio pero el amarillo sige con un bucle

  • @irvingomezgarcia2501
    @irvingomezgarcia2501 หลายเดือนก่อน

    bro, ¿por qué me aparece: avrdude: stk500_recv(): programmer is not responding?

  • @Max_BA
    @Max_BA 5 หลายเดือนก่อน

    Me funciona bien el único problema es que siempre es la misma secuencia no se si se podra arreglar de alguna forma

  • @JuanJp
    @JuanJp ปีที่แล้ว

    me funciono muchas gracias

  • @AntonioCalle-sc8ov
    @AntonioCalle-sc8ov 9 หลายเดือนก่อน

    Como puedo programar al Arduino para que me guíe los juego de luces ya estoy con ese curso de electonica y ya tengo que en pesar a ser con el Arduino por fis

  • @maua.echeverria8882
    @maua.echeverria8882 3 ปีที่แล้ว +1

    Hola Bro, estuve intentando hacerlo, pero al ingresar el código en el ID Arduino me sale "Compilación error: error: 2 UNKNOWN: no FQBN providee", no se si puedas ayudarme, te agradecería, esto me gusta mucho... ya compre todo para probarlo... quedo atento a tu respuesta

    • @martinteam9923
      @martinteam9923 2 ปีที่แล้ว

      Me pasas el codigo

    • @MMoraga.
      @MMoraga. ปีที่แล้ว +1

      Tienes que especificarle al programa que placa Arduino estás usando.

  • @magie255
    @magie255 2 ปีที่แล้ว

    Los cables chiquitos son los mismos que los leds?

  • @mirandarodriguez3826
    @mirandarodriguez3826 หลายเดือนก่อน

    Hola, me podrías compartir el código?

  • @BiggieSlam
    @BiggieSlam ปีที่แล้ว

    hola! que pagina o programa utilizaste para crear el esquema en la pc?

  • @leonardorodil1603
    @leonardorodil1603 ปีที่แล้ว

    Una pregunta, cómo se llama ese tipo de buzzer? 🥴

  • @paolarojas1198
    @paolarojas1198 4 ปีที่แล้ว +3

    Me puedes compartir el código completo

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +1

      Por supuesto!!! aqui lo tienes Paula!

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +3

      //Canal de TH-cam -> RobotUNO
      //Juego Simon dice
      #define BUZZER 7
      #define ENTRADA_A 13
      #define ENTRADA_B 12
      #define ENTRADA_C 11
      #define ENTRADA_D 10
      #define SALIDA_A 2
      #define SALIDA_B 3
      #define SALIDA_C 4
      #define SALIDA_D 5
      int melodia[ ] = {262, 196, 196, 220, 196, 0, 247, 262};
      int duracionNotas[] = {4, 8, 8, 4, 4, 4, 4, 4};
      int nivelActual = 1;
      int velocidad = 500;
      const int NIVEL_MAX = 100;
      int secuencia[NIVEL_MAX];
      int secuenciaUsuario[NIVEL_MAX];
      void setup(){
      pinMode(ENTRADA_D, INPUT);
      pinMode(ENTRADA_C, INPUT);
      pinMode(ENTRADA_B, INPUT);
      pinMode(ENTRADA_A, INPUT);
      pinMode(SALIDA_A, OUTPUT);
      pinMode(SALIDA_B, OUTPUT);
      pinMode(SALIDA_C, OUTPUT);
      pinMode(SALIDA_D, OUTPUT);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      }
      void loop(){
      if(nivelActual == 1){
      generaSecuencia();
      muestraSecuencia();
      leeSecuencia();
      }
      if(nivelActual != 1){
      muestraSecuencia();
      leeSecuencia();
      }
      }
      void muestraSecuencia(){
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      for(int i = 0; i < nivelActual; i++){
      if( secuencia[i] == SALIDA_A ){
      tone(BUZZER, 200);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_B ){
      tone(BUZZER, 300);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_C ){
      tone(BUZZER, 400);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_D ){
      tone(BUZZER, 500);
      delay(200);
      noTone(BUZZER);
      }
      digitalWrite(secuencia[i], HIGH);
      delay(velocidad);
      digitalWrite(secuencia[i], LOW);
      delay(200);
      }
      }
      void leeSecuencia(){
      int flag = 0;
      for(int i = 0; i < nivelActual; i++){
      flag = 0;
      while(flag == 0){
      if(digitalRead(ENTRADA_D) == LOW){
      digitalWrite(SALIDA_D, HIGH);
      tone(BUZZER, 500);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_D;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_D, LOW);
      }
      if(digitalRead(ENTRADA_C) == LOW){
      digitalWrite(SALIDA_C, HIGH);
      tone(BUZZER, 400);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_C;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_C, LOW);
      }
      if(digitalRead(ENTRADA_B) == LOW){
      digitalWrite(SALIDA_B, HIGH);
      tone(BUZZER, 300);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_B;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_B, LOW);
      }
      if(digitalRead(ENTRADA_A) == LOW){
      digitalWrite(SALIDA_A, HIGH);
      tone(BUZZER, 200);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_A;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_A, LOW);
      }
      }
      }
      secuenciaCorrecta();
      }
      void generaSecuencia(){
      randomSeed(millis());
      for(int i = 0; i < NIVEL_MAX; i++){
      secuencia[i] = random(2,6);
      }
      }
      void melodiaError(){
      for(int i = 0; i < 8; i++){
      int duracionNota = 1000/duracionNotas[i];
      tone(BUZZER, melodia[i],duracionNotas);
      int pausaEntreNotas = duracionNota * 1.30;
      delay(pausaEntreNotas);
      noTone(BUZZER);
      }
      }
      void secuenciaError(){
      digitalWrite(SALIDA_A, HIGH);
      digitalWrite(SALIDA_B, HIGH);
      digitalWrite(SALIDA_C, HIGH);
      digitalWrite(SALIDA_D, HIGH);
      delay(250);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      delay(250);
      melodiaError();
      nivelActual = 1;
      velocidad = 500;
      }
      void secuenciaCorrecta(){
      if(nivelActual < NIVEL_MAX);
      nivelActual++;
      velocidad -= 50;
      delay(200);
      }

  • @angelnunez1953
    @angelnunez1953 ปีที่แล้ว

    Por favor me regala el código completo.
    Gracias

  • @Me--zl
    @Me--zl ปีที่แล้ว

    Hola amigo, me ha parecido muy interesante este proyecto y me preguntaba... Me puedes pasar el codigo a bloques de tinkercad porfas?? 😢😢

  • @heryckmunozcalderon2698
    @heryckmunozcalderon2698 ปีที่แล้ว

    seguí el video pero solo suena el buzzer como si siempre termino la partida , no me prenden los leds.. alguna idea ?

    • @llm2380
      @llm2380 ปีที่แล้ว

      Me pasa lo mismo, encontraste alguna solución a tu pregunta?

  • @enyayosiheygarridoreyna8704
    @enyayosiheygarridoreyna8704 11 หลายเดือนก่อน

    hola, no me funcionan los push botton

  • @davidsantiagovizcaino2069
    @davidsantiagovizcaino2069 ปีที่แล้ว +1

    Para el codigo

  • @alejandrorobles8741
    @alejandrorobles8741 4 หลายเดือนก่อน

    Me puedes ayudar con la programación del proyecto

  • @raulapishin2052
    @raulapishin2052 2 หลายเดือนก่อน

    Perdona el codigo donde esta?

  • @JorgeSanchez-ut6fs
    @JorgeSanchez-ut6fs 8 หลายเดือนก่อน +8

    Soy al único que el código no le sirve

    • @yandri.fonseca_
      @yandri.fonseca_ 6 หลายเดือนก่อน

      Ami tampoco 😭

    • @xthexghostx8213
      @xthexghostx8213 6 หลายเดือนก่อน

      Parece faltarle una llave al final

    • @noekass7151
      @noekass7151 6 หลายเดือนก่อน

      Nop, sigo sin encontrar el error

    • @danielsantamaria4576
      @danielsantamaria4576 หลายเดือนก่อน

      Si pudieron?

  • @nicoappiolaza5789
    @nicoappiolaza5789 2 ปีที่แล้ว

    Muy Bueno!!

  • @KARLADANIELALEOSMORENO
    @KARLADANIELALEOSMORENO ปีที่แล้ว

    Como se utiliza el codigo? Lo que pasa es que no se como comenzar el juego ni nada de eso
    alguen me puede ayudar?

    • @RobotUNO
      @RobotUNO  ปีที่แล้ว

      Tienes que descargarte la aplicacion de arduino IDE. a partir de ahi se puede cargar el codigo

  • @augustodediosdimasramirez6760
    @augustodediosdimasramirez6760 3 ปีที่แล้ว

    Porque cuando lo quiero iniciar no prende el led que empieza la secuencia?

  • @rodrigoperez3303
    @rodrigoperez3303 4 ปีที่แล้ว +1

    El código cuál es tengo que hacer un proyecto sobre esto 😢😢😢

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +3

      Aqui lo tienes!!

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +3

      //Canal de TH-cam -> RobotUNO
      //Juego Simon dice
      #define BUZZER 7
      #define ENTRADA_A 13
      #define ENTRADA_B 12
      #define ENTRADA_C 11
      #define ENTRADA_D 10
      #define SALIDA_A 2
      #define SALIDA_B 3
      #define SALIDA_C 4
      #define SALIDA_D 5
      int melodia[ ] = {262, 196, 196, 220, 196, 0, 247, 262};
      int duracionNotas[] = {4, 8, 8, 4, 4, 4, 4, 4};
      int nivelActual = 1;
      int velocidad = 500;
      const int NIVEL_MAX = 100;
      int secuencia[NIVEL_MAX];
      int secuenciaUsuario[NIVEL_MAX];
      void setup(){
      pinMode(ENTRADA_D, INPUT);
      pinMode(ENTRADA_C, INPUT);
      pinMode(ENTRADA_B, INPUT);
      pinMode(ENTRADA_A, INPUT);
      pinMode(SALIDA_A, OUTPUT);
      pinMode(SALIDA_B, OUTPUT);
      pinMode(SALIDA_C, OUTPUT);
      pinMode(SALIDA_D, OUTPUT);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      }
      void loop(){
      if(nivelActual == 1){
      generaSecuencia();
      muestraSecuencia();
      leeSecuencia();
      }
      if(nivelActual != 1){
      muestraSecuencia();
      leeSecuencia();
      }
      }
      void muestraSecuencia(){
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      for(int i = 0; i < nivelActual; i++){
      if( secuencia[i] == SALIDA_A ){
      tone(BUZZER, 200);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_B ){
      tone(BUZZER, 300);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_C ){
      tone(BUZZER, 400);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_D ){
      tone(BUZZER, 500);
      delay(200);
      noTone(BUZZER);
      }
      digitalWrite(secuencia[i], HIGH);
      delay(velocidad);
      digitalWrite(secuencia[i], LOW);
      delay(200);
      }
      }
      void leeSecuencia(){
      int flag = 0;
      for(int i = 0; i < nivelActual; i++){
      flag = 0;
      while(flag == 0){
      if(digitalRead(ENTRADA_D) == LOW){
      digitalWrite(SALIDA_D, HIGH);
      tone(BUZZER, 500);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_D;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_D, LOW);
      }
      if(digitalRead(ENTRADA_C) == LOW){
      digitalWrite(SALIDA_C, HIGH);
      tone(BUZZER, 400);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_C;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_C, LOW);
      }
      if(digitalRead(ENTRADA_B) == LOW){
      digitalWrite(SALIDA_B, HIGH);
      tone(BUZZER, 300);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_B;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_B, LOW);
      }
      if(digitalRead(ENTRADA_A) == LOW){
      digitalWrite(SALIDA_A, HIGH);
      tone(BUZZER, 200);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_A;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_A, LOW);
      }
      }
      }
      secuenciaCorrecta();
      }
      void generaSecuencia(){
      randomSeed(millis());
      for(int i = 0; i < NIVEL_MAX; i++){
      secuencia[i] = random(2,6);
      }
      }
      void melodiaError(){
      for(int i = 0; i < 8; i++){
      int duracionNota = 1000/duracionNotas[i];
      tone(BUZZER, melodia[i],duracionNotas);
      int pausaEntreNotas = duracionNota * 1.30;
      delay(pausaEntreNotas);
      noTone(BUZZER);
      }
      }
      void secuenciaError(){
      digitalWrite(SALIDA_A, HIGH);
      digitalWrite(SALIDA_B, HIGH);
      digitalWrite(SALIDA_C, HIGH);
      digitalWrite(SALIDA_D, HIGH);
      delay(250);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      delay(250);
      melodiaError();
      nivelActual = 1;
      velocidad = 500;
      }
      void secuenciaCorrecta(){
      if(nivelActual < NIVEL_MAX);
      nivelActual++;
      velocidad -= 50;
      delay(200);
      }

  • @carlosestuardopenaalvarez5328
    @carlosestuardopenaalvarez5328 4 ปีที่แล้ว +2

    Te comento que el código da error en el Buzzer

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +2

      Que error te da?

    • @naturalharmonia362
      @naturalharmonia362 4 ปีที่แล้ว +1

      @@RobotUNO Da este error:
      invalid conversion from 'int*' to 'long unsigned int' [-fpermissive]
      Además de esta nota:
      initializing argument 3 of 'void tone(uint8_t, unsigned int, long unsigned int)'

    • @naturalharmonia362
      @naturalharmonia362 4 ปีที่แล้ว +3

      @@RobotUNO Ese error da debido a que al llamar al array "duracionNotas" en la línea 150 sin especificar el elemento hace un puntero, y ese valor es inválido para el contructor, se soluciona especificando el elemento del array, cambiando en la línea 150 "duracionNotas" por "duracionNotas[i]" sin las comillas

  • @sapitofacha5096
    @sapitofacha5096 2 ปีที่แล้ว

    Disculpa el código me lo pasas ?

  • @ryokorozu
    @ryokorozu 3 ปีที่แล้ว

    Hola, disculpa, como debo colocar el código? En que programa?
    Se puede poner en make block?

  • @Bombombumrojo
    @Bombombumrojo ปีที่แล้ว

    Holaa, disculpa me podrías pasar el código??

  • @edgarsalinas7156
    @edgarsalinas7156 3 ปีที่แล้ว

    Ayuda no me prenden los 2 leds de en medio

  • @brandomorgan4617
    @brandomorgan4617 4 ปีที่แล้ว +1

    Tendrás un juego donde se utilice el visual y arduino? 🥺

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +1

      No, lo siento, nunca he utilizado ese programa : (

    • @brandomorgan4617
      @brandomorgan4617 4 ปีที่แล้ว

      @@RobotUNO Muchas gracias 😊

  • @EliecerCordoba-u5r
    @EliecerCordoba-u5r 2 หลายเดือนก่อน

    Código porfa 1:34

  • @juangabrielanconabrito7380
    @juangabrielanconabrito7380 3 ปีที่แล้ว

    perfecto amigo ....me puedes pasar el diagrama electrico xfa.......a podria poner switch o botones de 2 patitas y como los conecto....gracias....salu2 desde tabasco.mexico

  • @anthonyfabianmueteguayazan5326
    @anthonyfabianmueteguayazan5326 3 หลายเดือนก่อน

    Me pueden pasar el código plis?

  • @hectorpuentessalim5694
    @hectorpuentessalim5694 ปีที่แล้ว

    Buenas solo hace una secuencia de luces nada mas, a alguien le pasa lo mismo ?

    • @llm2380
      @llm2380 ปีที่แล้ว

      Encontraste alguna solución? me pasa lo mismo

  • @benjamingalvan8634
    @benjamingalvan8634 หลายเดือนก่อน

    me pasas el codigo pls

  • @arielromero1055
    @arielromero1055 2 ปีที่แล้ว

    Hola. Me gustaría hacerlo. Me pasarías el código por favor?

  • @yesicaayala8370
    @yesicaayala8370 3 ปีที่แล้ว +1

    Podrías poner el código porfa

    • @RobotUNO
      @RobotUNO  3 ปีที่แล้ว +1

      lo tienes en la descripcion del video

  • @juansierra5094
    @juansierra5094 ปีที่แล้ว

    Hola me gustaria el codigo porfavor

  • @YimmyRodríguez-i5h
    @YimmyRodríguez-i5h 3 หลายเดือนก่อน

    Hola necesito el codigo

  • @samuelcastano6044
    @samuelcastano6044 4 ปีที่แล้ว +1

    podrias explicar el codigo

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +2

      La verdad es que si que deberia de empezar a explicar los codigos, ya que mucha gente me lo pide.
      Muchas gracias por tu comentario!

    • @samuelcastano6044
      @samuelcastano6044 4 ปีที่แล้ว +1

      @@RobotUNO gracias

  • @angelcastillo9050
    @angelcastillo9050 ปีที่แล้ว

    Puedes darme el código porfa?

  • @YuliethVivianaBenavidesGómez
    @YuliethVivianaBenavidesGómez 6 หลายเดือนก่อน

    Puedes explicar todo el código

  • @saritalopez8404
    @saritalopez8404 4 หลายเดือนก่อน

    Puedes ayudarme con el codigo

  • @EliecerCordoba-u5r
    @EliecerCordoba-u5r 2 หลายเดือนก่อน

    Código porfa

  • @MarcosLopez-xi3xt
    @MarcosLopez-xi3xt 7 หลายเดือนก่อน

    Me podría pasar el codigo y el diagrama!!! Por favor

  • @ousamakassimi
    @ousamakassimi ปีที่แล้ว

    quiero el codigo de programacion

  • @BelenJanetGil
    @BelenJanetGil ปีที่แล้ว

    Me podrían pasar el diagrama de conexion porfaaaa

  • @3eangelgabriel11
    @3eangelgabriel11 4 หลายเดือนก่อน

    cual es el codigo papus?

  • @cristianalarcon202
    @cristianalarcon202 8 หลายเดือนก่อน

    Me pasarias el código?

  • @jaquitrejoreyes9700
    @jaquitrejoreyes9700 6 หลายเดือนก่อน

    Tienes el diagrama? 😢

  • @ivancortez2437
    @ivancortez2437 3 ปีที่แล้ว

    cual es el codigo

  • @JoseMartinezLaguna-go7iv
    @JoseMartinezLaguna-go7iv 8 หลายเดือนก่อน

    Pasa el código de este video

  • @juancarlosgutierrez5583
    @juancarlosgutierrez5583 9 หลายเดือนก่อน

    buen dia, me puede brindar el codigo?

  • @beltrantoronell2910
    @beltrantoronell2910 8 หลายเดือนก่อน

    Pues enviar el código porfa

  • @fernandoacostaromero1614
    @fernandoacostaromero1614 2 ปีที่แล้ว

    buenas, me podrías mandar el código

  • @OmarChavarria-pb2js
    @OmarChavarria-pb2js 3 หลายเดือนก่อน

    Hola necesito el código 🫶🏻

  • @mafepineda6772
    @mafepineda6772 7 หลายเดือนก่อน

    Cuál es el codigooo

  • @razieljuarez6080
    @razieljuarez6080 7 หลายเดือนก่อน

    Me pasas el código 😅

  • @samuelpuentesbarrera1816
    @samuelpuentesbarrera1816 5 หลายเดือนก่อน

    el codigo de programacion

  • @Luciana-th4by
    @Luciana-th4by 7 หลายเดือนก่อน

    Me pasas el Código

  • @victorcontrerashoffmann-ns5vc
    @victorcontrerashoffmann-ns5vc 4 หลายเดือนก่อน

    Me das los codigos porfavor❤

  • @ximemar
    @ximemar 11 หลายเดือนก่อน

    me puedes pasar el codigo

  • @valeriaorozco1901
    @valeriaorozco1901 9 หลายเดือนก่อน

    me puedes pasar los codigos

  • @mr.botsito-yt4702
    @mr.botsito-yt4702 7 หลายเดือนก่อน

    Me puedes pasar eo codigo😊

  • @yesicaayala8370
    @yesicaayala8370 3 ปีที่แล้ว +2

    O mandarme al correo

    • @RobotUNO
      @RobotUNO  3 ปีที่แล้ว +1

      Mi correo es manualidadesyarmas@gmail.com

  • @MAJASA
    @MAJASA ปีที่แล้ว

    Hola, voy a hacer el proyecto puedes enviarme el código por favor

    • @RobotUNO
      @RobotUNO  ปีที่แล้ว

      Hay un link en la descripcion del video para descargarlo

  • @leonardoleon5008
    @leonardoleon5008 4 ปีที่แล้ว +1

    Quiero hacerlo

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +1

      En el comentario de abajo te dejo el codigo para que puedas hacerlo sin ningun problema!

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +3

      //Canal de TH-cam -> RobotUNO
      //Juego Simon dice
      #define BUZZER 7
      #define ENTRADA_A 13
      #define ENTRADA_B 12
      #define ENTRADA_C 11
      #define ENTRADA_D 10
      #define SALIDA_A 2
      #define SALIDA_B 3
      #define SALIDA_C 4
      #define SALIDA_D 5
      int melodia[ ] = {262, 196, 196, 220, 196, 0, 247, 262};
      int duracionNotas[] = {4, 8, 8, 4, 4, 4, 4, 4};
      int nivelActual = 1;
      int velocidad = 500;
      const int NIVEL_MAX = 100;
      int secuencia[NIVEL_MAX];
      int secuenciaUsuario[NIVEL_MAX];
      void setup(){
      pinMode(ENTRADA_D, INPUT);
      pinMode(ENTRADA_C, INPUT);
      pinMode(ENTRADA_B, INPUT);
      pinMode(ENTRADA_A, INPUT);
      pinMode(SALIDA_A, OUTPUT);
      pinMode(SALIDA_B, OUTPUT);
      pinMode(SALIDA_C, OUTPUT);
      pinMode(SALIDA_D, OUTPUT);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      }
      void loop(){
      if(nivelActual == 1){
      generaSecuencia();
      muestraSecuencia();
      leeSecuencia();
      }
      if(nivelActual != 1){
      muestraSecuencia();
      leeSecuencia();
      }
      }
      void muestraSecuencia(){
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      for(int i = 0; i < nivelActual; i++){
      if( secuencia[i] == SALIDA_A ){
      tone(BUZZER, 200);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_B ){
      tone(BUZZER, 300);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_C ){
      tone(BUZZER, 400);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_D ){
      tone(BUZZER, 500);
      delay(200);
      noTone(BUZZER);
      }
      digitalWrite(secuencia[i], HIGH);
      delay(velocidad);
      digitalWrite(secuencia[i], LOW);
      delay(200);
      }
      }
      void leeSecuencia(){
      int flag = 0;
      for(int i = 0; i < nivelActual; i++){
      flag = 0;
      while(flag == 0){
      if(digitalRead(ENTRADA_D) == LOW){
      digitalWrite(SALIDA_D, HIGH);
      tone(BUZZER, 500);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_D;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_D, LOW);
      }
      if(digitalRead(ENTRADA_C) == LOW){
      digitalWrite(SALIDA_C, HIGH);
      tone(BUZZER, 400);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_C;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_C, LOW);
      }
      if(digitalRead(ENTRADA_B) == LOW){
      digitalWrite(SALIDA_B, HIGH);
      tone(BUZZER, 300);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_B;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_B, LOW);
      }
      if(digitalRead(ENTRADA_A) == LOW){
      digitalWrite(SALIDA_A, HIGH);
      tone(BUZZER, 200);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_A;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_A, LOW);
      }
      }
      }
      secuenciaCorrecta();
      }
      void generaSecuencia(){
      randomSeed(millis());
      for(int i = 0; i < NIVEL_MAX; i++){
      secuencia[i] = random(2,6);
      }
      }
      void melodiaError(){
      for(int i = 0; i < 8; i++){
      int duracionNota = 1000/duracionNotas[i];
      tone(BUZZER, melodia[i],duracionNotas);
      int pausaEntreNotas = duracionNota * 1.30;
      delay(pausaEntreNotas);
      noTone(BUZZER);
      }
      }
      void secuenciaError(){
      digitalWrite(SALIDA_A, HIGH);
      digitalWrite(SALIDA_B, HIGH);
      digitalWrite(SALIDA_C, HIGH);
      digitalWrite(SALIDA_D, HIGH);
      delay(250);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      delay(250);
      melodiaError();
      nivelActual = 1;
      velocidad = 500;
      }
      void secuenciaCorrecta(){
      if(nivelActual < NIVEL_MAX);
      nivelActual++;
      velocidad -= 50;
      delay(200);
      }

  • @Publicistacarlose
    @Publicistacarlose 10 หลายเดือนก่อน

    Sos un crack me encnataria tener el codigo de edte porfa

  • @jorgemichellevillanuevanar4188
    @jorgemichellevillanuevanar4188 3 ปีที่แล้ว

    Amigo me sale error void melodía error()':

  • @candelavaldeon1812
    @candelavaldeon1812 7 หลายเดือนก่อน

    quiero el codigo por fisss

  • @electronicayrobotica63
    @electronicayrobotica63 4 ปีที่แล้ว +2

    Muy buen proyecto👏!! Me podrías pasar el código?

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +4

      Por supuesto!! te lo dejo en el comentario de abajo

    • @RobotUNO
      @RobotUNO  4 ปีที่แล้ว +12

      //Canal de TH-cam -> RobotUNO
      //Juego Simon dice
      #define BUZZER 7
      #define ENTRADA_A 13
      #define ENTRADA_B 12
      #define ENTRADA_C 11
      #define ENTRADA_D 10
      #define SALIDA_A 2
      #define SALIDA_B 3
      #define SALIDA_C 4
      #define SALIDA_D 5
      int melodia[ ] = {262, 196, 196, 220, 196, 0, 247, 262};
      int duracionNotas[] = {4, 8, 8, 4, 4, 4, 4, 4};
      int nivelActual = 1;
      int velocidad = 500;
      const int NIVEL_MAX = 100;
      int secuencia[NIVEL_MAX];
      int secuenciaUsuario[NIVEL_MAX];
      void setup(){
      pinMode(ENTRADA_D, INPUT);
      pinMode(ENTRADA_C, INPUT);
      pinMode(ENTRADA_B, INPUT);
      pinMode(ENTRADA_A, INPUT);
      pinMode(SALIDA_A, OUTPUT);
      pinMode(SALIDA_B, OUTPUT);
      pinMode(SALIDA_C, OUTPUT);
      pinMode(SALIDA_D, OUTPUT);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      }
      void loop(){
      if(nivelActual == 1){
      generaSecuencia();
      muestraSecuencia();
      leeSecuencia();
      }
      if(nivelActual != 1){
      muestraSecuencia();
      leeSecuencia();
      }
      }
      void muestraSecuencia(){
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      for(int i = 0; i < nivelActual; i++){
      if( secuencia[i] == SALIDA_A ){
      tone(BUZZER, 200);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_B ){
      tone(BUZZER, 300);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_C ){
      tone(BUZZER, 400);
      delay(200);
      noTone(BUZZER);
      }
      if( secuencia[i] == SALIDA_D ){
      tone(BUZZER, 500);
      delay(200);
      noTone(BUZZER);
      }
      digitalWrite(secuencia[i], HIGH);
      delay(velocidad);
      digitalWrite(secuencia[i], LOW);
      delay(200);
      }
      }
      void leeSecuencia(){
      int flag = 0;
      for(int i = 0; i < nivelActual; i++){
      flag = 0;
      while(flag == 0){
      if(digitalRead(ENTRADA_D) == LOW){
      digitalWrite(SALIDA_D, HIGH);
      tone(BUZZER, 500);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_D;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_D, LOW);
      }
      if(digitalRead(ENTRADA_C) == LOW){
      digitalWrite(SALIDA_C, HIGH);
      tone(BUZZER, 400);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_C;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_C, LOW);
      }
      if(digitalRead(ENTRADA_B) == LOW){
      digitalWrite(SALIDA_B, HIGH);
      tone(BUZZER, 300);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_B;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_B, LOW);
      }
      if(digitalRead(ENTRADA_A) == LOW){
      digitalWrite(SALIDA_A, HIGH);
      tone(BUZZER, 200);
      delay(300);
      noTone(BUZZER);
      secuenciaUsuario[i] = SALIDA_A;
      flag = 1;
      delay(200);
      if(secuenciaUsuario[i] != secuencia[i]){
      secuenciaError();
      return;
      }
      digitalWrite(SALIDA_A, LOW);
      }
      }
      }
      secuenciaCorrecta();
      }
      void generaSecuencia(){
      randomSeed(millis());
      for(int i = 0; i < NIVEL_MAX; i++){
      secuencia[i] = random(2,6);
      }
      }
      void melodiaError(){
      for(int i = 0; i < 8; i++){
      int duracionNota = 1000/duracionNotas[i];
      tone(BUZZER, melodia[i],duracionNotas);
      int pausaEntreNotas = duracionNota * 1.30;
      delay(pausaEntreNotas);
      noTone(BUZZER);
      }
      }
      void secuenciaError(){
      digitalWrite(SALIDA_A, HIGH);
      digitalWrite(SALIDA_B, HIGH);
      digitalWrite(SALIDA_C, HIGH);
      digitalWrite(SALIDA_D, HIGH);
      delay(250);
      digitalWrite(SALIDA_A, LOW);
      digitalWrite(SALIDA_B, LOW);
      digitalWrite(SALIDA_C, LOW);
      digitalWrite(SALIDA_D, LOW);
      delay(250);
      melodiaError();
      nivelActual = 1;
      velocidad = 500;
      }
      void secuenciaCorrecta(){
      if(nivelActual < NIVEL_MAX);
      nivelActual++;
      velocidad -= 50;
      delay(200);
      }

    • @electronicayrobotica63
      @electronicayrobotica63 4 ปีที่แล้ว

      @@RobotUNO muchas gracias!!🙌

    • @fernandorocha5543
      @fernandorocha5543 ปีที่แล้ว

      @@RobotUNO no lo puedo copiar :c