Sie sind auf Seite 1von 11

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL

DEPARTAMENTO DE ENGENHARIA ELTRICA


CURSO DE ENGENHARIA DE COMPUTAO
DISCIPLINA DE MICROCONTROLADORES








Monografia sobre a Famlia
MSP430X2



Nomes: Tiago Trevisan Jost
Professor: Gilson Incio Wirth







Porto Alegre, maio de 2012
1. Introduo
Quase todos os equipamentos que conhecemos atualmente possuem
um dispositivo capaz de realizar clculos e os procedimentos necessrios para
que o sistema funcione adequadamente. Este dispositivo, conhecido como
microprocessador, est presente em inmeros eletrodomsticos, como,
microondas, televises, DVD players, geladeiras, entre outros; e eletrnicos,
como, celulares, smartphones, GPSs, etc. Tudo gira em torno destes, muitas
vezes, pequenos dispositivos capazes de realizar milhes/bilhes de clculos
por segundo.
Diante disso, podemos introduzir o conceito de microcomputador, que
nada mais do que um microprocessador somado memria e dispositivos
I/O. Definimos ainda, o conceito de microcontrolador (a ser abordado neste
documento), que um microcomputador em um nico chip.
Existem inmeros microcontroladores, como o 8051, a famlia de
microcontroladores PICs, e MSP430, entre outros. Na prxima seo,
abordarei as principais caractersticas da famlia de microcontroladores
MSP430X2, descrevendo instrues, modos de endereamentos entre outros
aspectos relevantes acerca deles. Na seo 3, ser feita uma breve
comparao da famlia MSP430 e do microcontrolador 8051. Por fim, feita
uma concluso, destacando os pontos principais abordados no documento.

2. A Famlia MSP430X2

2.1. Aplicaes da Famlia
Os dispositivos da Famlia MSP430X2, da Texas Instruments, foram
desenvolvidos tendo como principal foco o baixo consumo de energia. Devido a
este fator e s peculiaridades de cada modelo, estes dispositivos so altamente
usados em equipamentos mdicos portteis, comunicaes wireless, captao
de energia, dentre outros.
2.2 Padro nos nomes
Existem diversos modelos de microcontroladores da famlia MSP430X2,
um deles o MSP430F2618ATZQWT-EP. Reparou no quantidade de letras e
nmeros que formam este modelo? Pois bem, veremos abaixo um figura que
ilustra o que significa cada um desses nmeros e letras que formam o modelo.
Como trataremos de microcontroladores da famlia 2, podemos ver que os
dispositivos trabalham com frequncias de at16MHz.

Figura 1. Padro para construo do nome do modelo.

2.3. Especificaes tcnicas do MSP430X2
O MSP430 incorpora uma arquitetura RISC 16bits com 27 instrues
(veremos mais tarde que possvel emular outras instrues) e 7 modos de
endereamentos, do tipo Von-Neumann e possuem dois barramentos para
comunicao, um que cuida dos endereos na memria (Memory Address Bus
MAB) e outro barramento para os dados (Memory Data Bus MDB), ver
figura 2.
A memria do dispositivo tem seu espao compartilhado entre
registradores SFRs (special function registers), perifricos, tabela de
interrupes, RAM, e Flash, conforme ilustra a figura 3. Vemos ainda que cada
um dos segmentos citados acima possuem um endereo inicial e final bem
definidos, por exemplo, os SFRs vo do endereo 0h at 0Fh. interessante

Figura 2. Arquitetura do MSP430X2

destacar que a memria enderea 8 bits, isso quer dizer, que para
armazenarmos um valor cujo tamanho 16 bits, ocuparemos 2 endereos de
memria. Acesso a cdigos, por exemplo, so feitos apenas em endereos
pares. Se um dado for de 8 bits, ser endereado em apenas 1 espao da
memria, se for 2 bits, ser utilizado 2 espaos da memria. Com a limitao
imposta pelo MAB de 16 bits, no era possvel enderear mais do que 64KB
(128KB para dispositivos com flash) de memria. A Texas resolveu ento fazer
uma mudana no MAB, expandindo para 20bits (a figura 2 ainda consta como
16bits, porm so 20), com isso, foi possvel enderear memrias de at 1MB.

