Atmega328 Clock Freq. via Divider vs. Power

3

Tengo una pregunta que la sección de poder en la hoja de datos de Atmega328p no parece cubrir. Estaba planeando ejecutar mi sistema en 1MHZ con un VCC de 2.8 V para un buen intercambio de potencia frente a rendimiento. Como resulta que los cristales de 1MHz y los resonadores no parecen existir, Digikey no tiene ninguno.

Si ejecuto una división por 8 (configurada con los bits de fusible) unida a un cristal de 8 MHz, desde un punto de vista de potencia, ¿será lo mismo que un reloj de 1 MHz? Obviamente, habrá algunas pequeñas pérdidas adicionales con el divisor del reloj de 8 MHz por delante, pero como la CPU y otros dominios de reloj variados son más lentos, asumo que tendrá un consumo de energía cercano a 1 MHz.

¿Esto es correcto?

EDIT No puedo usar el oscilador interno ya que necesito una sincronización precisa en un amplio rango de temperatura. También he revisado la hoja de datos y la pregunta es si alimento un reloj de 8 MHz y lo escala de 8 a 1 MHz es aproximadamente el mismo uso de potencia que un reloj de 1 MHz sin procesar.

    
pregunta MadHatter

2 respuestas

3

Esencialmente, sí. El divisor de reloj (a.k.a. System Clock Prescaler) es el primer dispositivo en la cadena de reloj después de la entrada. Todos los demás relojes se derivan de la salida de este prescaler, lo que significa que todo, con excepción de la entrada del reloj y el prescaler, funcionará a 1MHz (y por lo tanto consumirá la misma potencia que si estuviera impulsado por una entrada de reloj de 1MHz).

Si la temporización no es crítica, también puede usar el oscilador interno de 8MHz con preescalador 8: 1. De esta manera, elimina la energía consumida por un cristal externo o un circuito resonador, y en el circuito del oscilador externo.

Sin embargo, si desea una sincronización precisa (el Osc. interno es +/- 10% a menos que esté calibrado), entonces debe usar un cristal y configurar la fuente del reloj para que sea el "Oscilador de Cristal de Baja Potencia" (en oposición al Opción "Full Swing") en la configuración del fusible ATMega.

Los cristales de 1MHz no son tan comunes, pero hay opciones como un 1.8432MHz que es un cristal estándar de "velocidad en baudios" (llamado así porque se puede dividir con precisión en velocidades en baudios en serie estándar, por ejemplo, 9600). Estos son muy comunes y bastante baratos. Esto reducirá la potencia consumida en los circuitos del oscilador y la entrada del reloj. Es cierto que no es 1MHz, pero si al inicio escribe en el registro CLKPR , puede habilitar un prescaler 2: 1 para obtener 921.6kHz, que está cerca. Si está haciendo algo con comunicaciones serie, vale la pena echarle un vistazo.

Si desea una precisión de 1MHz, entonces los cristales de 2MHz también son bastante comunes. De manera similar, si está usando temporizadores y quiere poder medir un milisegundo con precisión, también puede ir a 2.048MHz (de nuevo en común), lo que le da una potencia de dos divisiones hasta 1kHz.

    
respondido por el Tom Carpenter
0

El consumo de energía será inferior a 1Mhz que a 8Mhz.

En el escenario de esta página enlace a 8Mhz y 3.3V, el consumo de energía es de 4.16mA y a 1Mhz es Sólo 0,92 mA. Sin embargo, esto dependerá de su configuración.

El oscilador interno toma la menor cantidad de corriente para ejecutarse. Si bien es menos preciso que un cristal externo, puede medir su velocidad y guardar los datos en la EEPROM para utilizarlos como datos de calibración.

    
respondido por el HighInBC

Lea otras preguntas en las etiquetas