Autor Tema: Simular Host en pic 18f2550  (Leído 3651 veces)

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

Desconectado dragon_maldito

  • PIC10
  • *
  • Mensajes: 10
Simular Host en pic 18f2550
« en: 04 de Abril de 2010, 15:47:16 »
Saludos.

Estoy haciendo un proyecto que consiste en adquirir los datos que envía un mouse standar USB. Utilizo el pic 18f2550. Necesito que mi PIC simule ser un HOST, de tal modo que al conectarle el mouse USB, el pic haga la función de HOST con el fin de habilitar la comunicación entre el y el ratón.

La idea que las terminales D+ y D- del ratón se hagan pasar por un MAX485 con el fin de convertir el diferencial de voltaje a niveles TTL. estos niveles TTL se conectarán a las terminales RX y TX del pic 18f2550 y por medio de esta conexión transferir los datos del mouse al pic. Ojo, aunque el pic 18f2550 tiene opción de USB, este ya está asignado para realizar otras operaciones, de tal modo que no puedo usarlo para comunicarme con el ratón, por eso lo hago por RX y TX.

La pregunta es: ¿Alguien conoce o sabe donde puedo conseguir alguna rutina que simula ser un HOST?. Necesito esta rutina de HOST ya que con ella puedo iniciar la comunicación con el ratón.

GRACIAS.

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Simular Host en pic 18f2550
« Respuesta #1 en: 04 de Abril de 2010, 15:56:20 »
Los microcontroladores 18F que soportan USB solo pueden usarse como dispositivos, para trabajar como host tienes que pasar a un PIC24F o PIC32  :?


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Simular Host en pic 18f2550
« Respuesta #2 en: 04 de Abril de 2010, 16:06:58 »
Las terminales D+ y D- tienen una interfaz mucho más compleja que RS485. Trabajan a +/- 3.3V bajo el método Non Return to Zero Inverted...

http://en.wikipedia.org/wiki/NRZI#Non-Return-to-Zero_Inverted_.28NRZI.29

... implementan CRC para verificación del estado del paquete, bit stuffing y demás cosas.

Lo mejor es comprar un analizador USB por hardware o implementar un Host embebido o OTG en un PIC24F o PIC32 como ya te mencionó Suky. Todo lo que necesitas está en la Microchip Applications Library.

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en537044


Desconectado dragon_maldito

  • PIC10
  • *
  • Mensajes: 10
Re: Simular Host en pic 18f2550
« Respuesta #3 en: 06 de Abril de 2010, 17:38:40 »
Saludos, soy yo de nuevo.

Estuve haciendo pruebas con el osciloscopio capturando los bytes de los buses de un mouse usb justo cuando lo encufaba y capturaba una serie de bits con sus respectivos tiempos en alto y bajo, sin embargo no se quien le manda a quien, y que parte de toda la secuencia que capturé. Utilicé el USBlyzer y comencé a capturar lo que ocurria en el puerto usb y en el momento que conecté el mouse, el software detecto una secuencia de datos. No se si alguien de ustedes podría ayudarme a como interpretar estos datos con el fin de "EMULAR"  la rutina que un HOST USB tiene cuando se conecta un mouse standar, solo con simples pines de un pic en modo de salida y entrada, adecuando los niveles de voltaje y corriente respectivamente (eso no sería problema).

Solo necesito interpretar esos datos y sincronizarlos con el mouse para adecuar los tiempos de cuando el host le escribe al mouse y cuando el mouse le envia datos al host. Gracias y espero que alguien me pueda orientar.

Las respuestas que me dieron de que necesito un pic USB que soporte HOST es buena sin embargo no necesito ser un HOST para cualquier dispositivo, solo necesito emular la rutina que un HOST tiene con un mouse standar compatible con HID.

Gracias y espero sus respuestas e ideas que tengan.

Desconectado fidodido18

  • PIC18
  • ****
  • Mensajes: 312
Re: Simular Host en pic 18f2550
« Respuesta #4 en: 06 de Abril de 2010, 17:50:14 »
muchachos y quien de ustedes ha trabajado haciendo un HOST con un 24F o PIC32??

tienen proyectos?? seria interesante empezar a ver un par de ejemplo en español para entenderlos mejor!

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Simular Host en pic 18f2550
« Respuesta #5 en: 06 de Abril de 2010, 18:02:01 »
USBlyzer no te va a ser de mucha ayuda porque es un analizador USB por software. Necesitas uno por hardware para poder ver los tiempos de subida y bajada, bit stuffing, CRC y demás cosas en las líneas D+ y D-. Yo usé uno de estos:

http://www.lecroy.com/ProtocolAnalyzer/ProtocolStandard.aspx?standardID=4

Fidodido, he logrado hacer funcionar un USB Host para una memoria USB (MSD) con un PIC24F. No es complicado, los ejemplos en Microchip son claros al respecto. Sólo hay que conectar la memoria USB como indica la datasheet y la sección 27 del PIC24F family reference manual (USB OTG).

http://ww1.microchip.com/downloads/en/DeviceDoc/39721b.pdf


 

anything