Figura 3. Memria
A CPU possui 16 registradores. Os registradores R0, R1, R2 e R3
possuem funes especficas que sero detalhadas posteriormente. R4 at
R15 so os registradores de propsitos gerais.
PC (Program Counter R0) aponta para prxima instruo a ser
executada. Como cada instruo utiliza um nmero par de bytes, o primeiro bit
(posio 0) do registrador est sempre em 0.
SP (Stack Pointer R1) usado para armazenar o endereo de retorno
de chamadas de subrotinas e interrupes. Assim como o PC, o primeiro bit
(posio 0) do registrador est sempre em 0.
R2 (Status register) contm um conjunto de flags (ver figura 4), como,
C (Carry Bit), Z (Zero Bit), N (Negative bit), V (Overflow Bit), GIE (General
Interrupt enable quando setado, habilita Maskable Interupts ainda a ser
definido), SCG1 (Quando setado, desligada SMCLK), SCG0 (Quando setado,
desliga DCO, se este no for usado para MCLK e SMCLK), dentre outros.

Figura 4. Registrador R2 (Status Register)
Gerador de Constantes (R2 e R3) Seis constantes mais utilizadas so
geradas automaticamente durante toda operao da CPU por um gerador de
constantes, que composto por R2 e R3. Estas constantes so geradas de
acordo com o endereamento do registrador fonte e podem ser vistas abaixo:

Figura 5. Constant Generator (R2 e R3)
Mas porque da Texas disponibilizar estas constantes? O motivo
simples e muitos processadores RISC utilizam este mecanismo. Estas
constantes geradas nos permitem emular 24 novas instrues, expandindo de
27 para 51 instrues. Alguns exemplos de emulated instruction so: CLR DST
(que na verdade MOV R3, DST) e INC DST.
Registradores de propsitos Gerais (R4 a R15) estes registradores
podem ser usados para qualquer propsito a ser definido pelo programador,
como armazenamento de constantes, valores, ponteiros, etc.

Figura 6. Conjunto de Registradores
Como mencionei anteriormente, a famlia MSP430X2 possui 7 modos de
endereamento. So eles:
- Modo registrador : Rn Os contedos dos registradores so os
operandos para a instruo.
- Modo indexado: X(Rn) (Rn + X) aponta para o
operando. X armazendo na
prxima palavra
- Modo simblico: ADDR (PC + X) aponta para o
operando.
- Modo absoluto: &ADDR A palavra seguinte instruo
contm o endereo absoluto.
- Modo registrador indireto: @Rn Rn usado como um ponteiro
para o operando
- Modo indireto autoincrementado: @Rn+ Rn usado como
ponteiro para o operando e depois incrementado por 1 em instrues .B e por
2 para instrues .W.
- Modo Imediato: #N A palavra seguinte instruo
contem a constante N imediata.
O modo indireto
autoincrementado @PC+
utilizado.

O set de instrues pode ser dividido em trs formatos de instrues
diferentes: com dois operandos, com um operando, e instrues de saltos.
Para todas as instrues e formatos, as siglas para os campos so as
seguintes:
S-reg: o registrador usado como fonte (source);
D-reg: o registrador usado como destino (destination);
As: bits responsveis pelo tipo de endereamento usado na fonte;
Ad: bits responsveis pelo tipo de endereamento usado no destino;
B/W: Se a operao de Byte (bit em 1) ou Word (bit em 0);

Formato de instrues com 2 Operandos, como, MOV, ADD, entre outras.

Formato de instrues com 1 operando, como CALL, RETI, PUSH, entre
outras:

Formato de instrues de salto, como, JMP, JNZ, JZ, etc:


