sexta-feira, 22 de junho de 2012

Microcontroladores MSP430

A linha MSP430 da Texas Instruments consiste em mais de 200 microcontroladores desenvolvidos especialmente para o baixo consumo de energia. Contendo até 7 modos de baixo consumo (Low Power Modes) e menos de 1µs de wakeup time, esses microcontroladores tem como foco aplicações em dispositivos de medição alimentados por baterias. Sua CPU RISC de 16 bits é construída utilizando a arquitetura von-Neumann e, em conjunto com um sistema de Clock flexível e vários tipos de periféricos analógicos e digitais, provê soluções para uma vasta gama de aplicações.
            A plataforma MSP430 é dividida em 5 gerações de acordo com os periféricos encontrados nos microcontroladores. A figura 1 mostra uma breve descrição das características, periféricos e protocolos de comunicação utilizados em cada uma das gerações.

Figura 1: Diferenças entre as gerações dos microcontroladores da linha MSP430. Fonte: Texas Instruments.


Arquitetura da Família MSP430x2xx

A geração 2xx inclui microcontroladores com oscilador interno capaz de gerar um sinal de clock de até 16MHz. Possuem de 0.5 a 120 KB de memória flash e até 8KB de RAM. As instruções Algumas das características de sua arquitetura são:

·        Instruction Set RISC de 16bits;
·        27 instruções e 7 modos de endereçamento;
·        Arquitetura von-Neumann;
·        Acesso aos registradores Program Counter, Status e Stack Pointer;
·        Operações com registradores necessitam de apenas 1 ciclo de clock;
·        16 registradores;
·        Constant Generator que fornece 6 constantes frequentemente utilizadas, economizando código e tempo;
·        Instruções para 16 e 8 bits.



Sistema de Clock

O clock principal da CPU é o Master Clock (MCLK), sendo este tipicamente alimentado por um oscilador interno (Digitally controlled Oscillator, DCO). O DCO é um oscilador controlado digitalmente e pode assumir valores entre 0.06 MHz e 16 MHz (fonte: Datasheet MSP430g2553). Outras fontes para o MCLK são: um oscilador de baixa frequência externo de 32,768 KHz (LFXT1CLK) ou o oscilador interno de baixa frequência e baixa potência a 12 KHz.
Para os periféricos a fonte de clock pode ser o MCLK, o ACLK (Auxiliary Clock) ou então o SMCLK (Sub-main Clock), dividido por 1, 2, 4 ou 8.
 O ACLK é alimentado pelo cristal externo (LFXT1CLK) ou através do oscilador de baixa frequência/potência interno (VLOCLK). Já o SMCLK pode ter as mesmas fontes do MCLK.
Alguns microcontroladores possuem entrada para uma fonte de clock externa de alta frequência (XT2CLK), indo de 400KHz a 16 MHz, para alimentar o MCLK e o SMCLK.

Registradores

            Os microcontroladores da família MSP430 possuem ao todo 16 registradores, sendo 4 (R0, R1, R2, R3) com funções dedicadas e 12 para uso geral. A tabela 1 lista os registradores com especiais e suas funções.

Registrador – Nome
Função
R0 – Program Counter
Aponta para a próxima instrução a ser executada.
R1 – Stack Pointer
Utilizado junto com as instruções PUSH e POP para a implementação de uma pilha.
R2 – Status/Constant Generator
Se utilizado com instruções de 16 bits, armazena as flags Z (zero), N (negativo), C (carry), V (overflow), GIE e outras flags para controle do Low Power Mode. É utilizado como Constant Generator se endereçado de outro modo.
R3 – Constant Generator
Utilizado para a geração de constantes sem a necessidade de uma instrução adicional. As constantes geradas são: 0, 1, 2, 4, 8 e 0xFFFF.
Tabela 1: Registradores com funções especiais.

Características dos microcontroladores MSP430G2553 e MSP430G2452

Esses são os microcontroladores que acompanham o kit de desenvolvimento LaunchPad atualmente. Abaixo segue uma lista de suas características.
    

  • Tensão de alimentação entre 1.8 V a 3.6 V; 
  • Cinco Low Power Modes; 
  • Oscilador interno com suporte a frequências até 16MHz (62,5 ns por ciclo); 
  • Oscilador interno de baixo consumo (aproximadamente 12KHz); 
  • Dois (G2553) ou um (G2452) timer(s) de 16 bits com três registradores para Capture/Compare; 
  • 16 pinos de IO com Touch-Sense; 
  • 16 KB de memória FLASH e 512 B de RAM (MSP430G2553); 
  • 8 KB de FLASH e 256 B de RAM (MSP430G2452); 
  • UART com detecção automática de baud rate (MSP430G2553); 
  • IrDA Encoder/Decoder (MSP430G2553); 
  • SPI e I2C; 
  • Um comparador analógico; 
  • ADC de 10 bits com 200K amostras por segundo.



Nota

 Este é o resumo do resumo das características a família MSP430. Para mais informações, consultar o site da Texas Instruments e/ou os materiais nas referências.

Referências

·        MSP430 Family, Mixed-Signal Microcontroller, Application Reports (SLAA024);
·        MSP430x2xx Family User's Guild (SLAU144I);
·        Datasheet MSP430G2553;
·        Datasheet MSP430G2452;
·        MSP430 Getting Started


3 comentários: