Diseñé una placa compatible con Arduino Shield alrededor del NXP LPC4337JBD144. hasta ahora no he podido obtener la primera revisión del programa.
En el primer diseño, el encabezado JTAG no se configuró correctamente, no había condensadores de derivación, el USB no tenía todos los pullups/pulldowns que necesitaba, los pines DBGEN y TRST no se dividieron en puentes, y la sección Ethernet no siguió especificación tan estricta como debería ser. Pude agregar todos los pullups al JTAG y subir el DBGEN y el TRST bajo modificando la PCB con cables de puente y resistencias externas. Todavía no puedo programarlo con mi JTAG.
Debo señalar que la PCB rev one solo se llena con lo que es necesario para programar y ejecutar el chip, sin hardware adicional pasivo o activo. He probado que recibo las señales correctas del JTAG y que van a los pines correctos. Revisé el cristal también, pero no recibo una señal porque el cristal no se inicializará hasta que el chip esté programado porque lo primero que se ejecuta en una rutina de configuración del sistema que configura todos los PLL y los ajustes del oscilador externo. Todo en el PCB de la primera revisión se ha revisado a fondo con un osciloscopio, señales JTAG, cristales y sección de potencia.
Dicho esto, he estado luchando con esta primera revisión durante varias semanas, probé todo lo que me recomendó el soporte de NXP, revisé los esquemas de varias placas de evaluación de NXP, Keil e Hitex modificando mi PCB en el camino para traerlo hasta la especificación estándar de ARM en vano.
En este punto, estoy convencido de que el diseño tiene muchas fallas y se sale de las especificaciones estándar para un ARM Cortex M4, que no se puede reparar con una modificación externa en la placa de circuito impreso y que se debe probar una segunda revisión del diseño. . Este es un diseño muy sensible al tiempo, esperaba que al menos el primero funcionara y luego que la segunda revisión fuera un proceso de ajuste fino. Dicho esto, necesito llevar un nuevo diseño a la casa fabulosa para mantener contentos a mis profesores. Estoy buscando comentarios constructivos sobre mi nuevo diseño. Pasé aproximadamente dos semanas revisando este diseño por mi cuenta y con la ayuda de otros en un intento de encontrar cualquier cosa que pudiera ser un problema potencial grave en el futuro. He estado revisando dos veces los esquemas de referencia y la hoja de datos y personalmente no he
EDITAR: Mi tablero tiene 4 capas, las dos capas externas son para señales y las dos capas internas son un plano de tierra y un plano de potencia. En este momento, tengo el espacio negativo en las dos señales exteriores rellenado con un polígono de relleno de tierra, ¿eso podría causar algunos problemas con la placa, como bucles de tierra?
A continuación, he adjuntado el PDF inteligente para mi proyecto Altium que incluye el diseño esquemático y de PCB. https://www.dropbox.com/s/qb9ptr67v6msmh0/Abstract%20Hardware%20Device.pdf
PCBdoc de Altium: https://www.dropbox.com/s/s7s0aw3yuh4va3g/Abstract%20Hardware%20Device%20PCB.PcbDoc
EDIT2: compartir enlace actualizado a Dropbox uno. Altium PCBdoc compartido.
Cuando reviso esquemas/PCB durante mi trabajo diario, para un diseño como este, pasaría de 8 a 16 horas revisándolo. Claramente no puedo hacer eso aquí. Además, no puedo darte una lección de EE por cada cosa que esté mal en el diseño. Y para empeorar las cosas, EE.SE no es realmente adecuado para un diálogo de ida y vuelta que normalmente se requiere para una revisión como esta. Esto es lo que haremos. Haré una revisión rápida del diseño y pondré los problemas que detecte en esta respuesta. Lea eso, estudie un poco por su cuenta y, si aún no comprende, debe publicar una nueva pregunta (no un comentario sobre esta respuesta). Aquí va:
Necesita un poco de filtrado EMI en los +3.3v al grifo central de los transformadores Ethernet. Algún tipo de perla de ferrita + tapa(s).
Necesita diodos de protección ESD en las señales Ethernet a U4.
El límite de desacoplamiento de 10 pF en X2 es asombrosamente pequeño. Utilice 0,1 uF.
Las resistencias de terminación de Ethernet, R42-45, deben tener al menos 0805 para manejar la potencia requerida. No puedo decir qué tamaño estás usando.
Algo no se ve bien con la señal CLK de TX de Ethernet. No creo que debas tenerlo conectado a tres chips (Oscilador, Phy y MAC). Vuelva a verificar eso en los diseños de referencia de Phy/Mac.
Coloque un límite de 0,1 uF en el lado de "entrada" de sus perlas de ferrita.
La nota "el oscilador de cristal debe estar a 12 mm de distancia del físico" es una GRAN bandera roja para mí. Me hace pensar que algo no está bien, pero no sé qué. Si esta fuera una revisión de diseño normal, te interrogaría sobre esto.
Debe filtrar o almacenar en búfer las señales de reinicio que pasan por los conectores (como SHIELD_RESET). Esta es una gran forma de que un evento de ESD, incluso a más de 6 pies de distancia, haga que la PCB se reinicie.
Debe tener una tapa de desacoplamiento de 0,1 uF en cada conector para reducir la ruta de retorno de la señal de CA para las señales en el conector.
No parece que tenga suficientes límites de entrada en la entrada de alimentación de CC. Sin embargo, podría estar equivocado, ya que no puedo leer tus esquemas tan bien (aplicación web estúpida).
Es posible que necesite más límites en la salida de sus reguladores de voltaje. Sin embargo, no revisé porque no tengo tiempo para leer las hojas de datos.
Es difícil juzgar realmente el diseño de PCB sin mirar el diseño en el software CAD (Altium). Pero veo suficientes problemas como para que todo el diseño deba examinarse antes de enviarlo.
Las vías deben separarse para que no causen ranuras en los planos de alimentación/tierra.
Los planos gnd adicionales en las capas superior e inferior no agregan mucho al diseño. Vale la pena simplemente eliminarlos.
¿Tiene una terminación de señal adecuada en las señales MII entre MAC y Phy?
¿Ha verificado que la acumulación de capas de PCB es correcta para la impedancia de traza que desea y la terminación de señal que tiene?
Tiene señales que cruzan vacíos en planos de alimentación/tierra adyacentes. Este es un ENORME no-no.
Su plano de señal GND y sus planos de chasis-gnd se superponen. Nunca, nunca hagas esto. (Descargo de responsabilidad: podría estar mirando mal las tramas).
Ahí vas. ¡Buena suerte!
Abrí el archivo de tu tablero. Muchos problemas:
$Expensive$ board house A
pueda hacer un espaciado de trazo de 5/5 significa que es una buena idea. 8/8 (ancho de trazo mínimo de 8 milésimas de pulgada, espaciado entre trazos mínimo de 8 milésimas de pulgada) es un buen punto de partida. Si tiene piezas de muy alta densidad, es posible que deba ir a 6/6Más cosas si quieres que siga buscando
Nota. Mirando a través del PDF esquemático, parece que el archivo de placa que proporcionó es dramáticamente diferente a las superposiciones de esquema/placa en el PDF.
En el esquema:
Mierda que me molesta, menos importante:
tienes tu cuadrícula esquemática apagada aquí. Mire las conexiones a los pines 1 y 4.
Desactivar la cuadrícula hace que sea muy fácil hacer esquemas que parezcan correctos, pero que en realidad no están conectados. También genera dibujos descuidados y difíciles de leer. Como regla general, en altium, todo debe estar en una cuadrícula de 10 unidades. Si esto significa que tiene que parchear sus bibliotecas de esquemas, hágalo . Lo agradecerás más tarde.
Además, tiene un puerto de alimentación que no está del todo al final de un cable. Mire el punto en el puerto de tierra. Esto no es gran cosa, pero es el tipo de basura que me molestaría.
Esta es la hoja de datos para esa parte.
0) ¿Todas sus fuentes de alimentación y tapas de desacoplamiento son correctas?
1) ARM JTAG se realiza convencionalmente con un conector de 20 pines: http://www.jtagtest.com/pinouts/arm20 ; tienes uno de 10 pines y creo que puedes estar confundido entre JTAG y SWD.
2) Soy escéptico de todos esos pullups y pulldowns, y que TRST no está conectado al programador. También hay una resistencia misteriosa de 10k en serie con él.
3) ¿Tienes la frecuencia de reloj JTAG correcta? ¿Necesita el TCLK de retorno para el programador (esto puede ayudar con problemas de tiempo)?
4) ¿Sabes que tu programador funciona y está configurado correctamente? Por ejemplo, ¿tiene una placa de evaluación para este dispositivo con la que lo haya probado?
Si estoy leyendo esta hoja de datos para el LED RGB correctamente, es una pieza de ánodo común. Sin embargo, el esquema parece mostrar el pin común conectado a GND, que solo funciona con LED de cátodo común.
Si conecta ese ánodo a 3,3 V, la hoja de datos implica que incluso si tira del cátodo del chip verde o azul hasta GND, es posible que no sea visible; el voltaje directo podría ser tan alto como 4 V.
¿Quizás ese ánodo (común) del LED RGB debería estar conectado a VCC_5v?
Normalmente veo algún búfer, como un SOT23 DMN65D8L nFET, entre un procesador y un LED de alto brillo. Estoy un poco sorprendido de que las características I_OH e I_OL e I_OHS e I_OLS en la sección "Características estáticas" de la hoja de datos del LPC4330FBD144 sugieran que tal vez pueda controlar LED de 20 mA directamente.
usuario17592
Adam Vadala-Roth
olin lathrop
olin lathrop
Nick Alexeev
olin lathrop
Adam Vadala-Roth
pjc50