Microcontrolador MSP430F169

Descripción general del MSP430F169

El microcontrolador MSP430F169 pertenece a la familia MSP430 de Texas Instruments. Comprende múltiples dispositivos que cuentan con distintos conjuntos de periféricos diseñados para diversas aplicaciones. La arquitectura de estos microcontroladores, junto con cinco modos de bajo consumo, se ha ajustado para optimizar la duración de la batería en aplicaciones de medición portátiles. Además, el oscilador controlado digitalmente (DCO) permite tiempos de activación rápidos, de menos de 6 µs, desde los modos de bajo consumo al modo activo.

Estos microcontroladores encuentran aplicaciones típicas en sistemas de sensores, aplicaciones de control industrial, medidores portátiles y otros ámbitos similares.

Características

  • Bajo consumo de energía;
  • Cinco modos de ahorro de energía;
  • DMA interno de tres canales;
  • Programación en serie integrada;
  • Protección de código programable mediante fusible de seguridad;
  • Con detector de caídas de tensión y cargador de arranque;
  • Monitor de tensión de alimentación con detección de nivel programable.

Configuración de pines

El MSP430F169 está disponible en versiones de 64 y 100 pines, con diferentes configuraciones de pines para cada una.

En la versión de 64 pines, algunos pines clave son:

Tipos de pinesNombre del pinDescripción
Pines de alimentaciónVCCEntrada de tensión de alimentación positiva
GNDTierra
RST/NMIEntrada de reinicio e interrupción no enmascarable
TESTEntrada/salida del modo de prueba
AVSS/AVCCTierra y tensión de referencia para ADC
DVSS/DVCCTierra y tensión de referencia para los circuitos digitales
Pines de entrada/salidaP1.x-P8.xPines de E/S de propósito general
Pines de comunicaciónUCA0CLKEntrada/salida de reloj del módulo USART A0
UCA0STEEntrada/salida STE del módulo USART A0
UCA0TXDSalida de datos de transmisión del módulo USART A0
UCA0RXDEntrada de datos de recepción del módulo USART A0
UCB0CLKEntrada/salida de reloj del módulo SPI B0
UCB0STEEntrada/salida STE del módulo SPI B0
UCB0SIMOSalida de datos de transmisión del módulo SPI B0
UCB0SOMIEntrada de datos de recepción del módulo SPI B0
UCB0SDAEntrada/salida de datos del módulo I2C B0
UCB0SCLEntrada/salida de reloj del módulo I2C B0
Temporizadores y contadoresTA0CCR0-TA0CCR6Temporizador A0: registro de captura/comparación 0-6
Registro de control del temporizador A0
TB0CCR0-TB0CCR2Temporizador B0: registro de captura/comparación 0-2
Registro de control del temporizador B0
Pines analógicosADC12CLKEntrada de reloj ADC12
ADC12MEM0-ADC12MEM15ADC12: registro de memoria 0-15
AVREF+Entrada de tensión de referencia positiva para ADC
AVREF-Entrada de tensión de referencia negativa para ADC
Pines JTAGTCLKEntrada/salida de reloj de prueba
TDIEntrada de datos de prueba
TDOSalida de datos de prueba
Pines de funciones especialesACLKEntrada del oscilador de cristal de 32.768 kHz
SMCLKSalida del reloj principal del sistema
RTCCLKEntrada/salida de reloj en tiempo real
MSP430F169 Pinout

Especificación

EspecificaciónValor
CPU16-bit RISC
Frecuencia8 MHz
Memoria Flash16 KB
RAM2 KB
Potencia en espera1.1 µA
Potencia en modo activo330 µA a 1 MHz, 2.2 V
Tiempo de activaciónmenos de 6 µs
Tiempo del ciclo de instrucción125 ns
Tensión de alimentaciónDe 1.8 V a 3.6 V
Convertidor A/D12-bit
Temporizador/contador2 * 16-bit
Temperatura de funcionamiento-40 a 85 ℃
DMA3
I2C1
SPI2
Periféricostemporizadores, puertos serie, I2C
EncapsuladoQFP de 64 pines o QFN de 64 pines

Puesta en marcha del MSP430F169: reloj, alimentación y depuración

