La hoja de datos para el ATTiny13A, por ejemplo, enumera la frecuencia mínima de 0 MHz. ¿Significa esto que el reloj puede ejecutarse a cualquier frecuencia arbitrariamente baja sin efectos nocivos? ¿Asumo que consume una corriente más baja a velocidades de reloj más bajas? ¿0 MHz significa que puede detener el reloj por completo, y mientras se siga aplicando energía, recordará su estado indefinidamente?
clock
microcontroller
endolito
fuente
fuente
Respuestas:
Si. Si la hoja de datos dice "operación totalmente estática", puede registrarla a cualquier velocidad, incluso a 0 Hz. Un chip "dinámico" necesita tener un reloj a una velocidad específica o pierde su estado.
fuente
Estoy publicando otra respuesta, solo porque la última pregunta que tenía no fue respondida antes.
Todbot es completamente correcto. También atraerá menor potencia a velocidades más bajas. También significa que si suministra su reloj desde otro procesador, por ejemplo, podría dejar de suministrarlo en cualquier momento y luego comenzar a registrarlo más tarde, siempre que no vaya más rápido que la velocidad máxima, estará bien.
Los chips que tengo cambian de orden de magnitud entre un oscilador de 32768Hz y uno de 1MHz. He tenido aplicaciones en las que no necesitaba velocidad, solo necesitaba a otro pequeño que manejara algunos datos básicos por mí.
Espero que esto ayude.
fuente
La mayoría de los diseños modernos de microcontroladores funcionarán con cualquier patrón en su entrada de reloj, siempre y cuando ningún pulso alto esté por debajo de una cierta longitud mínima, ningún pulso bajo esté por debajo de una cierta longitud mínima, y no haya bajo-alto-bajo o alto-bajo-alto El par de pulsos está por debajo de cierta longitud. Esencialmente, lo que sucede es que después de que el chip realiza todas las acciones asociadas con un borde de reloj particular, el chip estará en un estado en el que no está haciendo nada más que esperar al siguiente borde de reloj. Si el próximo borde del reloj no llega durante diez días, entonces (a menos que el chip tenga algún perro guardián externo) el chip estará en el mismo estado que si el borde hubiera llegado en el momento en que el chip estaba listo para él.
Tenga en cuenta que, en general, pausar el reloj en un microcontrolador reducirá sustancialmente el consumo de corriente, pero no tanto como usar la función de "suspensión". El consumo de corriente de la mayoría de los microcontroladores en modo de "ejecución" se puede estimar bastante bien como una corriente de reposo constante más una cierta cantidad de corriente por ciclo por segundo (que podría expresarse más 'naturalmente' como carga por ciclo). Por ejemplo, un chip puede tener una corriente de reposo de 10uA, más una corriente de 0.1mA / MHz (100pC / ciclo). Ejecutar dicho chip a 10MHz produciría una corriente de 1.01mA. Ejecutarlo a 1MHz produciría 0.11mA. Ejecutarlo a 100KHz produciría 0.02mA. Ejecutarlo a 1Hz producirá 0.0100001mA. Por otro lado, el chip podría ofrecer una corriente de reposo de 1uA. Generalmente, entrar en modo de suspensión apagará completamente las áreas del chip que no harán nada útil mientras el chip está en reposo, evitando así cualquier corriente de fuga que tales áreas puedan tener. En algunos casos, también reducirá el voltaje a áreas como los archivos de registro a un nivel donde los archivos de registro puedan contener su contenido, pero no acceder a ellos muy rápidamente (ya que no se accederá en absoluto, la velocidad de acceso no importa) .
Algunos microprocesadores, microcontroladores y otros dispositivos más antiguos tenían tiempos máximos de reloj alto y / o reloj bajo. Dichos procesadores hicieron uso de la lógica dinámica para salvar los circuitos. Como ejemplo de lógica dinámica, considere un registro de desplazamiento: un bit de registro estático típico requiere un circuito de dos transistores para mantener el valor, mientras que un bit de registro dinámico mantiene el valor en la puerta de un transistor de lectura. Se puede realizar un registro de desplazamiento dinámico con reloj de dos fases en NMOS utilizando cuatro NFET y dos resistencias por bit. Un registro de desplazamiento estático requeriría ocho NFET y cuatro resistencias por bit. Los enfoques de lógica dinámica no son tan comunes hoy en día. En la década de 1970, la capacitancia de la puerta era sustancial y no había forma de deshacerse de ella. Por lo tanto, no había ninguna razón particular para no aprovecharlo. Hoy, la capacitancia de la puerta es generalmente mucho más baja, y los fabricantes de chips están tratando activamente de reducirla aún más. Hacer que la lógica dinámica funcione de manera confiable a menudo requeriría un trabajo deliberado para aumentar la capacitancia de la puerta. En la mayoría de los casos, el área de chip adicional necesaria para aumentar la capacitancia se podría usar con la misma eficacia para agregar más transistores para que la capacitancia sea innecesaria.
fuente
Sí, puede detener el reloj por completo y reiniciarlo más adelante sin consecuencias. Incluso podría reemplazar el reloj por un botón y revisar su programa literalmente paso a paso (frecuencia: aproximadamente 0.1 Hz).
La potencia es casi lineal con la frecuencia: a 10 MHz, el microcontrolador consumirá 10 veces más potencia que a 1 MHz. Sin embargo, esto no significa que a 0 Hz el consumo sea completamente cero. Siempre hay disipación estática, pero eso es muy bajo, generalmente 1 uA o menos.
PD: observe que el ADC tiene una frecuencia mínima de funcionamiento. Si la frecuencia es demasiado baja, el capacitor sobre el cual se mide el voltaje se descargará demasiado y su medición será incorrecta.
fuente
Llegando tarde a esta pregunta, me recordó un proyecto que vi hace un tiempo.
Es un detector de murciélagos que utiliza un PIC que funciona a cero Hz la mayor parte del tiempo, y luego se sincroniza con la señal que está detectando.
http://www.micro-examples.com/public/microex-navig/doc/077-picobat.html
fuente