Problema con joystick en nms8245

Page 3/3
1 | 2 |

Par inspecteurZ

Resident (34)

Portrait de inspecteurZ

17-02-2015, 17:57

Bueno, es tan fácil como buscar el pinout del puerto de joystick de msx y seguir las pistas.

Intentaré dar una descripción lo más detallada posible, pero creo que si no se entiende el esquema es mejor pedir ayuda a un amigo. No pongo fotos porque no se ve muy bien y no quiero volver a abrir el ordenador. Por cierto, antes de usar este método, es recomendable probar el método del pull-up directo, mucho más sencillo pero que no siempre funciona. Lo explico más abajo.

Método puertas AND:

Los pines que nos interesan son el 5 (+5v), el 9 (GND), el 6 (trigger1) y el 7(trigger2). La pista se puede cortar en cualquier sitio entre el puerto y el primer componente (o antes de que la pista cambie de cara). y para soldar, el cable IN iría directamente al pin del puerto, y el OUT a algún punto después del corte de la pista (por ejemplo, a la pata del primer componente que encontremos, o en el topo de estaño que indica cambio de cara). Esto será ligeramente diferente dependiendo del msx.

74ls08

En el integrado, tenemos:
pin 7 a GND (joystick pin 9)
pin 14 a 5v (joystick pin 5)

Los demás pins van en grupos de 3 (cada grupo una puerta). Pongo un ejemplo de como se cablearía todo si tuviéramos que arreglar los 4 botones.

puerto 1, botón 1:
pin 1 (in_a1) - a 5v (pin 7 del mismo integrado)
pin 2 (in_a2) - dos cables, uno a una resistencia de 10k conectada a 5v (pin7) y otro a pin 6 joystick 1
pin 3 (out_a) - a OUT (punto después del corte de la pista que sigue al pin 6 joystick 1)

puerto 1, botón 2:
pin 4 (in_b1) - a 5v (pin 7)
pin 5 (in_b2) - dos cables, uno a una resistencia de 10k conectada a 5v (pin7) y otro a pin 7 joystick 1
pin 6 (out_b) - a OUT (punto después del corte de la pista que sigue al pin 7 joystick 1)

puerto 2, botón 1:
pin 10 (in_c1) - a 5v (pin 7)
pin 9 (in_c2) - dos cables, uno a una resistencia de 10k conectada a 5v (pin7) y otro a pin 6 joystick 2
pin 8 (out_c) - a OUT (punto después del corte de la pista que sigue al pin 6 joystick 2)

puerto 2, botón 2:
pin 13 (in_d1) - a 5v (pin 7)
pin 12 (in_d2) - dos cables, uno a una resistencia de 10k conectada a 5v (pin7) y otro a pin 7 joystick 2
pin 11 (out_d) - a OUT (punto después del corte de la pista que sigue al pin 7 joystick 2)

Método pull-up directo

Consiste simplemente en poner una resistencia de 10k entre el pin del botón afectado y 5v. Sin cortar ninguna pista. Esto me funcionaba solo en uno de los puertos, así que finalmente los hice los dos con el otro, ya que tenía que usar el integrado igualmente.

Par Aquijacks

Champion (288)

Portrait de Aquijacks

18-02-2015, 07:13

Impresionante. ¿como has llegado a esa modificación? Si la engine está averiada es muy difícil desde fuera darle lo que le falta. De todos modos parte del silicio está quemado por lo que la circuitería circundante está tocada y con el uso caerá también. Controla la temperatura del engine cuando lleve un rato funcionando. Es lo primero que delata su destino.

Par Aquijacks

Champion (288)

Portrait de Aquijacks

18-02-2015, 07:50

Hay algo que no me cuadra, parece raro. Con un buffer también funcionaria y te ahorras la resistencia. Pero esto significaría que lo que falla no es el Engine si no la alimentación de 5 voltios del conector del joystick. ¿has probado cortar esa pista y darle los 5v al conector directamente? Si funciona, busca la resistencia que alimenta con 5v a los ports de los joystick,estará dañada o quemada. Sustituyela y listos. A veces también hay un ril de resistencias que pone todas las señales a 0v común en estado de reposo. Puede que esté fallando alguna de estas. Doy por hecho que los joysticks están descartados y funcionan bien.

Par inspecteurZ

Resident (34)

Portrait de inspecteurZ

18-02-2015, 12:04

Bueno, fui probando cosas. Me dí cuenta que usando un pad con turbo, en modo turbo funcionaba más o menos (funcionaba al revés: en vez de funcionar el turbo, al pulsar no hacía nada, pero al soltar disparaba). También usando un Yanjen (el "táctil") funcionaba perfecto. La diferencia entre estos joystick y otros es que llevan un integrado (un 7408 para el turbo, y uno desconocido el táctil) y las señales pasan por él antes de salir. Sabiendo eso, pues probando continuidad y voltajes con el ordenador encendido, forzando las lineas a 5v o a gnd y viendo que pasaba con el estado de los botones, llegué a la conclusión de que forzando la linea a 5 y cambiando a gnd cuando se pulsase el botón tendría que funcionar. Para eso basta meter la resistencia de pull-up entre la linea y los 5v, pero solo funcionaba en uno de los puertos.

Lo que dices que la alimentación del joystick también pensé que podía estar mal, pero el hecho de que funcionase correctamente uno de los botones me hizo descartarlo. En cuanto a lo del buffer, mis conocimientos de electrónica son limitados. Estudié algo hace años cuando hice la ingeniería informática, pero no se toca mucho tema (mucha teoría y poca práctica). Además intenté aprovechar piezas que tenía. Necesitaba mantener la linea a 5v o gnd según la entrada, y lo primero que se me ocurrió fue usar una puerta.

Cuando vuelva a abrirlo probaré alguna de las cosas que dices, solo por curiosidad.

saludos.

Par anonymous

incognito ergo sum (118)

Portrait de anonymous

18-02-2015, 14:13

Qué buena solución le has dado al problema, te felicito. Viendo que es algo ya conocido, también me suena haber leído hilos al respecto, te propongo hacer un tutorial y lo añadimos en la wiki del portal. ¿Qué te parece? Yo me ocuparía de publicarlo pero eso sí, si pudiera ser también en inglés mejor, así llegaría a mucha más gente ya que en la parte inglesa del portal es donde se concentra el mayor número de usuarios, podemos incluso poner imágenes. Igualmente lo que comenta Aquijacks sería bueno confirmarlo y aunque esa fuera la reparación, comentar las dos soluciones en el mismo tutorial sería genial. Wink

Par inspecteurZ

Resident (34)

Portrait de inspecteurZ

19-02-2015, 12:37

Por mi perfecto. ¿Que necesitas que te pase para hacerlo? Yo hasta el fin de semana no podré hacer las comprobaciones del otro método.

saludos.

Par Pac

Guardian (5924)

Portrait de Pac

19-02-2015, 18:56

No hay prisa cuando tú puedas. Mi intención es añadirlo a esta sección de la wiki, ojeando alguno de los artículos podrás hacerte una idea de cómo quedaría, supongo te servirá de guía también. A mí con que me lo pases en modo texto plano con las imágenes correspondientes aparte ya me vale. Puedes contactar conmigo a través de mi perfil (pestaña contacto) para avisarme de que ya lo tienes listo. Lo dicho, ¡no corras!. ;) Gracias por ofrecerte a hacerlo.

Page 3/3
1 | 2 |