El MSP430F169 es un microcontrolador de 16 bits y bajo consumo cuya puesta en marcha depende de la integridad de alimentación, el reloj, la multiplexación de pines y un reinicio previsible. Empiece con un programa mínimo que gestione el temporizador de vigilancia, conmute un pin comprobado y muestre el comportamiento del reloj antes de activar periféricos complejos.

  • Estabilice la alimentación: coloque desacoplo local y mida subida del reinicio y consumo.
  • Confirme el reloj: diferencie oscilador interno y cristal externo y observe la salida seleccionada cuando exista.
  • Asigne los pines: configure dirección y selección periférica antes de UART, temporizador o ADC.
  • Planifique la referencia: respete intervalo de entrada, impedancia de fuente, asentamiento y desacoplo.
  • Conserve el acceso: lleve al conector los pines documentados de programación y depuración.

Sistema de reloj del MSP430F169

El sistema de reloj es muy importante para los microordenadores de un solo chip. La razón por la que el microordenador de un solo chip MSP430F169 tiene un consumo energético tan bajo es porque cuenta con un potente sistema de reloj.

Clock Block Diagram MSP430F169

Tres fuentes de señal de reloj

1. Baja frecuencia LFXT1CLK (32,768 kHz)

Se puede utilizar un oscilador de cristal estándar, un oscilador o una fuente de reloj externa para introducir entre 4 MHz y 32 MHz. XT1CLK se puede utilizar como reloj de referencia para el módulo FLL interno.

El oscilador de cristal de baja frecuencia (32,768 KHz) se conecta directamente al microordenador de un solo chip a través de los pines XIN y XOUT, y no se requieren otros dispositivos externos (hay una capacitancia de carga de 12 pF en el interior). En este momento, el oscilador LFXT1 funciona en modo de baja frecuencia (XTS=0).

Si la MCU está conectada a un oscilador o resonador de alta velocidad, 0SCOFF=0 puede hacer que el oscilador LFXT1 funcione en modo de alta frecuencia (XTS=1). En ese momento, el oscilador de cristal o resonador de alta velocidad se conecta a través de los pines XIN y XOUT, y se requiere un condensador externo. El tamaño del condensador se selecciona de acuerdo con las características del oscilador de cristal o resonador.

Si la señal LFXT1CLK no se utiliza como señal SMCLK o MCIK, el software puede establecer OSCOFF=1 para desactivar el funcionamiento del LFXT1, reduciendo así el consumo de energía del microcontrolador.

BCSCTL1:

XTS(BIT6)——Selección del modo de alta/baja velocidad LFXT1. 0: LFXT1 funciona en modo oscilador de cristal de baja velocidad (predeterminado); 1: LFXT1 funciona en modo oscilador de cristal de alta velocidad.

2. XT2CLK de alta frecuencia (8 MHz)

Se puede utilizar un oscilador de cristal estándar, un oscilador o una fuente de reloj externa para introducir entre 4 MHz y 32 MHz.

El oscilador XT2 genera la señal de reloj XT2CLK y sus características de funcionamiento son similares a las del oscilador LFXT1 cuando funciona en modo de alta frecuencia. Si XT2CLK no se utiliza como señal de reloj MCLK y SMCLK, el oscilador XT2 se puede desactivar con el bit de control XT2OFF.

BCSCTL1:

XT2OFF (BIT7): control del oscilador de cristal de alta velocidad XT2. 0: oscilador de cristal de alta velocidad XT2 activado; 1: oscilador de cristal de alta velocidad XT2 desactivado.

3. Oscilador interno DCOCLK (1 MHz)

Estabilizado por el módulo FLL.

Cuando el oscilador falla, el DCO se selecciona automáticamente como fuente de reloj para MCLK.

La frecuencia del oscilador DCO se puede ajustar mediante la configuración del software de los bits DCOx. MODx y RSEL.x. Cuando la señal DCOCLK no se utiliza como señal de reloj SMCLK y MCLK, el generador de CC se puede desactivar con el bit de control SCGO.

Después de la señal PUC, DCOCLK se selecciona automáticamente como señal de reloj MCLK, y la fuente de reloj de MCLK se puede configurar adicionalmente en LFXT1 o XT2 según sea necesario. La secuencia de configuración es la siguiente:

  1. Deja OSCOFF=1;
  2. Deja que OFIFG=0;
  3. Retrasa y espera al menos 50 ps;
  4. Comprueba OFIFG de nuevo, si OFIFG=1, repite los pasos (3) y (4) hasta que OFIFG=0.

