Red de conocimiento informático - Conocimiento del nombre de dominio - Necesitamos urgentemente información en chino e inglés sobre la descripción general de los microcontroladores

Necesitamos urgentemente información en chino e inglés sobre la descripción general de los microcontroladores

HOJA DE DATOS DEL AT89C52

Características compatibles con los productos MCS-51 8K Bytes de memoria flash reprogramable en el sistema

– Resistencia: 1000 ciclos de escritura/borrado completamente estáticos Operación: 0 Hz a 24 MHz Bloqueo de memoria de programa de tres niveles RAM interna de 256 x 8 bits 32 líneas de E/S programables Tres temporizadores/contadores de 16 bits Ocho fuentes de interrupción Canal serie programable Modos de inactividad y apagado de bajo consumo

Descripción

El AT89C52 es un microordenador CMOS de 8 bits de bajo consumo y alto rendimiento con 8 Kbytes de memoria Flash de sólo lectura programable y borrable (PEROM). El dispositivo está fabricado con tecnología no volátil de alta densidad de Atmel. tecnología de memoria y es compatible con el conjunto de instrucciones y configuración de pines estándar de la industria 80C51 y 80C52. El flash en chip permite reprogramar la memoria del programa en el sistema o mediante un programador de memoria no volátil convencional combinando una CPU versátil de 8 bits con. Flash en un chip monolítico, el Atmel AT89C52 es un potente microordenador que proporciona una solución altamente flexible y rentable para muchas aplicaciones de control integradas.

El temporizador 2 consta de dos registros de 8 bits, TH2 y TL2. En la función de temporizador, el registro TL2 se incrementa en cada ciclo de la máquina. Dado que un ciclo de máquina consta de 12 períodos de oscilador, la tasa de conteo es 1/12 de la frecuencia del oscilador. En la función de contador, el registro se incrementa en respuesta a 1-. transición a-0 en su pin de entrada externo correspondiente,

T2 En esta función, la entrada externa se muestrea durante S5P2 de cada ciclo de la máquina cuando las muestras

Figura 1.

El temporizador en el modo de captura muestra un máximo en un ciclo y un. bajo en el siguiente ciclo, el conteo se incrementa. El nuevo valor de conteo aparece en el registro durante S3P1 del ciclo siguiente a aquel en el que se detectó la transición, ya que se requieren dos ciclos de máquina (24 períodos de oscilador) para reconocer un 1-. transición a 0, la tasa de conteo máxima es 1/24 de la frecuencia del oscilador. Para garantizar que un nivel determinado se muestree al menos una vez antes de que cambie, el nivel debe mantenerse durante al menos un ciclo completo de la máquina.

Modo de captura

En el modo de captura, se seleccionan dos opciones mediante el bit EXEN2 en T2CON. Si EXEN2 = 0, el temporizador 2 es un temporizador o contador de 16 bits que, en caso de desbordamiento, establece el bit TF2 en T2CON. Este bit se puede usar para generar una interrupción. Si EXEN2 = 1, el temporizador 2 realiza la misma operación, pero una transición de 1 a 0 en la entrada externa T2EX también hace que el valor actual en TH2 y TL2 se capture en RCAP2H. y RCAP2L, respectivamente. Además, la transición en T2EX hace que se establezca el bit EXF2 en T2CON. El bit EXF2, como TF2, puede generar una interrupción. El modo de captura se ilustra en la Figura 1. -Recarga (contador ascendente o descendente)

El temporizador 2 se puede programar para contar hacia arriba o hacia atrás cuando se configura en su modo de recarga automática de 16 bits. Esta función se invoca mediante el bit DCEN (habilitación del contador descendente). ubicado en el SFR T2MOD (ver Tabla 4 Al reiniciar).

, el bit DCEN se establece en 0, por lo que el temporizador 2 contará de forma predeterminada. Cuando se configura DCEN, el temporizador 2 puede contar hacia arriba o hacia abajo, dependiendo del valor del pin T2EX. La Figura 2 muestra el temporizador 2 contando automáticamente cuando DCEN. = 0. En este modo, se seleccionan dos opciones mediante el bit EXEN2 en T2CON. Si EXEN2 = 0, el temporizador 2 cuenta hasta 0FFFFH y luego establece el bit TF2 en caso de desbordamiento. El desbordamiento también hace que los registros del temporizador se recarguen con el 16. Valor de bits en RCAP2H y RCAP2L Los valores en Temporizador en modo de captura RCAP2H y RCAP2L están preestablecidos por software. Si EXEN2 = 1, se puede activar una recarga de 16 bits mediante un desbordamiento o mediante una transición de 1 a 0. en la entrada externa T2EX Esta transición también establece el bit EXF2. Tanto el bit TF2 como el EXF2 pueden generar una interrupción si están habilitados. La configuración del bit DCEN permite que el temporizador 2 cuente hacia arriba o hacia abajo, como se muestra en la Figura 3. Controles de pin T2EX

