Estoy tratando de rediseñar el diseño con un cristal de 8 MHz (XT1) para el microcontrolador atmega328p. Dado que este microcontrolador usa un oscilador interno, la comunicación UART no funciona de manera confiable en el diseño actual. Así que decidí usar un cristal externo para la producción.
Dado que esta placa funciona bien con todas las demás funcionalidades excepto UART, necesitamos volver a girar la placa con cambios mínimos. El rojo representa la capa superior de PCB y el azul es la capa inferior de PCB (es un diseño de 2 capas). Debido a la restricciones de ubicación en el lado inferior de la PCB, coloqué el cristal y su capacitancia de carga en el lado superior mientras que el microcontrolador se encuentra en el lado inferior.
He estado leyendo varias recomendaciones específicamente para el diseño de diseño de cristales. Estoy seguro de que el diseño no cumple con la mayoría de ellas (por ejemplo, Evitar vías). Estoy preocupado por la funcionalidad de la PCB, especialmente por los problemas de EMC. Realmente no hay señales de alta frecuencia en esta placa, excepto 8 MHz . ¿Alguien puede dar algunas sugerencias sobre cómo se puede mejorar el PCB?
Cosas que cambiaría:
En algún momento hay que hacer un esfuerzo extra y hacer las cosas bien desde el principio. Creo que es este caso.
Primero, tengo que advertirte sobre la frecuencia del reloj. No conozco la velocidad en baudios que desea, pero 8 MHz no son aceptables para UART de alta velocidad (por ejemplo, 115200 bps). ¿ Has revisado la hoja de datos ? El registro UBBR n determina la velocidad de comunicación con la siguiente fórmula (p.227):
UBBR debe ser un número entero entre 0 y 4095, Baud es un múltiplo entero de, por ejemplo, 2400. Por lo tanto, es fácil calcular que la frecuencia del oscilador debe tener una frecuencia de (k es un número entero). Ejemplo: para 115,2 kbaudios, UBBR se calcula en 3,34, por lo que seleccionar UBBR = 3 produce una tasa de baudios de 125 kbaudios. Y la tasa de error se puede calcular de la siguiente manera: lo cual es terriblemente inaceptable. Con un cristal de 8 MHz y suponiendo el máximo permitido , la velocidad de transmisión máxima permitida será de 38,4 kbaudios. Por lo tanto, cuanto más lenta sea la velocidad en baudios, menor será la tasa de error. En consecuencia, en lugar de 8 MHz, le recomiendo que utilice 7,3728 MHz (1,8432 x 4). Además: ¿ Qué tan críticas son las frecuencias UART?
De todos modos, mis sugerencias sobre el diseño de PCB:
Esta no es una respuesta a su pregunta, pero me gustaría plantear un punto demasiado importante para una serie de comentarios.
No conozco la familia ATMega, pero lo animo a que dedique un momento a buscar una opción compatible con pines que tenga un mejor oscilador interno. La opción puede existir o no, pero la vida se vuelve un poco más fácil si existe.
Por supuesto, si existe tal opción, si es una opción viable o no depende de su situación. Si su plan es comercial, debe sopesar los costos de remodelación del hardware frente al aumento del costo del procesador. Si necesita algo rápido, donde ya ha validado el resto de una placa existente y solo está haciendo unas pocas, probablemente funcione muy bien.
OSCCAL
).Hay algunas cosas de las que me preocuparía aquí. Primero, las trazas no deben ser cuadradas. Desea eliminar las esquinas de esta PCB. El ángulo de 45 grados funciona bien. Otra cosa a considerar sería mantener los rastros alejados del oscilador, ya que puede acoplarse a otros rastros no relacionados. En este caso, esos rastros están en una capa diferente, por lo que se ve bien. Y mantenga las trazas de su oscilador lo más cerca posible entre sí.
PlasmaHH
usuario_1818839
ANÓNIMO
apalopohapa
abdullah kahraman
Gesto de desaprobación