As instrues de um e dois operando podem ser instrues de bytes ou
palavras e definido utilizando extenses .B ou .W. Instrues de bytes so
usadas para acessar dados e perifricos de bytes e instrues de palavras so
utilizadas para acessar dados e perifricos de palavras.
Dada a grande quantidade de instrues do microprocessador (ver figura
9), realizar um detalhamento de cada uma delas desnecessrio, j que elas
so muito semelhantes s instrues disponveis em outros
microprocessadores como o 8051, entre outros.
Basic Clock Module +
o sistema de clock incluso famlia de microcontroladores. Ele
formado por trs sinais de clocks internos, que possibilita um consumo de baixa
potncia durante a utilizao (podendo chegar a at 16MHz, no caso da famlia
2).
Os clocks disponveis so:
ACLK: Clock auxiliar. Pode ser dividido por 1, 2, 4 ou 8 e selecionvel
para mdulos de perifricos individuais.
MCLK: Clock mestre. Pode ser dividido por 1, 2, 4 ou 8 e usado pela
CPU e pelo sistema.
SMCLK: Clock sub-principal (sub-main). Possui as mesmas
caractersticas do ACLK.
Dependendo de qual clock escolhido, o consumo de energia e o
desempenho podem variar, se quisermos baixo consumo, usamos clocks
menos velozes, se quisermos desempenho, usamos clocks mais velozes e o
consumo aumenta.
Interrupes
As interrupes geradas pelo microprocessador podem ser de trs tipos:
reset de sistemas (Utilizada junto ao WatchDog Timer), non-maskable (no
habilitada pelo bit GIE de R2, mas por bits individuais), e maskable (habilitada
pelo bit GIE de R2).


Figura 10. Conjunto das 51 instrues (27 originais e 24 emuladas)

Modos de operao
Conforme dito anteriormente, a familia MSP430 projetada para
aplicaes de baixo consumo de energia e esse controle pode ser feito atravs
do uso de diferentes modos de operao. Para selecionar qual modo utilizar,
devemos alterar alguns dos bits mostrados na figura 4 (Registrador R2),
conforme consta na tabela a seguir, onde ainda mostrado o modo de
operao e qual os clocks ativos naquele modo:

Figura 11. Modos de Operao

Essa possibilidade de modificar o modo de operao para os clocks
um mecanismo importante para o baixo consumo e deve ser considerado em
aplicaes deste tipo.
Watchdog Timer
um mecanismo de proteo que reseta o processador caso ocorra um
erro no software e que est presente na famlia MSP430X2. Ele no permite
que o microprocessador fique por tempo em um estado de inconsistncia.
Timers
A famlia MSP430X2 possui dois timers de 16bits. Esses timers
integrados aos microcontroladores podem operar em trs diferentes modos. No
modo continuous, o registrador de contagem continuamente incrementado
por um dos clock contando de 0 at 0xFFFF. No modo up, a contagem vai de 0
at o valor de um dos registradores de comparao. No modo up/down, a
contagem vai de 0 at o valor de um dos registradores de comparao e volta
at 0.
Outros perifricos integrados famlia
Existem inmeros outros perifricos integrados a famlia MSP430X2.
Realizar um detalhamento de todos eles estenderia o tamanho deste
documento, por isso, citarei apenas quais so outros perifricos e dispositivos
integrados ao microprocessador. So eles: interface para comunicao serial
(modos UART, I2C, SPI), ADC (Conversor analgico-digital), DAC (Conversor
digital-analgico), amplificador operacional, comparador de tenso analgico,
controlador DMA, entre outros.

3. Comparando com o 8051
Diante do que foi apresentado na seo 2, podemos realizar uma sucinta
comparao entre o microcontrolador 8051 e a famlia MSP430X2. Para isso
utilizaremos uma tabela que apresentar algumas das caractersticas
encontradas ou ausentes nos dois microcontroladores.
Caractersticas 8051 MSP430X2
Processador de X bits 8 16
Frequncia Mxima Clock 12MHz 16MHz
RISC ou CISC CISC RISC
Modos de Endereamento 5 7
Von-Neumann ou Havard Havard Von-Neumann
Nmero de Timers 2 2
WatchDog Timer Ausente Presente
Barramento de Endereos 16 bits 20 bits
Barramento de dados 8 bits 16 bits
Mxima de Memria Suportada
128KB (RAM e
ROM com
64KB cada)
1MB

Vemos atravs da tabela algumas semelhanas e diferenas entre os
microcontroladores comparados. Vale salientar, novamente, que a famlia
MSP430X2 utilizada amplamente em aplicaes com baixo consumo de
potncia j que possuem dispositivos que auxiliam e desempenham um timo
papel para minimizar o consumo de energia.

4. Concluso
Podemos observar atravs do que foi relatado neste documento, que a
famlia de microcontroladores MSP430X2 muito poderosa em termos de
quantidade de perifricos e funcionalidades. Seu foco principal o baixo
consumo de energia que pode ser obtido modificando seu modo de operao
(ver Modos de operao), mostrando que este dispositivo pode ser
amplamente utilizado em situaes de baixo consumo.

Das könnte Ihnen auch gefallen