Hoja de datos AT89C52

Principales parámetros de rendimiento: u19982X Las instrucciones y los pines del producto MCS-51 son totalmente compatibles Memoria flash regrabable de 8k bytes 1000 ciclos de borrado u20840X Operación estática: 0Hz-24MHz u19977 Modo eléctrico

AT89C52 es un microcontrolador CMOS de 8 bits de alto rendimiento y bajo voltaje producido por ATMEL Corporation de los Estados Unidos. Contiene 8k bytes de memoria de programa Flash regrabable de solo lectura y 256 bytes de. Memoria de datos de acceso aleatorio (RAM), el dispositivo se produce utilizando la tecnología de almacenamiento no volátil de alta densidad de ATMEL y es compatible con pines con el sistema de instrucciones estándar MCS-51 y el producto 8052. Unidad central de procesamiento (CPU) de 8 bits y unidad de memoria Flash. El potente microcontrolador AT89C52 es adecuado para muchas aplicaciones de control más complejas.

Resumen de características funcionales:

AT89C52 proporciona las siguientes funciones estándar: 8k bytes de memoria Flash, 256 bytes de RAM interna, 32 líneas de E/S, 3 temporizadores/ contador, una estructura de interrupción de dos niveles de 6 vectores, un puerto de comunicación en serie full-duplex, un oscilador en chip y un circuito de reloj.

Al mismo tiempo, el AT89C52 puede funcionar con lógica estática de hasta 0 Hz y admite dos modos operativos de ahorro de energía seleccionables por software. El modo inactivo detiene la CPU pero permite que la RAM, el temporizador/contadores, el puerto de comunicación serie y el sistema de interrupción sigan funcionando. El modo de apagado guarda el contenido de la RAM, pero detiene el oscilador y desactiva todos los demás componentes hasta el próximo reinicio del hardware.

