La Red de Conocimientos Pedagógicos - Currículum vitae - ¿Introducción al AT89S52? ¿Quién sabe?

¿Introducción al AT89S52? ¿Quién sabe?

AT89S52 es un microcontrolador CMOS de 8 bits de bajo consumo y alto rendimiento producido por ATMEL, con memoria Flash programable en el sistema de 8K.

(1) Las funciones principales del AT89S52 se enumeran a continuación:

1 Tiene una CPU inteligente de 8 bits y Flash programable en el sistema.

>2. El chip tiene un oscilador de reloj interno (la frecuencia operativa máxima tradicional puede alcanzar los 12 MHz)

3. La memoria interna del programa (ROM) es de 8 KB

4. es de 256 bytes

p>

5. 32 líneas de E/S programables

6. 8 fuentes de vectores de interrupción

7. /p >

8. Memoria de programa cifrada de tres niveles

9. Canal serie UART full-duplex

(2) Introducción a las funciones de cada pin de AT89S52:

VCC:

Entrada positiva de fuente de alimentación AT89S52, conectada a +5V.

VSS:

Terminal de tierra de alimentación.

XTAL1:

La entrada del amplificador inversor del reloj del sistema de un solo chip.

XTAL2:

La salida del amplificador inversor del reloj del sistema. Generalmente, en el diseño, solo necesita conectarse a un sistema de cristal de oscilación de cuarzo agregando un pequeño capacitor de 20PF entre ellos. los dos pines y la tierra pueden hacer que el sistema sea más estable y evitar interferencias de ruido y fallas.

RESET:

El pin de reinicio del AT89S52 funciona en nivel alto. Cuando quieras reiniciar el chip, simplemente eleva el nivel de este pin a nivel alto y mantenlo durante dos segundos. En más de un ciclo de máquina, el AT89S51 puede completar varias acciones de reinicio del sistema, de modo que el contenido de los registros internos de funciones especiales se establezca en un estado conocido y el código del programa comience a leerse en la dirección 0000H para ejecutar el programa. .

EA/Vpp:

"EA" es la abreviatura de "External Access" en inglés, que significa acceder a código de programa externo. Opera a bajo nivel, lo que significa que cuando este. disparadores Después de que el pin esté conectado a un nivel bajo, el sistema utilizará el código del programa externo (almacenado en la EPROM externa) para ejecutar el programa. Por lo tanto, en 8031 ​​y 8032, el pin EA debe estar conectado a un nivel bajo porque no hay espacio de memoria de programa en su interior. Si se utiliza el espacio del programa interno 8751, este pin debe conectarse al nivel alto. Además, al grabar el código del programa en la EPROM interna del 8751, este pin se puede usar para ingresar el alto voltaje de grabación (Vpp) de 21 V.

ALE/PROG:

ALE es la abreviatura de "Address Latch Enable" en inglés, que significa señal de habilitación del bloqueo de dirección. AT89S52 puede usar este pin para activar un pestillo externo de 8 bits (como 74LS373) y bloquear el bus de direcciones (A0 ~ A7) del puerto 0 en el pestillo, porque AT89S52 envía la dirección y los datos. Por lo general, cuando se ejecuta el programa, la frecuencia de salida del pin ALE es aproximadamente 1/6 de la frecuencia operativa del sistema, por lo que puede usarse para controlar la entrada de la base de tiempo de otros chips periféricos. Además, al grabar el código del programa 8751, este pin se utilizará como una función especial de planificación del programa.

PSEN:

Esta es la abreviatura de "Program Store Enable", que significa habilitación de almacenamiento de programas, cuando 8051 está configurado para leer el modo de trabajo de código de programa externo (EA=0), esta señal se enviará para obtener el código del programa. Generalmente este pin está conectado al pin OE de la EPROM. AT89S52 puede usar los pines PSEN y RD para habilitar la RAM externa y la EPROM respectivamente, de modo que la memoria de datos y la memoria de programa se puedan combinar para utilizar completamente el rango de direccionamiento de 64K.

PUERTO 0 (P0.0~P0.7):

El puerto 0 es un puerto de entrada y salida bidireccional de drenaje abierto (Open Drain) de 8 bits, con un máximo de 8 Dígito de las unidades, P0.0 representa el bit 0, P0.1 representa el bit 1, y así sucesivamente.

