problemas de USB con AT90USB646

0

He intentado implementar un diseño que involucra AT90usb646 unas cuatro veces, pero en cada caso la placa se conecta y se desconecta de inmediato. lsusb indica que se ha conectado un dispositivo Atmel Corp, así que sé que la placa está funcionando pero se desconecta antes de que pueda hacer algo con ella. Por lo general, lo fabrico con Oshpark y no he tenido ningún problema en absoluto, pero esta vez intenté grabar el PCB en casa, ya que este es un proyecto de hobby y quería probar las cosas con bastante rapidez. Las placas tienen dos capas y seguí todas las pautas para colocar la parte del USB, es decir, mantener las pistas pequeñas y los componentes cerrados, calcular el ancho de la traza con calculadoras de impedancia, no interrumpir el vertido del suelo debajo de las líneas de datos USB y mantener el VBUS y el vertido del suelo lejos de las líneas de datos usb para evitar el ruido. Esta es la imagen [! [ingrese la descripción de la imagen aquí] [1]] [1] La hoja de datos de Microchip para AT90USB646 sugiere un par de mayúsculas para VBUS y UCAP y los he colocado en consecuencia. Volví a revisar todo y también verifiqué con Teensy ++ que usa AT90USB1286 que es similar a AT90USB646 pero no puedo entender qué es lo que estoy haciendo mal. Aquí está el esquema

[1]: enlace

    
pregunta Aakusti

1 respuesta

1

Este chip utiliza el modo USB de velocidad completa. En este modo no hay absolutamente ninguna razón para dividir los pelos de una impedancia diferencial de 90 ohmios, especialmente en trazas de pocos mm de longitud. Cualquier rastro funcionará bien. Y los cables no harán ninguna diferencia.

Dado que el dispositivo se conecta inicialmente (a mitad de camino) y los descriptores fueron leídos por el host, probablemente significa que la frecuencia del sistema del dispositivo está fuera de control. Las transferencias de control iniciales utilizan paquetes relativamente cortos, por lo que, incluso si la frecuencia del USB está apagada en varios puntos porcentuales, el GET_DESCRIPTOR estará bien. Sin embargo, los paquetes más largos pueden quedarse sin la flexibilidad del receptor del host. Arregla tu reloj, y todo estará bien.

Por cierto, el cable a tierra en el conector es excesivamente delgado.

    
respondido por el Ale..chenski

Lea otras preguntas en las etiquetas