Descripción de la función del pin Vcc: voltaje de fuente de alimentación GND: tierra P0: El puerto P0 es un conjunto de puertos de E/S bidireccionales de drenaje abierto de 8 bits, es decir, puertos de multiplexación de bus de dirección/datos. Cuando se utiliza como puerto de salida, el bit puede controlar 8 circuitos de puerta lógica TTL absorbiendo corriente. Cuando se escribe "1" en el puerto P0, se utiliza como terminal de entrada de alta impedancia. Al acceder a la memoria de datos externa o a la memoria de programa, la línea del puerto de grupo comparte el tiempo la dirección (8 bits inferiores) y la multiplexación del bus de datos, y activa la resistencia pull-up interna durante el acceso. Durante la programación Flash, el puerto P0 recibe el byte de instrucción y, durante la verificación del programa, se emite el byte de instrucción. Se requiere una resistencia pull-up externa durante la verificación. P1: La etapa de búfer de salida del puerto P1 es un puerto de E/S bidireccional de 8 bits con una resistencia pull-up interna que puede controlar (sumidero o corriente de salida) 4 circuitos de compuerta lógica TTL. Escriba "1" en el puerto para llevar el puerto a un nivel alto a través de la resistencia pull-up. En este momento, se puede utilizar como puerto de entrada. Cuando se usa como puerto de entrada, debido a que hay una resistencia pull-up interna, se emitirá una corriente (IIL) cuando una señal externa baja un determinado pin. La diferencia con AT89C51 es que P1.0 y P1.1 también se pueden usar como entrada de conteo externa (P1.0/T2) y entrada (P1.1/T2EX) del temporizador/contador 2 respectivamente, consulte la Tabla 1. Durante la programación Flash y la verificación del programa, P1 recibe los 8 bits inferiores de la dirección. P2: El puerto P2 es un puerto de E/S bidireccional de 8 bits con una resistencia pull-up interna. La etapa de búfer de salida de P2 puede controlar (sumidero o corriente de salida) 4 circuitos de puerta lógica TTL. Escriba "1" en el puerto P2 y lleve el puerto a un nivel alto a través de la resistencia pull-up interna. En este momento, se puede usar como puerto de entrada cuando se usa como puerto de entrada, porque hay un pull-up interno. resistencia, un determinado pin es tirado por una señal externa. Cuando está bajo, se emitirá una corriente (IIL). Al acceder a la memoria de programa externa o a la memoria de datos externa con una dirección de 16 bits (como al ejecutar la instrucción MOVX @DPTR), el puerto P2 envía los datos de la dirección alta de 8 bits. Al acceder a una memoria de datos externa con una dirección de 8 bits (como al ejecutar la instrucción MOVX @RI), el puerto 2 genera el contenido del pestillo P2. Durante la programación o verificación Flash, P2 también recibe la dirección de orden superior y algunas señales de control. Puerto P3: El puerto P3 es un conjunto de puertos de E/S bidireccionales de 8 bits con resistencias pull-up internas. La etapa de búfer de salida del puerto P3 puede controlar (sumidero o corriente de salida) 4 circuitos de puerta lógica TTL. Cuando se escribe "1" en el puerto P3, la resistencia pull-up interna los eleva y se pueden usar como puerto de entrada. En este momento, el puerto P3 que está bajado externamente utilizará una resistencia pull-up para generar corriente de salida (IIL). Además de ser una línea de puerto de E/S general, el puerto P3 se utiliza más importantemente como su segunda función, como se muestra en la siguiente tabla: RST: entrada de reinicio. Cuando el oscilador está funcionando, un nivel alto en el pin RST durante más de dos ciclos de la máquina restablecerá el microcontrolador. ALE/PROG: Al acceder a la memoria de programa externa o a la memoria de datos, el pulso de salida ALE (Habilitación de bloqueo de dirección) se utiliza para bloquear el byte inferior de 8 bits de la dirección. En circunstancias normales, ALE todavía emite una señal de pulso fija a 1/6 de la frecuencia de oscilación del reloj, por lo que puede emitir un reloj externamente o usarse con fines de temporización. Nota: Se omitirá un pulso ALE cada vez que se acceda a la memoria de datos externa. Este pin también se utiliza para ingresar el pulso de programación (PROG) durante la programación de la memoria Flash. Si es necesario, la operación ALE se puede desactivar configurando el bit D0 en la ubicación 8EH en el área del Registro de funciones especiales (SFR). Una vez establecido este bit, solo una instrucción MOVX y MOVC puede activar ALE. Además, este pin se elevará débilmente cuando el microcontrolador ejecute un programa externo, el bit de desactivación ALE debe configurarse como no válido. PSEN: La salida de habilitación de almacenamiento de programa (PSEN) es la señal estroboscópica de lectura de la memoria de programa externa. Cuando el AT89C52 recupera instrucciones (o datos) de la memoria de programa externa, PSEN es válido dos veces por ciclo de máquina, es decir, son dos pulsos. producción.

Durante este período, al acceder a la memoria de datos externa, la señal PSEN se omitirá dos veces. EA/VPP: Acceso externo permitido. Para que la CPU solo acceda a la memoria de programa externa (dirección 0000H-FFFFH), el terminal EA debe mantenerse bajo (conectado a tierra). Cabe señalar que si se programa el bit de cifrado LB1, el estado del terminal EA se bloqueará internamente durante el reinicio. Si el terminal EA es de nivel alto (conectado al terminal Vcc), la CPU ejecuta las instrucciones en la memoria interna del programa. Al programar la memoria Flash, este pin se acopla con la fuente de alimentación Vpp permitida de programación de +12 V. Por supuesto, esto debe ser que el dispositivo utilice el voltaje de programación Vpp de 12 V. XTAL1: Entrada del amplificador inversor del oscilador y generador de reloj interno. XTAL2: La salida del amplificador inversor del oscilador. \u29305X Registro de función especial: en la memoria en chip AT89C52, 80H-FFH ***128 unidades son registros de función especial (SFE). El mapa del espacio de direcciones de SFR se muestra en la Tabla 2. No todas las direcciones están definidas, solo una parte de los 128 bytes desde 80H hasta FFH está definida y una parte considerable no está definida. La lectura y escritura de unidades indefinidas no será válida, los valores leídos serán inciertos y los datos escritos se perderán. Los datos "1" no deben escribirse en unidades no definidas porque a estas unidades se les pueden dar nuevas funciones en productos futuros. En este caso, los valores de estas unidades siempre serán "0" después del reinicio.

