Está en la página 1de 40

Micocontrolador TEXAS

MSP430G2x53
FEATURES
Low Supply-Voltage Range: 1.8 V to 3.6 V Universal Serial Communication Interface
Ultra-Low Power Consumption (USCI)
Active Mode: 230 A at 1 MHz, 2.2 V Enhanced UART Supporting Auto Baudrate
Standby Mode: 0.5 A Detection (LIN)
Off Mode (RAM Retention): 0.1 A IrDA Encoder and Decoder
Five Power-Saving Modes Synchronous SPI
Ultra-Fast Wake-Up From Standby Mode in I2C
Less Than 1 s On-Chip Comparator for Analog Signal
16-Bit RISC Architecture, 62.5-ns Instruction Compare Function or Slope Analog-toDigital
Cycle Time (A/D) Conversion
Basic Clock Module Configurations 10-Bit 200-ksps Analog-to-Digital (A/D)
Converter With Internal Reference, Sample Internal Frequencies up to 16 MHz With and-Hold, and Autoscan (See Table 1)
Four Calibrated Frequency
Brownout Detector
Internal Very-Low-Power Low-Frequency
(LF) Oscillator Serial Onboard Programming,

No External Programming Voltage Needed,


32-kHz Crystal Programmable Code Protection by Security
External Digital Clock Source Fuse
Two 16-Bit Timer_A With Three On-Chip Emulation Logic With Spy-Bi-Wire
Capture/Compare Registers Interface
El MSP430 familia de ultra-bajo consumo de energa de microcontroladores de Texas
Instruments se compone de varios dispositivos con diferentes conjuntos de perifricos
destinados para diversas aplicaciones.
La arquitectura, junto con cinco modos de bajo consumo modos, se ha optimizado para
lograr la vida extendida de la batera en aplicaciones de medicin porttiles. El
dispositivo cuenta con una poderosa CPU RISC de 16 bits, registros de 16 bits, y los
generadores de constantes que contribuyen a la eficiencia del cdigo mximo.
El oscilador controlado digitalmente (DCO) permite despertar de los modos de bajo
consumo al modo activo en menos de 1 ms.
La serie MSP430G2x13 y MSP430G2x53 de microcontroladores de seal mixta con una
funcin de temporizadores de 16 bits, hasta 24 pines habilitados tctiles capacitivos de
Entrada / Salida, un comparador analgico verstiles, y construido en la comunicacin
capacidad de uso de la interfaz de comunicacin serie universal.
Adems, los miembros de la familia MSP430G2x53 tienen un convertidor analgico-adigital de 10 bits (A / D).

Device Pinout, MSP430G2x13 and MSP430G2x53, 20-Pin Devices,


TSSOP, PDIP

CPU
La CPU MSP430 tiene una arquitectura RISC de 16 bits que es altamente transparente
a la aplicacin. Todo operaciones, salvo las instrucciones de flujo de programa, son
realiza como operaciones de registro en relacin con el siete modos de
direccionamiento para el operando de origen y cuatro modos de direccionamiento
para el operando de destino.
La CPU est integrado con 16 registros que proporcionan reduccin del tiempo de
ejecucin de la instruccin. El registro a registro tiempo de ejecucin de la operacin
es un ciclo de la reloj de la CPU.
Cuatro de los registros, R0 a R3, se designan como contador de programa, puntero
de pila, registro de estado, y constante del generador, respectivamente. El restante
registros son registros de propsito general.
Los perifricos se conectan a la CPU a travs de los bus de datos,y buses de control,
y puede ser manejado con todas las instrucciones.
El conjunto de instrucciones consiste en el original 51 instrucciones con tres
formatos y siete direcciones modos y las instrucciones adicionales para la
ampliacin.
Rango de direcciones. Cada instruccin puede operar con una palabra de 16 Bit o
con bytes de datos de 8 Bit.

Registros internos CPU del MSP430

Conjunto de instrucciones
El conjunto de registros internos consta de 16
registros de 16 bit cada uno.

Figure 3-1. CPU Block Diagram

