Dispositivo USB no reconocido

1

He estado diseñando un dispositivo USB usando un psoc 4L con capacidad de USB de velocidad completa integrada. Sin embargo, para casi todos mis diseños, tan pronto como conecto el dispositivo USB a la computadora, obtengo el siguiente problema.

Delainvestigaciónquehepodidoprofundizar,estosugierequehayalgomalenmicapafísica(estoyusandounproyectodeiniciogenéricoproporcionadoporcypress,yocasionalmenteloheconectadocorrectamente)

HemedidolaslíneasD+yDyaquíestánlasfotosdemio-scope

Mipreguntaes¿cuáleselproblemaaquí?

MiintuiciónsugierequeD+(latrazaazul)estátomandodemasiadotiempo(18ns,queesmayorque12ns).Porlotanto,tienedemasiadacargacapacitivaynecesitoidentificareneldiseñoloquepodríaagregarse.¿Esestalacorrectaintuición,oestápasandoalgocompletamentediferente?

EDIT*******

Rehiceelalcanceconlasmedidasactivadas.aquíestá.Parecequeelvoltajeesconstantementealrededorde4.1V

EDIT # 2 *******

Lo tengo para trabajar! Originalmente estaba apagando el psoc 4 del miniprog. Tan pronto como cambié a USB funcionó. Estoy hablando con algunos FAE de cipreses, así que tan pronto como reciba una respuesta de por qué ese sería el problema, lo publicaré aquí

    
pregunta Legen Diary

3 respuestas

1

Sus formas de onda se ven bien IMO. Debe comprobar hasta qué punto está llegando en el proceso de enumeración. Puede hacerlo comprobando el dispositivo desconocido en DeviceManager. Mire para ver si el VIP / PID se está detectando en la negociación inicial.
Si tiene un VIP / PID, entonces está llegando bastante lejos en la enumeración.
Si el VIP / PID es cero, entonces está fallando al principio de la enumeración, o no tiene un VIP / PID reconocible.
Su proyecto debe tener un VIP / PID definido para un dispositivo HID que Windows debe resolver automáticamente.

Si bien existen analizadores USB comerciales y gratuitos para Windows, también puede usar simplemente Windows Message Analyzer para capturar el tráfico USB. Para que esto funcione, el protocolo Phy básico (como los niveles de USB y los relojes) debe estar funcionando correctamente. Sin embargo, parece que estás bien aquí y deberías poder capturar el tráfico con éxito.
Hay videos en línea dentro de la interfaz de MMA que le mostrarán cómo operar la MMA o cómo usar los here .... y el manual de operación es aquí .
No es una herramienta simple, pero vale la pena conocerla.

    
respondido por el Jack Creasey
0

El mensaje que ve esencialmente significa que su dispositivo está muerto, no puede completar el proceso de enumeración básico. Puede ser que esté completamente muerto o simplemente no devuelva la información correcta del descriptor sin un error de protocolo.

El hecho de que el dispositivo se conecte y su host USB extraiga paquetes de marcos, su dispositivo no está completamente muerto, pero el motor USB no funciona correctamente.

Las señales parecen bastante normales, excepto que el nivel, como se señaló, es un poco demasiado alto. La frecuencia es correcta. Pero, nuevamente, las señales que usted ve probablemente provienen de su host USB, que probablemente no tenga nada que ver con su dispositivo. (para obtener una captura de una respuesta de dispositivo muy esporádica, necesita trabajar bastante duro y obtener un dispositivo de prueba especial con un dispositivo USB de referencia, luego usar 3 canales para diferenciar los paquetes por sus EOP).

La forma más productiva de depurar la capa física USB es obtener un analizador de protocolo USB, me gusta este .

    
respondido por el Ale..chenski
0

Puedes usar USBPcap para capturar paquetes USB y ver dónde van las cosas mal.

    
respondido por el neonzeon

Lea otras preguntas en las etiquetas