Además de todos los temporizadores/contadores 0 y temporizadores/contadores 1 de AT89C51, AT89C52 también añade un temporizador/contador 2. Los bits de control y estado del temporizador/contador 2 están ubicados en T2CON (consulte la Tabla 3) y T2MOD (consulte la Tabla 4). El par de registros (RCAO2H, RCAP2L) son los registros de captura/recarga automática. \u20013Registro de interrupción: AT89C52 tiene 6 fuentes de interrupción y 2 prioridades de interrupción. El registro IE controla cada bit de interrupción. Cada una de las 6 fuentes de interrupción en el registro IP se puede configurar en 2 prioridades. \u25968X Memoria de datos: AT89C52 tiene 256 bytes de RAM interna, los 128 bytes superiores de 80H-FFH se superponen con la dirección del registro de función especial (SFR), es decir, la dirección de los 128 bytes superiores de RAM y el registro de función especial es Iguales, pero físicamente están separados. Cuando una instrucción accede a una unidad de dirección interna superior a 7FH, el modo de direccionamiento utilizado en la instrucción es diferente, es decir, el modo de direccionamiento determina si se accede a los 128 bytes superiores de RAM o al registro de función especial. Si la instrucción está en modo de direccionamiento directo, accede al registro de función especial. Por ejemplo, la siguiente instrucción de direccionamiento directo accede a la unidad de dirección del registro de función especial 0A0H (es decir, el puerto P2). MOV 0A0H, la instrucción de direccionamiento indirecto #data accede a los 128 bytes superiores de RAM. Por ejemplo, en la siguiente instrucción de direccionamiento indirecto, el contenido de R0 es 0A0H, entonces la dirección del byte de datos a la que se accede es 0A0H, no el puerto P2 (0A0H). MOV@R0,#la operación de pila de datos también es un método de direccionamiento indirecto, por lo que la RAM de datos superior de 128 bits también se puede utilizar como área de pila. \u23450X Temporizador 0 y Temporizador 1: El temporizador 0 y el temporizador 1 de AT89C52 funcionan de la misma manera que AT89C51. \u23450X Temporizador 2: El temporizador 2 es un temporizador/contador de 16 bits. Puede usarse como temporizador o contador de eventos externo, y su modo de trabajo se selecciona mediante el bit C/T2 del registro de función especial T2CON (ver Tabla 3). El temporizador 2 tiene tres modos de trabajo: modo de captura, modo de recarga automática (conteo ascendente o descendente) y modo de generador de velocidad en baudios. El modo de trabajo se selecciona mediante el bit de control de T2CON, consulte la Tabla 4.

El temporizador 2 consta de dos registros de 8 bits TH2 y TL2. En el modo de funcionamiento del temporizador, el valor del registro TL2 se incrementa en 1 para cada ciclo de la máquina, ya que un ciclo de la máquina consta de 12 relojes de oscilación. Por lo tanto, la tasa de conteo es 1/12 de la frecuencia de oscilación.

