Autor Tema: interrupciones USB en modo Bulk?  (Leído 3213 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado tiopac

  • PIC10
  • *
  • Mensajes: 2
interrupciones USB en modo Bulk?
« en: 17 de Mayo de 2010, 20:49:45 »
Buenaaaaassss....

Alguien me puede ayudar?

Estoy intentando enviar la informacion de unos pulsadores conectados al PIC  al PC en modo BULK y leerlos desde DELPHI.
Como soy nuevo en esto de los PICS y estoy bastante verde ya no se por donde tirar.

He conectado un pulsador al PIN_B4 y masa y una resistencia a +5V y al codigo fuente de RR2_USB_Monitor de RedPic le he añadido lo siguiente: 

    if (!input(SW1))  usb_put_packet(1,Version,6,USB_DTS_TOGGLE);

para emular lo mismo que hace ,al hacer clic en el boton 'Get Firmware version' en el programa RRUSBMonitor.exe

Cuando hago clic en ese boton todo va bien y muestra la version del firmware, pero cuando activo el pulsador no hace nada de nada y ¿No deberia hacer lo mismo?.

Hay que estar leyendo desde delphi continuamente los packeds que pueda enviar el PIC?
De ser asi ,hay alguna manera de  hacerlo por interrupciones o eventos ?

Agradeceria inmensamente algun tipo de ayuda.

Gracias.


Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: interrupciones USB en modo Bulk?
« Respuesta #1 en: 17 de Mayo de 2010, 21:12:00 »
Hay que estar leyendo desde delphi continuamente los packeds que pueda enviar el PIC?
De ser asi ,hay alguna manera de  hacerlo por interrupciones o eventos ?

Agradeceria inmensamente algun tipo de ayuda.

Gracias.



Sí, hay que estar leyendo continuamente los paquetes que envía el PIC. El pic nunca envía datos a menos que el host los pida.

No, no hay forma de saber cuando el pic quiere enviar algo. Siempre hay que hacerlo por polling (muestreo constante).

Desconectado willynovi

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 546
Re: interrupciones USB en modo Bulk?
« Respuesta #2 en: 20 de Mayo de 2010, 11:51:55 »
tiopac, creo te convendria trabajar con el modo CDC, que emula el RS232, yo estoy haciendo algunas aplicaciones con esto es muy simple, es como manejar el puerto serie.

En framework 2.3 tiene varios ejemplos.

El modo bulk, creo es conveniente para transferencia de datos, pero no para comunicación.
Intento enseñarte a pescar, si solo quieres pescados, espera que un pescador te regale los suyos.

Desconectado tiopac

  • PIC10
  • *
  • Mensajes: 2
Re: interrupciones USB en modo Bulk?
« Respuesta #3 en: 23 de Mayo de 2010, 18:48:38 »
Muchas Gracias por las respuestas.

Ahora lo tengo mas claro.
Tendre que hacer mi pulsadora en modo HID, asi utilizo el driver HID de windows.

Ahora me surje otro problema.
He probado el programa HID de USB Desencadenado y el circuito hace la funcion de un teclado normal correctamente.

Pero , ¿Como podria enviar datos al PC en modo HID y capturarlos en DELPHI sin emular un teclado standart, algo asi como lo hace un Joystick o mouse?. Lo que necesito es que al pulsar una o varias teclas a la vez, lo envie en modo HID y  delphi me indique cuales son .
Alguien podria ayudarme o indicar donde podria encontrar informacion.
Prometo aportar todo el proyecto , incluido el diseño de la placa, si consigo terminarlo.

Gracias


Desconectado willynovi

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 546
Re: interrupciones USB en modo Bulk?
« Respuesta #4 en: 27 de Mayo de 2010, 15:11:28 »
aqui yo he encontrado algo, http://www.lvr.com/hidpage.htm

Lo que tu tienes que hacer es un HID generico, osea, ni teclado, ni mouse, ni gamepad. Un dispositivo que envia y recibe datos de la PC.
Alli en esa pagina puedes encontrar ejemplos en varios lenguajes, VB, VC, etc.

Yo no he logrado algo concreto con el HID, uso la API de Microchip "mchpfsusb.dll" si te bajas el framework oficial, creo es la version 2.6 la actual, alli tienes varios ejemplos, incluso de HID, CDC o del API, para el firmware o para el soft de la PC.

Si llegas a tener algún avance con lo del HID y puedes hacer una comunicación bidireccional, por favor mantenme al tanto que me interesa.
Saludos,
Intento enseñarte a pescar, si solo quieres pescados, espera que un pescador te regale los suyos.


 

anything