# Juego Simón Dice con pic 16F84A



## neoguzman (Dic 16, 2010)

Bueno este es mi primer aporte al foro, esto para personas que son pincipiantes con los pics como lo soy yo, estoy conciente de que esto ya estaba posteado, pero este es un circuito muy diferente a los otros, me propuse a probar uno diseñado meramente por mi, originalmente el programa del estaba diseñado para el 16f88, ya que este pic tiene muy buenas cualidades en cuanto a desempeño, pero modifique el programa para que funcionara tambien con el 16f84A ya que ambos pics son similares.

no soy muy bueno programando asi que hice mi mejor esfuerzo, lo hice estudiando un poco las rutinas de algunos programas que vi por ahi, dejare ambos circuitos, el codigo esta escrito en C

aclaro de que ambos circuitos  son absolutamente iguales los componentes son los mismos lo unico que varia es el pic, dejo la simulacion hecha en proteus y el programa....saludos 

PD... cualquier duda que tengan solo pregunten


----------



## FranFA (May 24, 2011)

dice que tiene cinco pulsadores, pero el otro no lo veo en la simulacion o es que son solo cuatro?


----------



## Pelelalo (May 27, 2011)

Una pregunta. Usas la función read_eeprom. ¿Qué plataforma usas? Yo uso Sdcc y no creo que vaya a reconocer esta sentencia.


----------



## neoguzman (May 27, 2011)

buenas y gracias por pasar por mi post respondiendole a FranFa ps solo son 4 pulsadores si quieres puedes añadir un quinto en el pin de reset para poder resetear el juego...

y pues Pelelalo la verdad el programa lo hice en lenguaje c asi que es muy basico y no se utiliza lineas de codigo muy complejas y esto lo hice hace mucho tiempo y la verdad no recuerdo en que plataforma la hice pero si utilizas cualquiera que te reconosca lenguaje c te lo hara andar, ademas de que no necesitas modificar nada del programa solo necesitas compilarlo y cargar el archivo HEX y listo a divertirce....

en estos dias estare actualizando el post con cosillas que le añadi solo por pura practica ademas que tambien añadire el PCB para aquellos que les interece armarla...con esto dicho me despido y volviendoles a agradecer por apsar por mi post gracias y saludos...


----------



## arrivaellobo (Nov 24, 2011)

Neoguzman, en primer lugar mis felicitaciones tanto por el trabajo, como por el aporte. Me gusta mucho tu forma de programar, lo dejas todo muy claro y sencillo, me gusta. ;-)
Respecto a tu último comentario, no importa que se alimente cualquier circuito con una fuente de mayor amperaje, ya que el circuito sólo consume lo que necesita. El amperaje de la fuente sólo indica su capacidad para suministrar corriente.

Un saludo, y felicitaciones de nuevo


----------



## manikuy (Mar 26, 2012)

Bueno comunidad me dirigo a ustedes de la manera mas comedida posible a solicitar su ayuda de nuevo esta vez se trata de mi tesis de grado por lo que es muy importante basicamente estoy realizando un juego tipo "simon dice" o saymon says" pero con la unica diferencia que ahora en vez de cuatro leds *utilizare 8 leds en un pic 16f877a programaando absolutamnete todo en microcode(solo este programa)*  pero la verdad es q no he logrado mas que seguir la secuencia de 3 o 4 leds pero nunca de uno en uno adjunto la simulacion y mi codigo en microcode si alguien no sabe lo que es el juego simon dice aqui esta con  4 leds y otro pic 





  saludos


----------



## MrCarlos (Sep 27, 2012)

Hola cetis

Por ácá está:
https://www.forosdeelectronica.com/f24/juego-simon-says-8-leds-72464/#post634118

saludos
a sus ordenes


----------



## Gustavo Heron (Nov 7, 2017)

no entiendo como generas el numero aleatorio


----------



## pandacba (Nov 7, 2017)

Antes que nada bienvenido.
En otro orden, debes leer las normas del foro para evitar infracciones, ya que estas preguntando en un tema que no tiene actividad desde hace 5 años. 
Por otro lado no creo que el forista responde, no ingresa desde hace más de 2 años.

Por otro lado si utilizas CSS y cargas la "stdlib.h" utilizas la función rand()


----------



## Gustavo Heron (Nov 9, 2017)

Si con la funcion rand() se puede generar un numero pseudoaleatorio pero en el programa no la usa, lo hace de esta forma:
void genera_aleatorio()
   {
   if(aleatorio >= 4)         // 1 -> ROJO
    {                         // 2 -> VERDE
    aleatorio = 1;            // 3 -> AMARILLO
    }else {                   // 4 -> AZUL
    aleatorio++;
    }
   }


----------