En el modo de conteo, cuando la señal de entrada externa en el pin T2 genera un flanco descendente de 1 a 0, el valor del registro se incrementa en 1. En este modo de operación, la entrada externa se muestrea durante 5SP2 de cada ciclo de la máquina. . Si el valor tomado en el primer ciclo de la máquina es 1 y el valor tomado en el siguiente ciclo de la máquina es 0, el registro se incrementa en 1 durante S3P1 del siguiente ciclo. Dado que se necesitan 2 ciclos de máquina (24 ciclos de oscilación) para reconocer una transición de 1 a 0, la tasa de conteo máxima es 1/24 de la frecuencia de oscilación. Para garantizar la precisión del muestreo, se requiere que el nivel de entrada se mantenga durante al menos un ciclo completo antes de cambiar para garantizar que la señal de entrada se muestree al menos una vez. Modo de captura: En el modo de captura, se seleccionan dos modos a través del bit de control T2CON EXEN2. Si EXEN2=0, el temporizador 2 es un temporizador o contador de 16 bits. Cuando el conteo se desborda, se activa el indicador de desbordamiento TF2 de T2CON y la interrupción se activa al mismo tiempo. Si EXEN2=1, el temporizador 2 completa la misma operación, y cuando la señal de entrada externa del pin T2EX sufre una transición negativa de 1 a 0, los valores en TH2 y TL2 se capturan en RCAP2H y RCAP2L respectivamente. Además, la transición de la señal del pin T2EX hace que se establezca EXF2 en T2CON. De manera similar a TF2, EXF2 también activará la interrupción. Modo de recarga automática (contador ascendente o descendente) Cuando el temporizador 2 funciona en modo de recarga automática de 16 bits, se puede programar en modo de conteo ascendente o descendente. Esta función se puede utilizar a través del registro de función especial T2CON (consulte la Tabla 5). seleccionado por el bit DCEN (permitiendo la cuenta regresiva). Al restablecerse, el bit DCEN es "0" y el temporizador 2 está configurado para contar de forma progresiva. Cuando se configura DCEN, el temporizador 2 puede contar hacia arriba o hacia abajo, dependiendo del valor del pin T2EX, consulte la Figura 5. Cuando DCEN = 0, el temporizador 2 se configura automáticamente para contar hacia arriba. En este modo de caso, el bit de control EXEN2 está activado. T2CON tiene dos opciones si EXEN2=0, el temporizador 2 cuenta hasta 0FFFFH y se desborda, configura TF2 para activar la interrupción y al mismo tiempo recarga los registros de conteo de 16 bits RCAP2H y RCAP2L, RCAP2H y RCAP2L. El valor se puede preestablecer. por software. Si EXEN2=1, la recarga de 16 bits del temporizador 2 se activa mediante un desbordamiento o un flanco descendente de 1 a 0 en la entrada externa T2EX. Este pulso establece EXF2, que también genera una interrupción si las interrupciones están habilitadas.

Cuando DCEN=0, el temporizador 2 puede contar hacia arriba o hacia abajo, como se muestra en la Figura 6. En este modo, el pin T2EX controla la dirección del contador. Cuando el pin T2EX es "1" lógico, el temporizador cuenta hacia arriba. Cuando el conteo 0FFFFH se desborda hacia arriba, se establece TF2 y los registros de conteo de 16 bits RCAP2H y RCAP2L se recargan en TH2 y TL2. Cuando el pin T2EX es "0" lógico, el temporizador 2 cuenta hacia atrás. Cuando los valores en TH2 y TL2 son iguales a los valores en RCAP2H y RCAP2L, el conteo se desborda, se configura TF2 y se recarga el valor 0FFFFH. en el registro de tiempos. Cuando el temporizador/contador de eventos 2 se desborda o se desborda por defecto, se establece el bit EXF2. Generador de velocidad en baudios

Cuando se configuran TCLK y RCLK en T2CON, el temporizador/contador 2 se utiliza como generador de velocidad en baudios. Si se utiliza el temporizador/contador 2 como transmisor o receptor, sus velocidades en baudios de transmisión y recepción pueden ser diferentes, y el temporizador 1 se utiliza para otras funciones, como se muestra en la Figura 7. Si se configuran RCLK y TCLK, el temporizador 2 funciona en modo generador de velocidad en baudios.

El modo del generador de velocidad en baudios es similar al modo de recarga automática. En este modo, el cambio TH2 hace que el registro del temporizador 2 se recargue con el valor de 16 bits en RCAP2H y RCAP2L. está determinado por la configuración del software. En el modo 1 y en el modo 3, el temporizador puede funcionar tanto en modo de cronometraje como en modo de conteo. En la mayoría de las aplicaciones, funciona en modo de cronometraje (C/T2=0).

Cuando el Temporizador 2 se utiliza como generador de velocidad en baudios, su funcionamiento es diferente al de un temporizador. Normalmente, cuando se utiliza como temporizador, el valor del registro aumenta en 1 en cada ciclo de la máquina (1/12 de frecuencia de oscilación). y como velocidad en baudios Cuando se utiliza el generador, el valor del registro se incrementa en 1 en cada momento del estado (1/2 frecuencia de oscilación). El circuito utilizado por el temporizador 2 como generador de velocidad en baudios se muestra en la Figura 7. El modo de trabajo de velocidad en baudios sólo es válido cuando RCLKTCLK=1 en T2CON. En el modo generador de velocidad en baudios, un cambio TH2 no puede configurar TF2 y, por lo tanto, no genera una interrupción. Sin embargo, si se configura EXEN2 y el terminal T2EX genera una transición negativa de 1 a 0, se configurará EXF2. En este momento, el contenido de (RCAP2H, RCAP2L) no se puede volver a cargar en TH2 y TL2. Por lo tanto, cuando se utiliza el Temporizador 2 como generador de velocidad en baudios, T2EX se puede utilizar como fuente de interrupción externa adicional. Cabe señalar que cuando el Temporizador 2 funciona como un dispositivo de velocidad de baudios y se ejecuta como un temporizador (TR2=1), no se puede acceder a TH2 y TL2. Debido a que cada temporizador de estado se incrementará en 1 en este momento, leerlo y escribirlo dará como resultado un valor incierto. Sin embargo, para RCAP2 es legible pero no escribible, porque la operación de escritura será una recarga y la operación de escritura puede causar errores de escritura y/o recarga. El temporizador debe apagarse (borrar TR2) antes de acceder al registro del Temporizador 2 o RCAP2.