DCOCTL:

DCOx (BIT7, BIT6, BIT5): selección de frecuencia DCO, se pueden seleccionar 8 tipos de frecuencias y la frecuencia DCOCLK se puede ajustar por secciones. La selección de frecuencia se basa en la banda de frecuencia seleccionada por RSELx. La relación entre DCOx, RSELx y el reloj interno es la siguiente:

Relationship between DCOx, RSELx and the Internal Clock

MODx (BIT4, BIT3, BIT2, BIT1, BIT0): ajuste del modulador DAC. El control cambia las dos frecuencias seleccionadas por DCOx y DCOx+1 para ajustar con precisión la frecuencia de salida del DCO. Si la constante DCOx es 7, significa que se ha seleccionado la frecuencia más alta. En ese momento, MODx no es válido y no se puede utilizar para ajustar la frecuencia.

BCSCTL1:

RSELx (BIT2, BIT1, BIT0): selección de la banda de frecuencia del oscilador DCO. Estos 3 bits controlan una resistencia interna para determinar la frecuencia nominal. 0: selecciona la frecuencia nominal más baja… 7: selecciona la frecuencia nominal más alta.

BCSCTL2:

DCOR(BIT0): selecciona la resistencia del oscilador DCO. 0: resistencia interna; 1: resistencia externa.

Tres fuentes de reloj

1. Reloj auxiliar ACLK

ACLK se obtiene después de dividir LFXT1CLK por 1, 2, 4 y 8. Se puede utilizar como señal de reloj de cada módulo periférico y, por lo general, se utiliza para periféricos de baja velocidad.

BCSCTL1:

DIVAx (BIT5, BIT4): selección de división de frecuencia ACLK. La relación de selección de división de frecuencia es la siguiente:

Frequency Divider for ACLK

Definición de macro: DIVA_0 (1 división de frecuencia/sin división de frecuencia), DIVA_1 (2 divisiones de frecuencia), DIVA_2 (4 divisiones de frecuencia), DIVA_3 (8 divisiones de frecuencia)

2. Reloj principal del sistema MCLK

MCLK se puede obtener a partir de LFXT1CLK, XT2CLK y DCOCLK tras una división de frecuencia por 1, 2, 4 y 8. Se utiliza a menudo para el funcionamiento de la CPU, la ejecución de programas y otros módulos que utilizan relojes de alta velocidad.

BCSCTL2:

SELMx (BIT7, BIT6): selecciona la fuente de reloj MCLK. La relación de selección de reloj es la siguiente:

Select MCLK Clock Source

Definición de macro: SELM_0 (DCOCLK predeterminado), SELM_1 (DCOCLK), SELM_2 (XT2CLK), SELM_3 (LFXT1CLK)

DIVMx (BIT5, BIT4): selección de división de frecuencia MCLK. La relación de selección de división de frecuencia es la siguiente:

Frequency Divider for MCLK

Definición de macro: DIVM_0 (1 división de frecuencia/sin división de frecuencia), DIVM_1 (2 divisiones de frecuencia), DIVM_2 (4 divisiones de frecuencia), DIVM_3 (8 divisiones de frecuencia)

3. Reloj del subsistema SMCLK

SMCLK se puede obtener mediante la división de frecuencia de XT2CLK y DCOCLK por 1, 2, 4 y 8, y se utiliza a menudo en módulos periféricos de alta velocidad.

BCSCTL2:

SELSx (BIT3): selecciona la fuente de reloj MCLK. La relación de selección de reloj es la siguiente:

Select SMCLK Clock Source

DIVSx (BIT2, BIT1): selección de división de frecuencia SMCLK. La relación de selección de división de frecuencia es la siguiente:

Frequency Divider for SMCLK

Definición de macro: DIVS_0 (1 división de frecuencia/sin división de frecuencia), DIVS_1 (2 divisiones de frecuencia), DIVS_2 (4 divisiones de frecuencia), DIVS_3 (8 divisiones de frecuencia)

Documentación oficial

Antes de finalizar el esquema, la PCB o la configuración del firmware, verifique los datos del dispositivo en la documentación vigente del fabricante.

Compartir en:

Scroll al inicio

Cotización