TODOPIC

Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: elkiman en 28 de Agosto de 2006, 19:10:22

Título: Transformar la señal de un mando de megadrive
Publicado por: elkiman en 28 de Agosto de 2006, 19:10:22
Hola quiero transformar la señal enviada por el conector de megadrive db9 a paralelo, es decir tener 12 salidas distintas  (4 direcciones , ABC,XYZ,MODE, START).


Tengo la rutina para leer y transformar el mando (4 direcciones , ABC, START), pero quisiera saber si alguien me pudiese ayudar y también recomendarme que pic usar en esta ocasión.

Les detallo como decodifico el de (4 direcciones , ABC, START):

16F628 PIC

Megadrive Pin # PIC Pin
1 ->A6
2 ->A7
3 ->A1
4 ->A2
5 ->VCC
6 ->A3
7 ->A0
8 ->VDD
9 ->A4



Salidas PIC Pin
Left ->B0
Right ->B1
Up ->B2
Down ->B3
A ->B4
B ->B5
C ->B6
Start ->B7



link con la documentación y el codigo del PIC: http://www.elotrolado.net/attachment.php?s=&postid=1705258076

Si alguien me puede ayudar le estaría muy agradecido.
Título: Re: Transformar la señal de un mando de megadrive
Publicado por: BrunoF en 28 de Agosto de 2006, 21:34:07
Hola. Estos PADS son muy simples de decodificar.Especialmente el de 3 botones.
Los joysticks poseen 9 cables. dos de alimentacion, y 7 de datos.
De esos 7, uno solo es de entrada al joystick. Los otros 6 son salidas y envian la informacion.
Para leer uno de 3 y 6 botones, no tienes mas que enviar un solo dato por un PIN(el TH), y leer los otros 6 cables luego de minimo 2us.
Aqui te dejo la tabla de ambos joysticks.
Saludos.
Título: Re: Transformar la señal de un mando de megadrive
Publicado por: Deimos en 29 de Agosto de 2006, 03:52:23
Exacto, viene a parecerse mucho al funcionamiento de un teclado matricial. Respecto a que pic usar, si solo tienes esas pocas entradas y salidas y además son todas digitales, puedes usar un 16F84A, que pienso que te sobra máquina, tanto en velocidad como en I/O. No hace falta usar grandes máquinas para lo ke quieres hacer.

Atentamente

Deimos

http://astroelectronica.iespana.es/
Título: Re: Transformar la señal de un mando de megadrive
Publicado por: elkiman en 29 de Agosto de 2006, 08:03:11
Hola. Estos PADS son muy simples de decodificar.Especialmente el de 3 botones.
Los joysticks poseen 9 cables. dos de alimentacion, y 7 de datos.
De esos 7, uno solo es de entrada al joystick. Los otros 6 son salidas y envian la informacion.
Para leer uno de 3 y 6 botones, no tienes mas que enviar un solo dato por un PIN(el TH), y leer los otros 6 cables luego de minimo 2us.
Aqui te dejo la tabla de ambos joysticks.
Saludos.




Quisiera saber si este chip te parecería bien para usarlo PIC16F873A-I/SO

ya que tengo un total de 12 (salidas)  +  9 (del mando) necesitaría mínimo 21 pines solo para este.
Título: Re: Transformar la señal de un mando de megadrive
Publicado por: BrunoF en 29 de Agosto de 2006, 18:07:35

Quisiera saber si este chip te parecería bien para usarlo PIC16F873A-I/SO

ya que tengo un total de 12 (salidas)  +  9 (del mando) necesitaría mínimo 21 pines solo para este.

Hola.En realidad tendrias 12 salidas + 7 del mando = 19 pines.

Me parece que un 16F873A es demasiada maquina para esto. Yo utilizaria un 16F84A y le pondria Registros de desplazamiento(74HC4094 o simil) para expulsar los datos a paralelo.

Utilizaria 7 pines del 16F84A para comunicarme con el joystick, y enviaria los datos leidos a dos 74HC4094, usando solo 3 pines mas. En total usaria 10 pines, y me sobrarian 3.

Saludos
Título: Re: Transformar la señal de un mando de megadrive
Publicado por: elkiman en 29 de Agosto de 2006, 18:53:41
No se como funcionan esos 74HC409.  Me pondré a mirar.

Otra opción puede ser usar el PIC que dices y enviar las salidas multiplexadas y con un demultiplexor obtenerlas y así no necesitaría los 74HC409.


PD: Gracias por tu interés.
Título: Re: Transformar la señal de un mando de megadrive
Publicado por: BrunoF en 29 de Agosto de 2006, 19:40:06
Hola. Los 74HC4094 o similares son Registros de desplazamiento entrada serie/ salida paralelo.
Podes hacerlo con mux y demux, pero me parece que vas a agregar integrados sin sentido.
Con 2 HT4094 y un 16F84A podes controlar el de 3 botones, incluso el de 6.
Si programas en asm, te paso la rutina para controlar los 74HC4094. Es muy simple.
Saludos.
Título: Re: Transformar la señal de un mando de megadrive
Publicado por: elkiman en 05 de Septiembre de 2006, 17:32:19
Me fui de vacaciones y he regresado por eso  no he contestado.


Estoy muy verde en esto. Si me puedes explicar por encima como van los registros.

Pon si puedes el codigo.

Gracias por tu atención.