El temporizador 2 se puede programar para emitir una señal de reloj con un ciclo de trabajo del 50% desde P1.0, como se muestra en la Figura 8. Además de ser un puerto de E/S estándar, el pin P1.0 también se puede programar para funcionar como entrada de reloj externo para el temporizador/contador 2 y para generar un pulso de reloj con un ciclo de trabajo del 50 %. Cuando la frecuencia de oscilación del reloj es de 16 MHz, el rango de frecuencia del reloj de salida es de 61 Hz a 4 MHz. Al configurar el temporizador/contador 2 como generador de reloj, C/T2 (T2CON.1) = 0, T2OE (T2MOD.1) = 1, el temporizador debe iniciarse o detenerse mediante TR2 (T2CON.2). La frecuencia de salida del reloj depende de la frecuencia de oscilación y el valor de recarga del registro de captura del Temporizador 2 (RCAP2H, RCAP2L). En el modo de salida del reloj, el giro del Temporizador 2 no generará una interrupción. Esta característica es consistente con cuando se usa como. un generador de velocidad en baudios similar. Cuando el Temporizador 2 se usa como generador de velocidad en baudios, también se puede usar como generador de reloj, pero debe tenerse en cuenta que la velocidad en baudios y la frecuencia de salida del reloj no se pueden determinar por separado porque ambos usan RCAP2L y RCAP2L. UART:

La UART del AT89C52 funciona de la misma manera que la del AT89C51. \u20013X AT89C52*** tiene 6 vectores de interrupción: dos interrupciones externas (INT0 e INT1), 3 interrupciones de temporizador (temporizador 0, 1, 2) e interrupción del puerto serie. Todas estas fuentes de interrupción se muestran en la Figura 9. Estas fuentes de interrupción se pueden controlar para habilitar o deshabilitar cada interrupción configurando o borrando el registro especial IE respectivamente. IE también tiene un bit de desactivación total EA, que controla si todas las interrupciones están habilitadas o deshabilitadas. Tenga en cuenta que IE.6 en la Tabla 5 es un bit reservado y IE.5 también es un bit reservado en AT89C51. Los programadores no deben escribir "1" en estos bits, son extensiones para futuros productos de la serie AT89. La interrupción del temporizador 2 es generada por el OR lógico de TF2 y EXF2 en T2CON. Cuando se pasa a la rutina de servicio de interrupción, el hardware no puede borrar estos bits de bandera. De hecho, la rutina de servicio necesita determinar si TF2 o EXF2 generan la. interrupción, y la interrupción es generada por el software. Borre el bit de bandera de interrupción. Los bits de indicador TF0 y TF1 del temporizador 0 y el temporizador 1 se configuran en el estado S5P2 del ciclo de la máquina cuando el temporizador se desborda, y el indicador de interrupción no se consultará hasta el siguiente ciclo de la máquina. Sin embargo, el bit de bandera TF2 del temporizador 2 se establece en el estado S2P2 del ciclo de la máquina cuando el temporizador se desborda, y la bandera se consulta en el mismo ciclo de la máquina. \u26102Oscilador de reloj X: hay un amplificador inversor de alta ganancia que se utiliza para formar el oscilador interno en AT89C52. Los pines XTAL1 y XTAL2 son los terminales de entrada y salida del amplificador respectivamente.

