Joystick USB con PIC18F2550 1 analógico + 8 botones

#41
Bueno acá les dejo un proyecto que hice en colaboración con otros usuarios del foro , se trata de un joistick USB basado en el PIC18F2550. El proyecto funciona correctamente en windows XP y vista (probado). El que tenga alguna duda pregunte.

PD: Hay otros post sobre joistick pero este es para poner el desarrollo definitivo de mi proyecto , el que tenga armado algo parecido que lo postee.

Un especial agradecimiento a LIAMNESSON ! que me ayudo con los descriptores USB y la teoría de funcionamiento.
Moyano! no puedo escribir mensajes privados por ser nuevo en el foro! si me envias un privado con tu mail te respondo, sino vamos a desvirtuar este thread ;)
 
#42
Hola quiero modificar el programa para poder utilizar 2 ejes más.
sucede que voy a hacer mi propio volante estido Logitech G25 y quiero poder implementar 4 ejes:
eje 1: timon
eje 2: acelerador
eje 3: freno
eje 4: clutch
los botones lo usaria para la palanca de cambios y otras fonciones.
tambien quisiera hacer que cuando el voltaje de el eje 1 (timon) sea 0.01V me active un pin para bloquear el giro del timon y que cuando sea 4.99 tambien lo haga.(es para no dañar el potenciometro, ya que pienso utilizar uno de presicion de 10 vueltas y no quiero romperlo ya que son muy caros y el que tengo lo consegui casi en $1 us algo que no volvere a conseguir nunca).
agradesco su ayuda y consejos. tengo poca experiencia con pic's, manejo muy por encima el 16f877, pero en la comunicacion con pc si se me hace muy dificil.
 
#43
Como hago para agregar mas ejes en el codigo? .. necesito al menos 3 ejes mas.

Desde ya muchas gracias.

PD: Probé este y funciona de maravilla en w7 64bits.
 
#44
Hola Moyano,

muy bueno tu joystick, podrías indicarme como hacer para tener 4 direcciones digitales, en vez
de los analógicos?

muchas gracias desde ya.
 
#45
Cualquier duda que tengas comentame y vemos como la resolvemos !
Hola Jonathan,

ya entendí los descriptores, pero al compilarlo con la version de css que comentaste me da este error:


>>> Warning 203 "C:\PICC\drivers\pic18_usb.h" Line 436(1,1): Condition always TRUE
>>> Warning 216 "GAMEPAD.c" Line 96(0,1): Interrupts disabled during call to prevent re-entrancy: (usb_token_reset)
>>> Warning 216 "GAMEPAD.c" Line 96(0,1): Interrupts disabled during call to prevent re-entrancy: (usb_flush_in)
Memory usage: ROM=12% RAM=21% - 23%
0 Errors, 3 Warnings.


puede ser porque me falte alguna librería?
por ahí vi un manual creo que era tuyo para configurar mplab ide con css para compilar,
pero tuve que formatear y no lo encuentro, lo tienes por ahí porfa?


Gracias por tu tiempo.
 
#48
Hola que tal, he probado el circuito y tengo un problema, resulta que a veces el PC si reconoce el joystick, a veces dice que tiene problemas y otras tantas (la mayoría) ni aparece en el PC, es como si estuviera muerto por completo, ya revise la tensión que debería caer en cada parte y esta bien, también he programado varias veces el PIC y nada.

El joystick lo tengo que en protoboard, ya probe varias protoboards y solde algunos cables para garantizar el contacto, y aún así, no consigo que funcione....

Que podrá ser ??
 
#49
Hola a todos,

No he visto si tienen esto en el foro pero espero que sea mi aportación.

La conexión en MAC es mas facil realizarla con HID porque si no se hace así la programación se complica, y si que se complica, existe en la pagina http://www.signal11.us/oss/hidapi/hidapi/doxygen/html/index.html una librería que facilita la conexión.

Este es el programa que yo hice de ejemplo, es solo un contador y una entrada analógica y para la salida son digitales por el puerto B, el programa esta echo en xcode. Espero que les sirva de algo.
 
Última edición:
Arriba