registros de rendimiento particular (SFR) del microcontrolador 8051
En el anterior tutorial sobre el microcontrolador 8051, hemos visto el conjunto de instrucciones y los modos de direccionamiento. En este tutorial, veremos los Registros de Rendimiento Particular del Microcontrolador 8051 o SFRs.
Si tienes en cuenta el Tutorial del Grupo de Reminiscencia del Microcontrolador 8051, la RAM interna o Reminiscencia de Conocimiento del Microcontrolador 8051 se divide en Registros de Función Básica, Registros Direccionables por Bit, Bancos de Registros y Registros de Realización Particular o SFRs.
Los registros de rendimiento particular del microcontrolador 8051 se utilizan para programar y gestionar periféricos {hardware} completamente diferentes, como temporizadores, puerto serie, puertos de E/S y muchos otros. De hecho, manipulando los Registros de Rendimiento Particular (SFR) del microcontrolador 8051, puedes evaluar o cambiar el funcionamiento del microcontrolador 8051.
A modo de recordatorio, la siguiente imagen te revela la construcción esencial de la RAM interna del microcontrolador 8051.
registros de rendimiento particular (SFR) del microcontrolador 8051
Los Registros de Rendimiento Particular del Microcontrolador 8051 actúan como una tabla de gestión que supervisa y gestiona el funcionamiento del Microcontrolador 8051. Si te fijas en Inside RAM Construction, la Casa del Asa de 80H a FFH está asignada a SFRs.
De esas 128 Áreas de Reminiscencia (80H a FFH), sólo hay 21 áreas que pueden asignarse realmente a los SFR. Cada SFR tiene un Manejador de Bytes y también un título singular que especifica su función.
Dado que los SFR forman parte de la construcción de la RAM interna, podrás introducir los SFR como si entraras en la RAM interna. La principal distinción es la casa de la manija: los primeros 128 Bytes (00H a 7FH) son para la RAM interior normal y los 128 Bytes siguientes (80H a FFH) son para los SFR.
TIP: Como sólo se asignan 21 de las 128 áreas de reminiscencia potenciales del SFR, se recomienda encarecidamente que no se acceda normalmente a los registros o áreas de reminiscencia restantes durante la programación.
Antes de seguir adelante, hazte una idea de la ARQUITECTURA DEL MICROCOCONTROLADOR 8051.
Registros de actuación privada del microcontrolador 8051
- A o ACC
- B
- DPL
- DPH
- IE
- IP
- P0
- P1
- P2
- P3
- PCON
- PSW
- SCON
- SBUF
- SP
- TMOD
- TCON
- TL0
- TH0
- TL1
- TH1
Clases de registro de rendimiento particular de los microcontroladores 8051
Los 21 Registros de Ejecución Particulares (SFR) del Microcontrolador 8051, junto con sus características y el manejo de la RAM interna, se proporcionan en el siguiente escritorio.
Existen numerosos métodos para clasificar estos 21 Registros de Rendimiento Particular, sin embargo, descubro que el siguiente medio es aceptable. Los 21 registros de rendimiento particular del microcontrolador 8051 se clasifican en siete equipos. Son:
Registros matemáticos o de la CPU: A y B
Registro permanente: PSW (frase de programa permanente)
Registros de punteros: DPTR (puntero de conocimiento - DPL, DPH) y SP (puntero de pila)
Cierres de puertos de E/S: P0 (puerto 0), P1 (puerto 1), P2 (puerto 2) y P3 (puerto 3)
Registros de gestión periférica: PCON, SCON, TCON, TMOD, IE y IP
Registros de conocimientos periféricos: TL0, TH0, TL1, TH1 y SBUF
Registros de la CPU o de las matemáticas
A o Acumulador (ACC)
El Acumulador o Registro A es un SFR importante y el más utilizado del microcontrolador 8051. El Registro A se encuentra en el cable E0H dentro de la casa de recuerdos SFR. El Acumulador se utiliza para cargar la información de casi todas las operaciones de la ALU.
Algunas de las operaciones en las que se utiliza el Acumulador son:
- Operaciones aritméticas como la suma, la resta, la multiplicación y muchas otras.
- Operaciones lógicas como AND, OR, NOT y muchas otras.
- Operaciones de intercambio de conocimientos (entre el 8051 y la memoria externa)
El título de "Acumulador" surgió precisamente del hecho de que este registro se utiliza para construir (o revender) los resultados de toda la Aritmética y de muchas de las Operaciones Lógicas.
B (Registro B)
El registro B se utiliza junto con el ACC en las operaciones de multiplicación y división. Estas dos operaciones se realizan con información que sólo puede almacenarse en los registros A y B. A lo largo de la operación de multiplicación, uno de los muchos operandos (multiplicador o multiplicador) se almacena en el Registro B y también el byte superior del resultado final.
En el caso de la operación de división, el registro B contiene el divisor y también el resto del resultado final. También se puede utilizar como Registro de Función Básica para las operaciones regulares y los programadores lo suelen utilizar como Registro Auxiliar para los resultados no permanentes de los minoristas.
El Registro B se encuentra en el asa F0H de la Casa del Asa SFR.
Declaración del programa permanente (PSW)
El PSW o Registro de frases permanentes del programa también puede conocerse como Registro de banderas y es, sin duda, uno de los SFR esenciales. El Registro PSW consta de Bits de Bandera, que ayudan al programador a comprobar el estado del resultado final y también a realizar selecciones.
Los indicadores son bits de almacenamiento de 1 bit que el comerciante señala el carácter del resultado final que se genera al ejecutar las instrucciones seguras. La siguiente imagen muestra el contenido del Registro PSW.
El siguiente escritorio describe el funcionamiento de cada bandera.
Registros de punteros
Puntero del conocimiento (DPTR - DPL y DPH)
El puntero de conocimiento es un registro de 16 bits y es la mezcla de los SFRs DPL (puntero de conocimiento bajo) y DPH (puntero de conocimiento excesivo). El puntero de conocimiento puede utilizarse como un único registro de 16 bits (como DPTR) o como dos registros de 8 bits (como DPL y DPH).
El DPTR no tiene un asa de reminiscencia corporal, pero el DPL (Byte de disminución del DPTR) y el DPH (Byte de aumento del DPTR) tienen direcciones separadas dentro de la casa de reminiscencia del SFR. DPL = 82H y DPH = 83H.
El Registro DPTR lo utiliza el programador para dirigirse a la memoria externa (Programa - ROM o Conocimiento - RAM).
Stylus de pila (SP)
El SP o puntero de la pila es el factor más alto de la pila y significa la siguiente información a la que se va a acceder. Se puede acceder al puntero de la pila mediante las direcciones PUSH, POP, CALL y RET. El puntero de la pila es un registro de 8 bits y al reiniciar, el puntero de la pila se inicializa con 07H.
Cuando escribes un nuevo byte de información en la pila, el SP (puntero de pila) se incrementa rutinariamente en 1 y la nueva información se escribe en un manejador SP+1. Cuando se estudia la información de la pila, se recupera la información del manejador en SP y después se decrementa el SP en 1 (SP-1).
Registros de puertos de E/S (P0, P1, P2 y P3)
El Microcontrolador 8051 4 Puertos que pueden ser utilizados como Entrada y/o Salida. Estos 4 puertos son P0, P1, P2 y P3. Cada puerto tiene un registro correspondiente con nombres similares (los registros de los puertos son además P0, P1, P2 y P3). Las direcciones de los registros de los puertos son las siguientes: P0 - 80H, P1 - 90H, P2 - A0H y P2 - B0H.
Cada bit de estos SFR se corresponde con al menos un pin del cuerpo del microcontrolador 8051. Todos estos Registros de Puerto son direccionables a cada bit y direccionables a cada Byte. La escritura de 1 o 0 en un bit del registro del puerto se reflejará como una tensión aceptable (5V y 0V) en el pin correspondiente.
Si un Bit de Puerto está SET (declarado como 1), el Pin de Puerto correspondiente se configurará como Entrada y del mismo modo si un Bit de Puerto está CLEARED (declarado como 0), el Pin de Puerto correspondiente se configurará como Salida. Tras el reinicio, todos los Bits de los Puertos son SET (1) y, por tanto, todos los Pines de los Puertos están configurados como Entradas.
Registros de gestión de periféricos
PCON (Gestión de la energía)
El registro PCON o de Gestión de la Energía, ya que el título lo indica, se utiliza para regular los modos de energía del microcontrolador 8051 y se encuentra en el 87H de la casa de recuerdos SFR. Utilizando dos bits dentro del registro PCON, el microcontrolador puede configurarse para el modo inactivo y el modo de bajo consumo.
NOTA: El registro PCON no debe ser un bit direccionable.
A lo largo del modo de reposo, el microcontrolador dejará de enviar la señal de reloj a la ALU (CPU), sin embargo se la da a diferentes periféricos como el temporizador, la serie, las interrupciones y muchos otros. Para terminar el modo inactivo, debes utilizar una interrupción o un reinicio del {hardware}.
En el modo de reducción de energía, el oscilador debe detenerse y la capacidad debe disminuir a 2V. Para acabar con el Modo de Descenso de Energía, debes utilizar {Hardware} Reiniciar.
Además de estas dos, el Registro PCON también puede utilizarse para otras funciones. El bit SMOD dentro del registro PCON se utiliza para regular la velocidad de transmisión del puerto serie.
Hay dos funciones comunes Bits de bandera dentro del Registro PCON, que pueden ser utilizados por el programador a lo largo de la ejecución.
El siguiente escritorio describe el funcionamiento de cada bit dentro del Registro PCON.
Bit |
Imagen | Descripción | Más información |
7 | SMOD | Comunicación en serie Cambio de bits de la velocidad de transmisión |
Si es 1, duplica el precio de los baudios utilizando el temporizador 1. Si es 0, el precio normal del temporizador es de 1 baudio. |
6 - 4 |
-- | - | |
3 |
GF1 |
Indicador de consumo de la función básica (bit 1) |
|
2 | GF0 | Indicador de consumo de la función básica (Bit 0) | |
1 |
PD | Baja potencia | Para entrar en el modo de bajo consumo, pon a 1 |
0 | IDL | Bit de inactividad |
Para entrar en el modo de reposo, ponlo a 1 |
SCON (Gestión en serie)
El SFR de gestión de serie o SCON se utiliza para regular el puerto serie del microcontrolador 8051. Se encuentra como un cable 98H. Mediante el SCON, puedes gestionar los modos de funcionamiento del puerto serie, la velocidad de transmisión del puerto serie y navegar o adquirir conocimientos mediante el puerto serie.
El registro SCON consta además de bits que pueden establecerse de forma rutinaria cuando se transmite o adquiere un byte de conocimiento.
El siguiente escritorio describe el funcionamiento de cada bit dentro del Registro SCON.
Bit |
Imagen | Descripción |
7 | SM0 |
Elección del modo de puerto serie Bit 0 |
6 |
SM1 | Selección de bits del modo de puerto serie 1 |
5 | SM2 |
Com. Multiprocesador. Bit |
4 |
REN | Obtener el bit de permiso |
3 | TB8 |
Bit 8 transmitido |
2 |
RB8 | Bit 8 Adquirido |
1 | TI |
Indicador de interrupción de la transmisión |
0 |
IR |
Obtener el indicador de interrupción |
Los bits de elección del modo del puerto serie (SM0 y SM1) deciden el modo UART y también la velocidad en baudios. El siguiente escritorio ofrece un resumen de cómo se pueden utilizar los bits de elección del modo de puerto serie para configurar el puerto serie del 8051 (UART).
Bits de elección del modo de puerto serie
SM0 |
SM1 | Modo | Descripción | Velocidad en baudios |
0 | 0 | 0 | modo de registro de desplazamiento sincrónico de 8 bits |
Velocidad de transmisión ensamblada (Frecuencia del oscilador / 12) |
0 |
1 | 1 | uART de 8 bits personalizada
modo |
Carga variable de baudios (será fijada por el temporizador 1) |
1 | 0 | 2 | modo de comunicación del multiprocesador de 9 bits |
Configuración de la velocidad en baudios (Frecuencia del oscilador / 32 o Frecuencia del oscilador / 64 |
1 |
1 | 3 | modo de comunicación del multiprocesador de 9 bits |
Carga variable de baudios (será fijada por el temporizador 1) |
TCON (Temporizador de gestión)
El registro de gestión del temporizador o TCON se utiliza para iniciar o detener los temporizadores del microcontrolador 8051. Además, incluye bits para señalar si los temporizadores se han desbordado. El SFR TCON consta además de bits de interrupción asociados.
El siguiente escritorio proporciona el esquema de cada bit dentro del SFR TCON.
Bit |
Imagen | Descripción |
Más información |
7 |
TF1 | Bandera de desbordamiento del temporizador 1 | Se establece cuando el temporizador 1 se desborda (todos los 1s a 0). Se borra cuando el procesador ejecuta el ISR en 001BH. |
6 | TR1 | Temporizador de gestión de carrera de 1 bit |
Para habilitar el temporizador/contador, ponlo a 1. Borra para detener el temporizador. |
5 |
TF0 | Bandera de desbordamiento del temporizador 0 | Establece cuando el temporizador 0 se desborda (todos los 1s a 0). Se borra cuando el procesador ejecuta el ISR en 000BH. |
4 | TR0 | Gestión de la carrera de bits del temporizador 0 |
Para habilitar el temporizador/contador, ponlo a 1. Borra para detener el temporizador. |
3 |
IE1 | Parada Ext. 1 Bandera de borde | Se establece cuando se adquiere un HIGH a LOW en INT1 (P3.3). Se borra cuando el procesador ejecuta el ISR en 0013H. |
2 | IT1 | Ext. Bit de gestión de la orden de interrupción 1 |
Si es 1, la interrupción 1 se produce en el flanco descendente. Si es 0, la interrupción 1 se produce en la etapa baja. |
1 |
IE0 | Interrupción Ext. 0 Bandera de borde | Se pone a 1 cuando se adquiere un HIGH a LOW en INT0 (P3.2). Se borra cuando el procesador ejecuta el ISR en 0003H. |
0 | IT0 | Interrupción del bit de gestión de pedidos Ext. 0 |
Si es 1, la interrupción 0 se produce en el flanco descendente. Si es 0, la interrupción 0 se produce en la fase baja. |
TMOD (Modo Temporizador)
El registro TMOD o SFR de modo de temporizador se utiliza para establecer los modos de trabajo de los temporizadores T0 y T1. Los 4 bits inferiores se utilizan para ajustar el temporizador 0 y los 4 bits superiores para ajustar el temporizador 1.
El siguiente escritorio proporciona una breve descripción de cada bit dentro del SFR TMOD.
Bit |
Imagen |
Descripción |
7 / 3 |
Puerta | Puerto OR Permitir Bit |
6 / 2 | C/Tx |
Elige el modo temporizador o contador |
5 / 1 |
TxM1 | Selección del modo de trabajo del temporizador/contador Bit 1 |
4 / 0 | TxM0 |
Selección del modo de trabajo del temporizador/contador Bit 0 |
El bit Gatex se utiliza para hacer funcionar el Timerx con respecto al pin INTx o lo que sea el pin INTx.
- GATE1 = 1 ==> El temporizador1 funciona mientras TR1 (en TCON) esté SET y Sign en INT1 esté HIGH.
- GATE1 = 0 ==> El temporizador1 funciona independientemente de la señal en el pin INT1, sin embargo TR1 (en TCON) debe estar SET.
- GATE0 = 1 ==> El temporizador 0 funciona siempre que TR0 (en TCON) esté SET y la señal en INT0 sea HIGH.
- GATE0 = 0 ==> El temporizador 0 funciona independientemente de la señal del pin INT0, pero TR0 (en TCON) debe estar SET.
El bit C/Tx se utiliza para seleccionar la alimentación de impulsos en la que puede confiar el temporizador.
- C/T1 = 1 ==> El temporizador 1 cuenta los impulsos del pin T1 (P3.5) (modo contador)
- C/T1 = 0 ==> El temporizador1 cuenta los impulsos del oscilador interno (modo temporizador)
- C/T0 = 1 ==> El temporizador 0 cuenta los impulsos del pin T0 (P3.4) (modo temporizador)
- C/T0 = 0 ==> El temporizador 0 cuenta los impulsos del oscilador interno (modo temporizador)
TxM0 |
TxM1 | Modo |
Descripción |
0 |
0 | 0 | modo temporizador de 13 bits (THx - 8 bits y TLx - 5 bits) |
0 |
1 | 1 | modo de temporizador de 16 bits |
1 | 0 | 2 |
modo de temporizador de recarga automática de 8 bits |
1 | 1 | 3 |
Modo temporizador de dos 8 bits o modo temporizador de corte |
NOTA: x = 0 para el temporizador 0 y x = 1 para el temporizador 1.
IE (Interrupción permitida)
El IE o Registro de Permiso de Interrupción se utiliza para permitir o desactivar las interrupciones de una persona en particular. Si un bit está SET, la interrupción correspondiente está activada y si el bit está despejado, la interrupción está desactivada. El bit 7 del registro IE, es decir, el bit EA se utiliza para activar o desactivar todas las interrupciones.
El siguiente escritorio describe las características de cada bit dentro del Registro IE.
Bit |
Imagen | Descripción |
Más información |
7 |
EA | Bit de Permiso de Interrupción Internacional. | Si se pone a 1, se pueden activar las interrupciones para una persona concreta. Si se pone a 0, se desactivan todas las interrupciones. |
6 | - |
- |
|
5 |
ET2 | Reservado | |
4 | ES | Bit de Permiso de Interrupción del Puerto Serie |
Si se pone a 1, la interrupción del puerto serie está activada. Si se pone a 0, la interrupción del puerto serie está desactivada. |
3 |
ET1 | Bit de Permiso de Interrupción por Desbordamiento del Temporizador 1 | Si se pone a 1, se activa la interrupción por desbordamiento del temporizador 1. Si se pone a 0, se desactiva la interrupción por desbordamiento del temporizador 1. |
2 | EX1 | Bit de activación de la interrupción externa 1 |
Si se pone a 1, se activa la Interrupción Ext. 1. Si se pone a 0, la interrupción Ext. 1 se desactiva. |
1 |
ET0 | Activación de la interrupción por desbordamiento del temporizador 0 Bit | Si se pone a 1, se activa la interrupción por desbordamiento del temporizador 0. Si se pone a 0, se desactiva la interrupción por desbordamiento del temporizador 0. |
0 | EX0 | Bit de activación de la interrupción externa 0 |
Si se pone a 1, se activa la Interrupción Ext. 0. Si se pone a 0, la Interrupción Ext. 0 está desactivada. |
NOTA: El SFR Permiso de Interrupción (IE) es algo direccionable.
IP (Precedencia de Interrupción)
El Registro de Precedencia de Interrupción o IP se utiliza para establecer la precedencia de la interrupción como Excesiva o Baja. Si un bit está CLEAR, la interrupción correspondiente tiene una precedencia baja y si el bit está SET, la interrupción tiene una precedencia excesiva.
El siguiente escritorio describe las características de cada bit dentro del Registro IP.
Bit |
Imagen |
Descripción |
7 |
- | - |
6 | - |
- |
5 |
ES2 | Reservado |
4 | PS |
Precedencia de la interrupción del puerto serie |
3 |
EN1 | Interrupción por desbordamiento del temporizador de precedencia 1 |
2 | PX1 |
Ext. 1 Romper la precedencia |
1 |
ES0 | Precedencia del temporizador 0 Interrupción por desbordamiento |
0 | PX0 |
Ext. 0 Precedencia de ruptura |
NOTA: El SFR de Precedencia de Interrupción (IP) es algo direccionable.
Registros de conocimientos periféricos
SBUF (Buffer de conocimiento en serie)
El registro del búfer serie o SBUF se utiliza para transportar información en serie durante la transmisión o la recepción.
TL0/TH0 (Temporizador 0 bajo/excesivo)
El temporizador 0 está compuesto por dos SFR: TL0 y TH0. TL0 es el byte bajo y TH0 es el byte alto, y colectivamente llegan a un Registro de Temporizador0 de 16 bits.
TL1/TH1 (Temporizador 1 bajo/excesivo)
TL1 y TH1 son los bytes alto y bajo del temporizador 0.
En este tutorial, hemos visto los Registros de Realización Particular (SFR) del Microcontrolador 8051, sus direcciones, construcciones, valores de reinicio y muchos otros.
Si quieres conocer otros artículos parecidos a registros de rendimiento particular (SFR) del microcontrolador 8051 puedes visitar la categoría Electricidad Básica.
Deja una respuesta
¡Más Contenido!