Este amplificador, junto con un cristal de cuarzo fuera del chip o un resonador cerámico como elemento de retroalimentación, forma un oscilador autoexcitado. Consulte la Figura 10 para ver el circuito de oscilación. Un cristal de cuarzo externo (o resonador cerámico) y los condensadores C1 y C2 están conectados en el circuito de retroalimentación del amplificador para formar un circuito de oscilación paralelo. Aunque no existen requisitos muy estrictos para los condensadores externos C1 y C2, la capacitancia afectará ligeramente la frecuencia de oscilación, la estabilidad del oscilador, la dificultad de iniciar la oscilación y la estabilidad de la temperatura. Si se utiliza cristal de cuarzo, nosotros. El condensador recomendado es 30pF±10pF, y si se utiliza un resonador cerámico, se recomienda elegir 40pF±10F. El usuario también puede utilizar un reloj externo. El circuito que utiliza un reloj externo se muestra en el lado derecho de la Figura 10. En este caso, el pulso del reloj externo se conecta al terminal XTAL1, que es el terminal de entrada del generador de reloj interno, y XTAL2 se deja flotando.

Dado que la señal del reloj externo se utiliza como señal del reloj interno después de pasar por un flip-flop dividido por 2, no existen requisitos especiales para el ciclo de trabajo de la señal del reloj externo, pero sí el mínimo. duración del nivel alto y nivel bajo máximo La duración del nivel debe cumplir con los requisitos de las condiciones técnicas del producto. \u31354X Modo de ahorro de energía inactivo: en el modo de trabajo inactivo, la CPU está en estado de suspensión y todos los periféricos del chip permanecen activos. Este método lo genera el software. En este momento, el contenido de la RAM del chip y todos los registros de funciones especiales se congelan al mismo tiempo. El modo inactivo puede finalizarse mediante cualquier solicitud de interrupción habilitada o reinicio del hardware. Terminar el estado inactivo mediante un reinicio del hardware solo requiere una señal de reinicio válida para dos ciclos de la máquina. En este estado, el hardware en el chip prohíbe el acceso a la RAM interna, pero puede acceder a los pines del puerto cuando el modo inactivo finaliza con un reinicio. , para evitar posibles daños al puerto por escritura inesperada, la instrucción que sigue a la instrucción que activa el modo inactivo no debe ser una instrucción de escritura en un puerto o memoria externa. \u31354X Modo de ahorro de energía inactivo: en el modo de trabajo inactivo, la CPU está en estado de suspensión y todos los periféricos del chip permanecen activos. Este método lo genera el software. En este momento, el contenido de la RAM del chip y todos los registros de funciones especiales se congelan al mismo tiempo. El modo inactivo puede finalizarse mediante cualquier solicitud de interrupción habilitada o reinicio del hardware. Terminar el estado inactivo mediante un reinicio del hardware solo requiere una señal de reinicio válida para dos ciclos de la máquina. En este estado, el hardware en el chip prohíbe el acceso a la RAM interna, pero puede acceder a los pines del puerto cuando el modo inactivo finaliza con un reinicio. , para evitar posibles daños al puerto por escritura inesperada, la instrucción que sigue a la instrucción que activa el modo inactivo no debe ser una instrucción de escritura en un puerto o memoria externa. \u25481X Modo de apagado: en el modo de apagado, el oscilador deja de funcionar. La instrucción que ingresa al modo de apagado es la última instrucción que se ejecuta. El contenido de la RAM en el chip y los registros de funciones especiales se congelan antes de finalizar el encendido. modo abajo. La única forma de salir del modo de apagado es reiniciando el hardware. Después del reinicio, se redefinirán todos los registros de funciones especiales, pero el contenido de la RAM no cambiará. El reinicio no debería ser válido antes de que Vcc vuelva al funcionamiento normal. nivel, y debe mantenerse durante un cierto período de tiempo. El oscilador se reinicia y opera de manera estable. \u31243X cifrado de memoria de secuencia: AT89C52 tiene 3 bits de cifrado de programa Los 3 bits de cifrado LB1, LB2 y LB3 en el chip se pueden programar (P) o no programar (U) para obtener las funciones que se muestran en la Tabla 7: Cuando el cifrado. El bit LB1 está programado, durante el período de reinicio, el nivel lógico del terminal EA se muestrea y se bloquea. Si el microcontrolador no se reinicia después del encendido, el valor inicial del bloqueo es un número aleatorio, y este número aleatorio siempre será. guardar hasta el reinicio real. Para que el microcontrolador funcione correctamente, el valor del nivel EA bloqueado debe ser consistente con el nivel lógico actual del pin. Además, los bits de cifrado sólo se pueden borrar borrando todo el chip.