Espacio de Direcciones
El MSP430 arquitectura von Neumann-tiene un espacio de direcciones compartido con
registros de funciones especiales (SFR), perifricos, memoria RAM y memoria Flash/ROM
como se muestra en la Figura 1-2.
Ver los datos especficos del dispositivo en
las hojas de mapas de memoria especficas.
El Cdigo de acceso se realiza siempre en
direcciones pares. Los datos pueden ser
acceso como bytes o palabras.
C000h

03FFh

Contador de programa (PC) (Program Counter


El contador de programa de 16 bits (PC/R0) apunta a la siguiente instruccin a
ejecutar. Cada instruccin utiliza un nmero par de bytes (dos, cuatro, o seis), y el PC
se incrementa en consecuencia.
Instruccin de accesos en el de 64 KB de espacio de direcciones se realiza en los
lmites de palabra, y el PC est alineado para igualar direcciones.
La Figura 3-2 muestra el contador de programa.

Puntero de pila (SP)


El puntero de la pila (SP/R1) es utilizada por la CPU para almacenar las direcciones de
retorno de llamadas a subrutinas e interrupciones. Se utiliza un incremento del puntero
de pila, antes de almacenar un dato (PUSH) y postdecremento al recuperar (POP) el
dato del Stack. Adems, el SP puede ser utilizado por el software con todas las
instrucciones y modos de direccionamiento. La figura muestra el SP. El SP se inicializa
en la memoria RAM por el usuario, y est alineado a las direcciones de pares.
La figura muestra el uso de la pila.

Status Register (SR)


El registro de estado (SR/R2), que se utiliza como una fuente o registro de destino,
se puede utilizar en el modo de registro slo dirigido a las instrucciones de palabras.
El resto de combinaciones de modos de direccionamiento se utilizan para apoyar la
constante del generador. La figura muestra los bits de SR.

Operating Modes
El MSP430 tiene un modo activo y cinco
programas seleccionables modos de bajo
consumo de funcionamiento. Una interrupcin
evento puede activar el dispositivo de
cualquiera de los modos de bajo consumo, de
servicios de la solicitud, y restaurar de nuevo a
la
modo de bajo consumo en la declaracin del
programa de interrupcin.
Los seis modos de funcionamiento siguientes
se pueden configurar mediante el software:
Active mode (AM)
All clocks are active
Low-power mode 0 (LPM0)
CPU is disabled
ACLK and SMCLK remain active, MCLK is
disabled
Low-power mode 1 (LPM1)
CPU is disabled

ACLK and SMCLK remain active, MCLK


is disabled DCO's dc generator is
disabled if DCO not used in active mode
Low-power mode 2 (LPM2)
CPU is disabled
MCLK and SMCLK are disabled
DCO's dc generator remains enabled
ACLK remains active
Low-power mode 3 (LPM3)
CPU is disabled
MCLK and SMCLK are disabled
DCO's dc generator is disabled
ACLK remains active
Low-power mode 4 (LPM4)
CPU is disabled
ACLK is disabled
MCLK and SMCLK are disabled
DCO's dc generator is disabled
Crystal oscillator is stopped

Fin 1 parte

Modos de Direccionamiento

Reset del sistema e inicializacin


El circuito de restablecimiento del sistema se muestra en la Figura 2-1 fuentes tanto un
power-on reset (POR) y un clear power-up (PUC) de la seal. Diferentes eventos
desencadenan estas seales de restablecimiento y diferentes condiciones iniciales
disponemos en funcin de cuya seal se generar.

El reinicio originado por un POR slo es generado por los tres eventos siguientes:
Encender el dispositivo
Una seal baja en el pin RST / NMI cuando est configurado en el modo de
restablecimiento
Una condicin de baja cuando SVS PORON = 1.
Un PUC siempre se genera cuando se genera un POR, pero una porcin no es generado
por un PUC. la
siguientes eventos desencadenan una PUC:
Una seal POR
expiracin del temporizador Watchdog cuando slo en el modo de vigilancia
Temporizador de vigilancia de seguridad de clave violacin
Una memoria flash de seguridad clave violacin
Una instruccin de CPU traiga del intervalo de direcciones perifrica 0h a 01FFh.

Brownout Reset (BOR)


El circuito de reposicin por un apagn detecta bajos voltajes de suministro, tales
como cuando una tensin de alimentacin se aplica, o trado del terminal de VCC. La
cada de tensin restablecer circuito se restablece el dispositivo mediante la activacin
de una seal POR cuando se aplica o se desconecta la alimentacin. Los niveles de
operacin se muestran en la Figura 2-2.
La seal se activa cuando POR VCC cruza el nivel VCC (start). Se mantiene activo hasta
que VCC cruza la V (B_IT +) Umbral y el retardo T(BOR). El retardo T (BOR) es adaptativo es
ms largo cuando mas lenta es la rampa de VCC. Las histresis Vhys(B_ IT-) asegura que
la tensin de alimentacin debe ser inferior V (B_IT-) para generar otra seal de POR
desde el circuito de rearme baja de voltaje.

Temporizado del
brownout

Condiciones iniciales despus de un reinicio del sistema


Despus de un POR, MSP430 las condiciones iniciales son:
El pin RST / NMI est configurado en el modo de restablecimiento.
los pins de E / S se conmutan al modo de entrada como se describe en el captulo de E
/ S digital.
Otros mdulos perifricos y los registros se inicializan como se describe en los
respectivos captulos de este
manual.
registro de estado (SR) se pone a cero.
Los poderes temporizador de vigilancia por activos en el modo de vigilancia.
Contador de Programa (PC) se carga con direccin incluida en la ubicacin vector de
reset (0FFFEh). Si en el reinicio el contenido de vectores se 0FFFFh el dispositivo se
desactivar para el consumo de energa mnimo.

Inicializacin del Software


Despus de un reinicio del sistema, el software de usuario debe inicializar el MSP430 de
los requisitos de la aplicacin:
Inicializar el SP, tpicamente a la parte superior de RAM.
Inicializar el organismo de control a los requisitos de la aplicacin.
Configurar mdulos perifricos a los requisitos de la aplicacin.
Adems, las banderas de memoria temporizador perro guardin, fallo del oscilador, y el
flash se pueden evaluar para determinar el origen del reajuste.

Interrupciones
Las prioridades de interrupcin son fijos y definidos por la disposicin de los mdulos
en la cadena de conexin como se muestra en la Figura 2-3. Cuanto ms cerca de
un mdulo es a la CPU / NMIRS, mayor es la prioridad. prioridades de interrupcin
determinar que la interrupcin se toma cuando ms de una interrupcin pendiente
simultneamente.
Hay tres tipos de interrupciones:
Restablecimiento del sistema
(No) enmascarable NMI
Maskable
Las prioridades son mas altas cuando el evento que la origina es en la CPU.

Interrupciones

(No)

enmascarable

(NMI)

Interrupciones NMI (Non)-enmascarables no se deshabilitan por bit general (GIE) la de


habilitacin de interrupcin, pero es habilitado por bit de habilitacin interrupcin
concreta (NMIIE, ACCVIE, OFIE).
Cuando se acepta una interrupcin NMI, todo bit de habilitacin de NMI es reseteado
automticamente. La ejecucin del programa comienza en la direccin almacenada en el
vector de interrupcin no-enmascarable, 0FFFCh.
Software: El usuario debe configurar los requerida bits de habilitacin para que la
interrupcin NMI sea re-habilitado.
Una interrupcin NMI (no)-enmascarable puede ser generada por tres fuentes:
Un borde en el pin RST / NMI cuando se configura en modo de NMI
Se produce un fallo del oscilador
Una violacin de acceso a la memoria flash

Violacin de acceso de Flash


La bandera de destello ACCVIFG se establece cuando se produce una violacin de
acceso flash. El acceso violacin flash puede ser permitido generar una interrupcin
NMI activando el bit ACCVIE. La bandera ACCVIFG a continuacin, se puede
probar la rutina de servicio de interrupcin NMI para determinar si el NMI fue
causado por una violacin de acceso flash.

Fallo

oscilador

La seal de fallo del oscilador advierte de una posible situacin de error con el
oscilador de cristal. El fallo del oscilador se puede activar para generar una
interrupcin NMI activando el bit OFIE. La bandera OFIFG a continuacin, se puede
probar NMI por la rutina de servicio de interrupcin para determinar si el MNI fue
causada por un error de oscilador.
Una seal PUC puede provocar un fallo del oscilador, ya que la PUC cambia el LFXT1
al modo de LF, por lo tanto, pagar el modo de HF. La seal PUC tambin se
desconecta el oscilador XT2.

Interrupcin en el procesamiento
Cuando se solicita una interrupcin de un perifrico y permitir la interrupcin perifrica
bits y bits GIE son establecido, se pidi a la rutina de servicio de interrupcin. Slo el
bit de habilitacin individual debe establecerse para (no) interrumpe enmascarables que se solicitarn .

Aceptacin de interrupcin
La latencia de interrupcin es de 5 ciclos ( CPUx ) o 6 ciclos ( CPU) , a partir de la
aceptacin de una interrupcin solicitud y que dura hasta el inicio de la ejecucin de la
primera instruccin de la rutina de interrupcin de servicio. La lgica de interrupcin se
ejecuta la siguiente :
1 . Cualquier instruccin que se ejecuta actualmente se ha completado .
2 . El PC , que apunta a la siguiente instruccin , se inserta en la pila .
3 . El SR se inserta en la pila .
4 . La interrupcin con la prioridad ms alta se selecciona si mltiples interrupciones se
produjeron durante la ltima instruccin y se espera para el servicio.
5 . La solicitud de interrupcin indicador se restablece automticamente en banderas
de una sola fuente . Banderas de mltiples fuentes permanecern controlados para el
servicio por el software .
6 . El SR se borra . Se pone fin a cualquier modo de bajo consumo . Debido a que el bit
GIE se borra , adems las interrupciones estn deshabilitadas .
7 . El contenido del vector de interrupcin se carga en el ordenador : el programa
contina con rutina de servicio de la interrupcin en esa direccin .

Retorno de la interrupcin
La rutina de tratamiento de interrupcin termina con la instruccin:
RETI (volver de una rutina de servicio de interrupcin).
El regreso de la interrupcin dura 5 ciclos (CPU) o 3 ciclos (CPUx) para ejecutar las
siguientes acciones y se ilustra en la Figura 2-7.
1. El SR con todas las configuraciones anteriores aparece en la pila. Todos los ajustes
anteriores del GIE, CPUOff, etc son ahora, independientemente de los ajustes utilizados
durante la rutina de servicio de interrupcin.
2. El PC se recupera de la pila y comienza la ejecucin en la instruccin siguiente en que
se interrumpi.

Jerarquizacin y anidamiento de las interrupciones


La anidacin de las Interrupcin de se activa si el bit GIE se establece a 1 dentro de una
rutina de servicio de interrupcin. Cuando est habilitado la anidacin, cualquier
interrupcin que ocurra durante una rutina de servicio de interrupcin interrumpir la
rutina, independiente de las prioridades de interrupcin.

Vectores de interrupcin
Los vectores de interrupcin y la direccin de partida se encuentran en el rango de
direcciones para 0FFFFh a 0FFC0h, tal como se describe en la Tabla 2-1.
Un vector es programado por el usuario con la direccin de 16 bits de la correspondiente
rutina de servicio de interrupcin. Ver la hoja de datos especfico del dispositivo para la
lista de vectores de interrupcin.
Se recomienda proporcionar un vector para cada rutina de interrupcin que se asigna en
el mdulo. Una rutina de servicio de interrupcin simulada puede consistir simplemente
la instruccin RETI y varios vectores de interrupcin pueden apuntar a la misma.
El espacio de memoria de los vectores de interrupcin no asignados se pueden utilizar
para el cdigo de programa regular si es necesario.
Algunos bits de habilitacin del mdulo, interrumpen los bits de habilitacin, y las
banderas de interrupcin se encuentran en el SRFs. Los SFR estan situado en el rango
de direcciones inferior y se implementan en formato byte.
A los SFR se debe acceder con instrucciones de byte. Ver la hoja de datos especfica del
dispositivo para la configuracin SFR.

(1) Un restablecimiento se genera si la CPU intenta obtener instrucciones desde el


registro de direccin de memoria del mdulo (0h a 01FFh) o desde dentro de los rangos
de direcciones no utilizadas.
(2) banderas de mltiples fuentes
(3) (no)-maskable: el individuo poco interrumpir a habilitar puede desactivar un evento
de interrupcin, pero los generales de habilitacin de interrupcin no puede.
(4) banderas de interrupcin se encuentran en el mdulo.
(5) En el modo SPI: UCB0RXIFG. En el modo I2C: UCALIFG, UCNACKIFG, ICSTTIFG,
UCSTPIFG.
(6) En el modo SPI UART o: UCB0TXIFG. En el modo I2C: UCB0RXIFG, UCB0TXIFG.
(7) Esta ubicacin se utiliza como clave de seguridad cargador de arranque (BSLSKEY).
Un 0xAA55 en este lugar desactiva la BSL completamente. Un cero (0 h)
desactiva el borrado del flash si se suministra una contrasea no vlida.
(8) Los vectores de interrupcin en direcciones 0FFDEh a 0FFC0h no se utilizan en este
dispositivo y se pueden utilizar para el cdigo de programa regular si es necesario.

Puntero de pila (SP)


El puntero de la pila (SP/R1) es utilizada por la CPU para almacenar las direcciones de
retorno de llamadas a subrutinas e interrumpciones. Se utiliza un incremento del
puntero de pila, antes de almacenar un dato (PUSH) y postdecremento al recuperar
(POP) el dato del Stack. Adems, el SP puede ser utilizado por el software con todas
las instrucciones y modos de direccionamiento. La figura muestra el SP. El SP se
inicializa en la memoria RAM por el usuario, y est alineado a las direcciones de pares.
La figura muestra el uso de la pila.

Registros de funciones especiales (SFR)


La mayora de los bits de habilitacin de interrupcin y de los mdulos se encuentran en
el espacio de direccin ms baja. Los registro de bits de funciones especiales no
asignados a un propsito funcional no estn fsicamente presentes en el dispositivo.
Se ofrece acceso a software simple con este acuerdo.
Leyenda rw: Bit puede ser ledo y escrito.
rw-0, 1: El bit puede ser ledo y escrito. Se restablece o establecida por la PUC.
rw-(0,1): El bit puede ser ledo y escrito. Se restablece o establecido por POR.
SFR bit no est presente en el dispositivo.

Status Register (SR)


El registro de estado (SR/R2), que se utiliza como una fuente o registro de destino,
se puede utilizar en el modo de registro slo dirigido a las instrucciones de palabras.
El resto de combinaciones de modos de direccionamiento se utilizan para apoyar la
constante del generador. La figura muestra los bits de SR.

Generador de Constante Registros CG1 y CG2


Seis constantes de uso comn son generadas con el generador de constante registra
R2 y R3, sin que requiere una palabra de 16 bits de cdigo de programa adicional. Las
constantes se seleccionan con el registro fuente en el modos de direccionamiento (As).

Las ventajas del generador constantes son:


No se requieren instrucciones especiales.
No se necesita cdigo adicional para las seis constantes
No hay cdigo de acceso a la memoria necesaria para recuperar la constante
El ensamblador utiliza el generador de constante automticamente si uno de los seis
constantes se utiliza como un operando fuente en modo inmediato.

Los Registros de R2 y R3, que se utiliza en el modo constante, no pueden abordarse


explcitamente, sino que actan slo como registros fuente.

Generador Constant - Conjunto de instrucciones Ampliado


La instruccin RISC conjunto de la MSP430 tiene solamente 27 instrucciones. Sin
embargo, el generador de constante permite que el ensamblador del MSP430 genere
24 Instrucciones emulados adicionales. Por ejemplo, las instrucciones de un solo
operando
:
CLR dst
es emulado por la instruccin de dos operando con la misma longitud:
MOV R3, dst
donde # 0 se sustituye por el ensamblador y R3 se utiliza con As = 00.
INC dst
se sustituye por:
ADD # 1, dst

Registros de Propsito General de R4 a R15


Los doce registros, R4-R15, son registros de propsito general. Todos estos registros
se pueden utilizar como datos
registros, indicadores de direccin, o los valores de ndice y se puede acceder a byte o
palabra las instrucciones como se muestra
En la Figura 3-7.

También podría gustarte