Los otros tres puertos de E/S (P1, P2, P3) no tienen esta configuración de circuito, pero tienen un circuito de refuerzo interno. Cuando se usa P0 como E/S, puede impulsar la carga TTL de 8 LS. Si el pin EA está bajo (es decir, se accede al código de programa externo o a la memoria de datos), P0 proporciona el bus de direcciones (A0~A7) y el bus de datos (D0~D7) de forma multiplexada. El diseñador debe agregar un pestillo adicional para bloquear el pestillo de dirección enviado desde el puerto 0 a A0~A7, y luego combinarlo con A8~A15 enviado desde el puerto 2 para formar un bus de direcciones completo de 16 bits y direccionar el espacio de memoria externa de 64K. .

PUERTO2 (P2.0~P2.7):

El puerto 2 es un puerto de E/S bidireccional con un circuito de refuerzo interno. Cada pin puede empujar el TTL de 4 LS Load. , si la salida del puerto 2 está configurada en nivel alto, este puerto se puede utilizar como puerto de entrada. Además de usarse como puerto de E/S general, P2 también proporciona los bytes altos A8~A15 del bus de direcciones cuando el AT89S52 expande la memoria de programa externa o la memoria de datos. En este momento, P2 no se puede usar como E/S.

PUERTO 1 (P1.0~P1.7):

El puerto 1 también es un puerto de E/S bidireccional con circuito de refuerzo interno y su búfer de salida puede impulsar 4 cargas LS TTL. , de manera similar, si la salida del puerto 1 está configurada en nivel alto, los datos se ingresan desde este puerto. Si se usa 8052 o 8032, P1.0 se usa como pin de entrada de pulso externo del temporizador 2, y P1.1 puede tener la función T2EX y puede usarse como pin de activación de la entrada de interrupción externa.

PUERTO3 (P3.0~P3.7):

El puerto 3 también tiene un puerto de E/S bidireccional con un circuito de refuerzo interno y su búfer de salida puede impulsar 4 cargas TTL. Al mismo tiempo, la herramienta múltiple tiene otras funciones especiales adicionales, que incluyen comunicación en serie, control de interrupciones externas, control de tiempo y conteo y control de lectura o escritura del contenido de la memoria de datos externa.

La asignación de pines es la siguiente:

P3.0: RXD, entrada de comunicación serie.

P3.1: TXD, salida de comunicación serie.

P3.2: INT0, entrada de interrupción externa 0.

P3.3: INT1, entrada de interrupción externa 1.

P3.4: T0, entrada contador de temporización 0.

P3.5: T1, entrada contador de temporización 1.

P3.6: WR: Señal de escritura de memoria de datos externa.

P3.7: RD, señal de lectura de memoria de datos externa.

RST: Restablecer entrada. Cuando el oscilador reinicia el dispositivo, el pin RST debe mantenerse alto durante dos ciclos de la máquina.

ALE/PROG: Al acceder a la memoria externa, el nivel de salida permitido por el bloqueo de dirección se utiliza para bloquear el byte de estado de la dirección. Durante la programación FLASH, este pin se utiliza para ingresar pulsos de programación. En tiempos normales, el terminal ALE emite una señal de pulso positiva con un período de frecuencia constante, y esta frecuencia es 1/6 de la frecuencia del oscilador. Por lo tanto, se puede utilizar como pulso para una salida externa o con fines de temporización. Sin embargo, tenga en cuenta que se omitirá un pulso ALE siempre que se utilice como memoria de datos externa. Si desea deshabilitar la salida de ALE, establezca 0 en la dirección SFR8EH. En este momento, ALE solo funciona cuando las instrucciones MOVX y MOVC son ALE. Además, este pasador está ligeramente levantado. Si el microprocesador está en el estado de ejecución externa ALE desactivado, configurar este bit no tiene ningún efecto.

/PSEN: Señal estroboscópica para memoria de programa externa. /PSEN se afirma dos veces por ciclo de máquina durante la recuperación de instrucciones de la memoria de programa externa. Pero al acceder a la memoria de datos externa, estas dos señales /PSEN válidas no aparecerán.

/EA/VPP: Cuando /EA permanece bajo, la memoria de programa externa (0000H-FFFFH) se utiliza durante este período, independientemente de si hay memoria de programa interna. Tenga en cuenta que en el modo de cifrado 1, /EA está bloqueado internamente para REINICIAR; cuando el terminal /EA permanece alto, la memoria interna del programa está bloqueada. Durante la programación FLASH, este pin también se usa para aplicar la potencia de programación de 12 V (VPP).

XTAL1: La entrada del amplificador de oscilación inversa y la entrada del circuito de trabajo del reloj interno.

XTAL2: Salida del oscilador inversor.