capÍtulo 6 elementos da cadeia de …webx.ubi.pt/~dinis/im/im_cap06_cadeia.pdf · amplificador...

86
Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados CAPÍTULO 6 ELEMENTOS DA CADEIA DE AQUISIÇÃO DE DADOS 6.1. Cadeia de Aquisição de Dados vs. Cadeia de Medição O computador, sob a forma de computador pessoal ou de um microprocessador com memória e mecanismos de comunicação, é a unidade central de um sistema de aquisição de dados. Tipos básicos de sistemas de aquisição de dados: - Computador pessoal e uma placa (cartão) de aquisição de dados que está introduzida no barramento interno do computador; - Sistemas com barramento externo, com o seu próprio microprocessador e memória. Os sistemas baseados num cartão introduzido no barramento: - Constituídos pelo cartão e pelo computador; - Os sinais analógicos são ligados directamente ao cartão de aquisição de dados; - São sistemas de baixo custo; - Permitem uma elevada velocidade de aquisição de dados. Sistemas com barramento externo: - Permitem configurações diversificadas; - Podem ser instalados em lugares remotos; - Aliviam o computador das tarefas de aquisição de dados; - Permitem uma maior imunidade ao ruído (importante na aquisição de sinais com baixas amplitudes). 1

Upload: hadat

Post on 30-Sep-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

CAPÍTULO 6

ELEMENTOS DA CADEIA DE AQUISIÇÃO DE DADOS

6.1. Cadeia de Aquisição de Dados vs. Cadeia de Medição

O computador, sob a forma de computador pessoal ou de um microprocessador com memória

e mecanismos de comunicação, é a unidade central de um sistema de aquisição de dados.

Tipos básicos de sistemas de aquisição de dados:

- Computador pessoal e uma placa (cartão) de aquisição de dados que está introduzida

no barramento interno do computador;

- Sistemas com barramento externo, com o seu próprio microprocessador e memória.

Os sistemas baseados num cartão introduzido no barramento:

- Constituídos pelo cartão e pelo computador;

- Os sinais analógicos são ligados directamente ao cartão de aquisição de dados;

- São sistemas de baixo custo;

- Permitem uma elevada velocidade de aquisição de dados.

Sistemas com barramento externo:

- Permitem configurações diversificadas;

- Podem ser instalados em lugares remotos;

- Aliviam o computador das tarefas de aquisição de dados;

- Permitem uma maior imunidade ao ruído (importante na aquisição de sinais com

baixas amplitudes).

1

Page 2: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Uma cadeia de medição é constituída por um conjunto de elementos, que são devidamente

associados de forma a medir uma determinada grandeza.

Em geral uma cadeia de medição é constituída por:

- Um transdutor e um circuito de condicionamento de sinal, que convertem uma

determinada forma de energia não-eléctrica numa variação de um parâmetro eléctrico;

- Um amplificador de instrumentação, que tem como missão amplificar o sinal

proveniente da ponte, de baixa amplitude, para um nível adequado para ser medido no

andar seguinte;

- Um conversor analógico-digital, que converte o sinal analógico de entrada numa

forma digital, para ser visualizada directamente por um visor numérico, com diversos

dígitos, ou o de produzir um sinal digital para ser tratado por sistemas digitais.

2

Page 3: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Caracterização de uma cadeia de medição:

Questões a serem levadas em consideração durante o dimensionamento de uma cadeia de

medição:

- Qual a gama dinâmica da grandeza de entrada e, consequentemente, qual a gama de

grandeza eléctrica correspondente à saída do primeiro bloco do transdutor e ponte de

ponte de medição?

- Qual o ganho do amplificador?

- Qual o número de bits que devemos seleccionar para o conversor?

6.2. Instrumentação Digital

6.2.1. DIAGRAMA DE BLOCOS DE UM SISTEMA DE AQUISIÇÃO DE DADOS

3

Page 4: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.2.2. PRINCIPIOS GERAIS

Filtro passa-baixo

- Função: reduzir a largura de banda do sinal analógico de entrada.

- Objectivo: minimizar a distorção espectral introduzida pela sub-amostragem.

Amostragem

- Função: discretização temporal, mantendo a amplitude contínua.

- O sinal à saída do filtro é amostrado com uma frequência constante.

- A saída do amostrador deverá ser retida durante um tempo suficiente para permitir a

conversão analógico-digital.

Conversão analógico-digital

- Função: discretização das amplitudes.

- O sinal amostrado é convertido numa sequência de palavras digitais.

- A amplitude de cada amostra passa a ser caracterizada por um conjunto de níveis

discretos.

Processamento digital

- Função realizada num computador digital ou num processador de sinal.

- Cada amostra digital é processada de acordo com uma função previamente

programada.

Conversão digital-analógica

- Os dados digitais são convertidos para a forma analógica através de um conversor

D/A.

- O sinal analógico é aproximado por um conjunto de níveis discretos de amplitude.

Reconstrução do sinal

- Função: remover as componentes de alta-frequência do sinal de saída do conversor

D/A (correspondentes às transições abruptas entre amostras sucessivas).

- Utiliza-se um filtro passa-baixo para realizar esta função.

4

Page 5: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.2.3. COMPOSIÇÃO DE SINAIS

5

Page 6: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.3. Filtragem

Um sinal sinusoidal ao atravessar um sistema linear, não altera a sua forma. Com uma

entrada:

vi(t) = A1 sen (wt)

A saída é do tipo:

vo(t) = A2 sen ( wt - φ(w) )

A função φ(w) caracteriza a variação da fase com a frequência; |H(w)|= A2/A1 é o módulo da

função de transferência H(w). A função de transferência do sistema é uma grandeza

complexa, que à frequência w, apresenta o módulo |H(w)| e fase φ(w), isto é:

6.3.1. CIRCUITO RC PASSA-ALTO

Um filtro passa-alto passivo é dado pela seguinte montagem:

6

Page 7: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

A função de transferência H(s) do circuito RC passa-alto é:

0 ( )( )( ) 1i

V s sH sV s s

ττ

= =+

Vi(s) e Vo(s) são, respectivamente, as transformadas de Laplace de vi(t) e vo(t). O parâmetro τ é

a constante de tempo, sendo:

τ = RC

Resposta em frequência

O módulo e a fase da função de transferência H(f) apresentam as expressões:

12

1

1( ) , ( ) arctan

1

fH f fff

f

φ⎛ ⎞

= = ⎜ ⎟⎝ ⎠⎛ ⎞

+ ⎜ ⎟⎝ ⎠

Frequência inferior de corte do filtro:

11

2f

π τ=

7

Page 8: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.3.2. CIRCUITO RC PASSA-BAIXO

A função de transferência H(s) do circuito RC passa-baixo é:

01( )( ) 1( )i

V sH sV s s

τ

τ= =

+

Vi(s) e Vo(s) são, respectivamente, as transformadas de Laplace de vi(t) e vo(t). O parâmetro τ é

a constante de tempo, sendo:

τ = RC

Resposta em frequência

O módulo e a fase da função de transferência H(f) apresentam as expressões:

22

2

1( ) , ( ) arctan

1

fH f fff

f

φ⎛ ⎞

= = ⎜ ⎟⎝ ⎠⎛ ⎞

+ ⎜ ⎟⎝ ⎠

Frequência inferior de corte do filtro:

21

2f

π τ=

8

Page 9: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Exemplo:

9

Page 10: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.4. Multiplexador Analógico

6.4.1. FUNÇÃO DO MULTIPLEXADOR ANALÓGICO

Quando a aquisição de dados é relativa a várias mensurandas, possuindo cada uma o seu canal

(transdutor, condicionador, filtro, etc...), o multiplexador permite a selecção de um

determinado canal de modo a conduzir um sinal específico aos dispositivos de tratamento do

sinal situados a jusante.

A selecção de um canal é realizada pelo seu endereçamento, palavra binária fornecida pelo

controlador da cadeia de medição e representativa do seu número de ordem. O comando de

descodificação ordena o fecho dos interruptores que ligam o canal escolhido à saída do

multiplexador.

O interruptor é geralmente um transístor com efeito de campo ou mais raramente um relé, que

passa de estado bloqueado ao estado condutor quando é seleccionado.

Dependendo das referências dos sinais de tensão em cada canal e na organização da cadeia de

medição a jusante do multiplexador, cada canal apresenta uma ou duas linhas. No primeiro

caso, o multiplexador possui uma via para cada canal e é unipolar. No segundo caso, o

multiplexador comporta duas vias por canal e designa-se por diferencial.

Multiplexador unipolar Multiplexador diferencial

10

Page 11: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.4.2. TOPOLOGIA DA CADEIA DE MEDIÇÃO

São possíveis diferentes configurações da cadeia de medição dependendo das referências de

tensão (massa) das fontes de sinal (transdutores e eventualmente condicionadores de sinal).

Dependendo do caso, surge a necessidade de multiplexadores unipolares ou diferenciais.

6.4.2.1. Caso 1: Massa das fontes de sinal referenciada à mesma massa que a

instrumentação

Neste caso, não há diferença de potencial entre a massa do sinal e da instrumentação.

O sinal referenciado à massa comum pode ser transmitido por um único fio, permitindo a

utilização de um multiplexador unipolar e de um amplificador assimétrico, eventualmente

com ganho programável, localizado após o multiplexador.

6.4.2.2. Caso 2: Massa das fontes de sinal referenciada à uma massa distinta da

instrumentação

Existência de um potencial entre a massa comum dos transdutores e da instrumentação

(tensão de modo comum se o sinal fosse transmitido por dois fios para um amplificador de

instrumentação). Assim sendo, poderá ser utilizado um multiplexador unipolar seguido de um

amplificador diferencial.

11

Page 12: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.4.2.3. Caso 3: As fontes de sinal são referenciadas a massas diferentes e distintas da

massa da instrumentação

Neste caso, existem duas soluções possíveis:

- Cada canal possui um amplificador diferencial, pelo que o multiplexador poderá ser

unipolar.

12

Page 13: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

- O sinal diferencial resultante de cada transdutor é seleccionado por um multiplexador

diferencial que fornece a um amplificador de instrumentação, eventualmente

programável e colocado após o multiplexador.

6.5. Amostrador / Retentor

O amostrador/retentor assegura as seguintes funções:

- Realiza num instante conhecido com precisão, a amostragem de uma tensão variável

aplicada à sua entrada;

- Memoriza essa amostragem;

- Fornece à saída uma tensão igual à de amostragem.

13

Page 14: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.5.1. FUNÇÃO E PRINCIPIO DE FUNCIONAMENTO

6.5.1.1. Necessidade de um Amostrador / Retentor

No caso de sinais cuja variação poderá ser importante durante a conversão analógica-digital, o

amostrador/retentor deverá necessariamente preceder o conversor de modo a lhe apresentar à

entrada uma tensão estável representativa do sinal no instante de amostragem.

Seja, vi = Vi sin(ω t), um sinal sinusoidal. Durante um período tc de um conversão, a variação

∆vi do sinal deverá ser inferior a um máximo especificado, por exemplo Q / 2, sendo Q o

quantum do conversor analógico-digital.

∆vi ≤ Q / 2

O valor máximo de ∆vi será dado pela seguinte expressão:

max maxmax max

, em que, 2i ii c

d v d vv td t d t

π∆ = ⋅ = iF V

O valor Vi max correspondente à amplitude pico a pico do sinal, Vpe, tensão de entrada de escala

máxima do CAN será dado por:

Vi max = Vpe / 2

sabendo que:

Q = Vpe / 2n , em que, n = número de bits do conversor A/D

14

Page 15: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

virá:

122 2 2 2 2pe pe

c ln nc

V VF t F

π≤ ⇒ ≤ =

⋅ ⋅F

sendo Fl, a frequência limite à qual, para as condições indicadas (número de bits e período de

conversão), o amostrador/retentor se torna necessário.

6.5.1.2. Elementos constituintes

Um Amostrador / Retentor é constituído pelos seguintes dispositivos:

- Um interruptor, geralmente do tipo FET e o seu circuito de comando;

- Um condensador de memorização;

- Dois andares de acoplamento, um à entrada e outro à saída.

O comando do interruptor é operado por um sinal lógico S/H:

- durante o nível lógico “1”, de duração ts (período de amostragem), este sinal provoca o

fecho do interruptor. É a fase de amostragem durante a qual a tensão de entrada

percorre o andar de entrada e carrega o condensador;

- durante o nível lógico “0”, de duração th (período de retenção), o sinal lógico acarreta

a abertura do interruptor. É a fase de bloqueio, durante a qual, o valor de tensão

memorizado no condensador na fase precedente é colocado no andar de saída.

15

Page 16: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Quando os dois andares de acoplamento são acoplados individualmente, a estrutura é

denominada por acoplamento aberto, em que a tensão de desvio à saída, vd0, é dada por:

vd0 = vdi 1 + vdi 2

sendo vdi 1 e vdi 2 as tensões de desvio à entrada dos amplificadores operacionais.

Outras montagens podem ser realizadas:

- Uma delas consiste na estrutura em acoplamento fechado, que corresponde a uma

reacção global estabelecida entre a saída do A.O.2 e a entrada do A.O.1. Esta

montagem tem por objectivo evitar a saturação do A.O.1.

- Uma outra montagem, denominada de integradora, apresenta duas vantagens

adicionais: uma rapidez acrescida e uma limitação da corrente de fuga quando o

interruptor está aberto.

16

Page 17: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.5.1.3. Características temporais

Durante a sucessão de fases de amostragem de duração ts e de retenção de duração th, é

necessário levar em consideração diversos intervalos temporais para garantir a precisão das

operações de amostragem e retenção.

Fase de amostragem

- Necessidade de uma rápida variação da tensão de saída do amplificador operacional do

andar de entrada, de modo a reduzir o tempo de aquisição, tacq(ε), isto é, o intervalo de tempo

entre o comando de amostragem e o instante em que a tensão no condensador é igual à tensão

de entrada, vi.

Fase de amostragem / retenção

Quando o sinal de retenção é aplicado, existe um tempo de retardamento de abertura, tad, até

que o contacto fica efectivamente aberto. Assim, a aquisição de um sinal de entrada exige

que:

ts + tad ≥ tacq(ε)

17

Page 18: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Fase de retenção

Nesta fase é efectuada a conversão analógica-digital. Após o comando de retenção, é

necessário aguardar um período de tempo, tad + tl(ε) para que a tensão de saída do

amostrador/retentor se encontre estabilizada e iniciar a conversão durante um período de

tempo, tc.

O intervalo de tempo com duração th correspondente ao comando de retenção deverá

satisfazer a seguinte condição:

th ≥ tad + tl(ε)+ tc

6.5.2. CRITÉRIOS DE DECISÃO QUANTO À SUA UTILIZAÇÃO

Qual a frequência com que se deve amostrar um sinal analógico de modo a não perder

informação contida no sinal?

18

Page 19: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

- Um sinal que varia lentamente no tempo (ex: a temperatura ambiente) é muito menor

do que aquela que deve ser utilizada para sinais com uma maior taxa de variação (ex:

sinal eléctrico da voz captado por um microfone)

Teorema da amostragem (teorema de Nyquist)

- A resposta está no “teorema da amostragem” que estabelece: “um sinal contínuo de

banda limitada contendo frequências inferiores a uma frequência fc é completamente

reconstituído se for amostrado a uma taxa de amostragem igual ou superior a 2fc

amostras por segundo.

- Na realidade devemos recorrer a frequências de amostragem bem mais elevadas, da

ordem das 10× superior.

A escolha da frequência de amostragem fs é baseada na frequência do sinal de entrada.

- As componentes de um sinal com frequência superiores a fs / 2 = fc surgem como

componentes do sinal reconstituído, produzindo o mesmo efeito que as componentes

com frequências no intervalo 0 – fs / 2 (sinal original)

Como determinar a distorção espectral (aliasing frequency)?

19

Page 20: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6. Conversão Analógica / Digital

Designam-se por conversores analógico / digital, os dispositivos que transformam uma tensão

analógica numa palavra digital de n bits. Consoante o princípio de funcionamento podem

classificar-se em:

- Conversores tensão-frequência;

- Conversores tensão-tempo;

- Conversores por comparação.

É também possível classificar os conversores A/D nos tipos integradores e não integradores,

consoante a conversão se baseie ou não na integração temporal do sinal a medir.

Esta divisão é útil pois permite classificar os instrumentos quanto ao comportamento na

presença de ruído e à velocidade de conversão (número de medidas que é possível efectuar

por unidade de tempo).

As técnicas não integradoras permitem uma maior velocidade de conversão (até cerca de 106

leituras por segundo no caso de conversores de aproximações sucessivas e até mais nos de

comparação simultânea), enquanto que as técnicas integradoras, não podendo ir muito além

das 50 leituras por segundo apresentam tipicamente valores mais baixos. Esta diferença surge

dos princípios de funcionamento distintos.

No que respeita a imunidade ao ruído, os conversores integradores apresenta a vantagem de

rejeitarem naturalmente certas frequências. Com efeito, todos os sinais alternados de valor

médio nulo que se sobreponham ao sinal a medir e cujos períodos sejam iguais ao período de

integração, ou a uma fracção inteira deste, terão um efeito nulo no resultado final da

integração.

No caso dos aparelhos que utilizam conversores do tipo não integradores há a necessidade de

filtrar o sinal a medir para obter a imunidade ao ruído.

20

Page 21: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Ainda, há que definir os seguintes pressupostos em que o seu funcionamento assenta:

Quantificação

As grandezas analógicas, seja qual for o tipo, são frequentemente convertidas em tensões ou

correntes por dispositivos transdutores.

Na conversão analógico-digital, o sinal de entrada é convertido num conjunto finito de

estados discretos de saída (operação designada por quantificação):

- O número de estados, N, é determinado pelo número de bits do conversor, n, pela

relação:

N = 2n

Codificação

A quantificação é seguida pela codificação

- Atribuição de um código de um código a cada um dos estados de saída

Quantum

O maior intervalo de valore de tensão do sinal de entrada, que produz o mesmo código de

saída, é designado por quantum Q.

em que VF é a tensão de fim de escala do conversor A/D

21

Page 22: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6.1. CONVERSÃO ANALÓGICA / DIGITAL – FUNÇÃO DE TRANSFERÊNCIA

- Int(.) representa o inteiro contido no argumento

- vi é o sinal analógico aplicado à entrada

- xb é o resultado da conversão

22

Page 23: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6.2. CONVERSORES TENSÃO-FREQUÊNCIA

Neste tipo de conversores, o sinal analógico de entrada em tensão é convertido num sinal,

usualmente uma sequência de impulsos, cuja frequência é proporcional ao sinal de entrada.

Os impulsos são contados num contador durante um intervalo de tempo determinado. O valor

final da contagem representará o valor da tensão de entrada.

Características:

- Produz na saída uma onda com frequência proporcional à tensão de entrada.

- Elevada rejeição de modo série devido ao processo de integração.

- A exactidão não é boa, já que são vários os factores que a influenciam (R, C, Vs e T).

- A descarga rápida do condensador originas d«sinais de retorno elevados.

23

Page 24: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Princípio de funcionamento:

(1) Quando a tensão de entrada, Vi, é aplicada ao circuito, o integrador estará em zero. A

tensão Vi é então integrada produzindo à saída do integrador uma rampa.

(2) Quando esta rampa atingir o valor Vr de comparação, o comparador mudará de estado,

disparando o gerador de impulsos.

(3) Este irá produzir um impulso de duração fixa e de amplitude superior a Vi.

(4) A tensão à entrada do integrador muda de sinal e este será rapidamente descarregado,

voltando o circuito ao estado inicial.

(5) Enquanto Vi estiver aplicada ao circuito, o ciclo irá repertir-se, obtendo-se uma

sequência de impulsos cuja frequência será tanto maior quanto mais rapidamente o

integrador for carregado, ou seja, quanto maior for a amplitude do sinal a converter.

(6) Aplicando estes impulsos a um contador durante o intervalo tempo fixo, irá obter-se

uma contagem proporcional à tensão Vi.

Conforme indicado o esquema apenas funcionará para tensões positivas. Para tensões de

ambas polaridades haverá que duplicar o comparador e o gerador de impulsos.

A precisão da medida depende de:

- Precisão da tensão de comparação;

- Precisão do intervalo de tempo de contagem;

- Linearidade do integrador;

- Da não existência de corrente residual que carregue o integrador na ausência de tensão

aplicada ( o que provocará a geração espontânea de impulsos).

A maior limitação desta técnica de conversão reside na dependência entre o tempo de

amostragem e o número de dígitos pretendido.

24

Page 25: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6.3. CONVERSORES TENSÃO-TEMPO

Nos conversores tensão-tempo, o sinal de entrada é convertido num sinal com uma

determinada duração temporal que lhe é proporcional. Essa duração é convertida para forma

digital contando os impulsos dum oscilador de frequência conhecida, que ocorrem durante

esse intervalo de tempo.

Dois tipos de conversores tensão-tempo são:

- Do tipo não integrador: Conversor de rampa simples;

- Do tipo integrador: Conversor de dupla rampa.

6.6.3.1. Conversor de rampa simples

Princípio de funcionamento:

(1) O gerador de rampa produz uma tensão crescente linearmente entre –Vmax e +Vmax ,

valores que correspondem ao final da escala.

(2) Dois comparadores têm este sinal à sua entrada, detectando um deles a passagem da

rampa por zero e outro a passagem pelo valor correspondente a Vi. O ou exclusivo

(XOR) dos impulsos correspondentes às comparações é aplicado a uma báscula que se

encontra inicialmente a zero, estando a tensão a converter dentro da gama de valores

aceite.

(3) A primeira comparação irá abrir a passagem dos impulsos do oscilador (de frequência

conhecida) para o contador, enquanto a segunda comparação fecha-la.

(4) O intervalo de tempo entre as duas comparações é directamente proporcional a Vi.

(5) A indicação de fora da escala deverá repor em zero a báscula pode ser obtida através

da indicação de que a rampa já atingiu Vmax e que simultaneamente a saída da báscula

continua a desbloquear os impulsos do oscilador.

(6) A existência do ou exclusivo evita que na ausência de tensão de entrada o contador

entre em sobrecarga por abertura permanente da porta.

25

Page 26: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Os factores mais influentes na precisão da conversão são:

- Linearidade do gerador de rampa;

- Estabilidade do oscilador;

- Qualidade dos comparadores.

26

Page 27: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6.3.2. Conversor de dupla-rampa

O principal objectivo desta técnica, de uso muito generalizado, é o de diminuir os requisitos

quanto à linearidade do gerador de tempo que se verificam no conversor de rampa simples.

Características:

- Um dos métodos mais utilizados, sendo baseado na integração da tensão de entrada

durante um período de tempo constante, seguido da medição do intervalo de tempo

necessário para descarregar o condensador a corrente constante.

- Boa rejeição de modo série.

- A exactidão é influenciada apenas pela tensão de referência.

27

Page 28: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Princípio de funcionamento:

(1) No inicio da conversão, o interruptor controlável é posicionado de modo a permitir a

integração da tensão a converter, durante um intervalo de tempo fixo, T.

(2) Passado esse intervalo de tempo, o interruptor é comutado, permitindo agora a

integração duma tensão de referência Vref.

(3) Esta sequência de operações é garantida pelo bloco de controlo lógico.

(4) A tensão de referência é uma de duas possíveis, de igual amplitude e de sinais

contrários, sendo seleccionada aquela que contrarie a carga do integrador devido à

tensão de entrada, Vi, ou seja, de polaridade oposta a esta.

(5) Tem-se deste modo que o integrador será carregado durante um certo tempo, ficando a

sua saída a um nível desconhecido mas que é proporcional à tensão de entrada.

(6) A descarga é feita pela tensão de referência conhecida, e demorará um tempo

proporcional à tensão a converter, tx.

(7) Este tempo de descarga é lido, permitindo-se a passagem dos impulsos de um

oscilador de frequência conhecida entre o início da descarga do integrador (controlado

pelo bloco de controlo) e o fim do mesmo, ou seja, quando a saída do integrador

atingir zero, o qual é detectado pelo comparador:

tx = Vi T / Vref

A precisão da conversão fazendo uso desta técnica depende de:

- Estabilidade do oscilador;

- Qualidade do comparador;

- Precisão com que Vref é conhecida;

- Qualidade do interruptor controlável.

28

Page 29: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6.4. CONVERSORES DE COMPARAÇÃO

Nos conversores de comparação, o sinal de entrada é comparado simultaneamente ou

sequencialmente com uma série de valores de tensão gerados internamente, cuja

representação digital é conhecida. O valor desta série que mais se aproxima do sinal a medir é

dado como a sua representação digital. Para obter os valores da tensão usada na comparação,

alguns desses conversores fazem uso de um conversor digital-analógico (D/A).

Os seguintes conversores apresentados são todos do tipo não integradores, pelo que terão que

ser aliados a técnicas de filtragem para garantir a precisão da conversão.

6.6.4.1. Conversor paralelo ou simultâneo

Este tipo de conversor é potencialmente mais rápido mas ao mesmo tempo mais complexo.

Características:

- Conversão simultânea dos bits através de comparadores.

- •A saída dos comparadores é descodificada, produzindo um código binário.

- •O número de comparadores exigido para um conversor de n bits é igual a 2n - 1.

Princípio de funcionamento:

(1) Comparação simultânea da tensão a medir com 2n – 1 tensões de referência (sendo n o

número de bits da palavra digital desejada).

(2) Estas tensões estão igualmente espaçadas.

(3) Em cada conversão, os comparadores correspondentes às tensões inferiores à tensão

de entrada estarão num determinado estado e os restantes no estado complementar.

(4) Um circuito lógico com 2n – 1 entradas e n saídas produzirá o valor digital da tensão.

29

Page 30: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

As principais dificuldades construtivas deste tipo de conversor são:

- Número elevado de comparadores que podem ser necessários e que deverão apresentar

igual estabilidade quer no tempo quer com a temperatura;

- Necessidade de 2n – 1 tensões de referência com elevada precisão.

30

Page 31: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6.4.2. Conversores de escada e de seguimento

Os esquemas destes conversores são muito mais simples, apresentado no entanto a

desvantagem da lentidão da conversão.

Características:

- O sinal de entrada é comparado com um sinal em forma de rampa linearmente

crescente no tempo.

- O tempo de conversão é variável com a amplitude do sinal a medir.

- A exactidão depende apenas da fonte de referência.

- O conversor mede o valor instantâneo do sinal de entrada no momento em que a

compensação é atingida.

Princípio de funcionamento:

(1) O princípio de funcionamento do conversor de escada é semelhante ao do conversor

de rampa simples.

(2) O gerador de rampa é substituído por um gerador de tensão em escada conseguido à

custa de um conversor D/A e de um contador.

(3) A conversão começa com o contador em zero à custa de um impulso de “reset” gerado

num bloco de controlo.

(4) Sendo a tensão Vi positiva, a saída do comparador é tal que permite a passagem de

impulsos do oscilador e portanto a contagem destes pelo contador.

(5) A esta contagem corresponde, à saída do conversor D/A, uma tensão em escada

crescente.

(6) Quando esta tensão for superior a Vi o contador parará devido à comutação do

comparador, sendo então o seu conteúdo a representação digital da tensão de entrada.

(7) Ao fim de certo intervalo de tempo, novo impulso de “reset” surgirá e nova conversão

se iniciará.

31

Page 32: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

As maiores limitações ao uso deste tipo de conversor prendem-se com a baixa velocidade

conversão.

O conversor de seguimento difere do conversor em escada no tipo de contador utilizado.

Neste caso, usa-se um contador capaz de contar nos dois sentidos, para cima e para baixo

(up/down counter). Assim, o comparador está ligado à entrada up/down de tal modo que,

quando a tensão Vi for superior à tensão gerada pelo conversor D/A, o contador contará para

cima, contado para baixo em caso contrário. Deste modo, para uma tensão de entrada estável,

a primeira conversão é em tudo idêntica à efectuada pelo conversor em escada. A partir desta,

qualquer flutuação do valor de Vi é seguida pelo contador que assim tentará minimizar a

diferença entre as duas tensões.

32

Page 33: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6.4.3. Conversores de aproximações sucessivas

Baseia-se na técnica de procura binária para efectuar a pesquisa, possuindo um tempo de

busca proporcional a log2N.

Características:

- Bom compromisso entre a complexidade do circuito, a velocidade e a possibilidade de

obtenção de resoluções elevadas.

- O tempo de conversão é constante

- •A exactidão depende apenas da fonte de referência.

- •O conversor mede o valor instantâneo do sinal de entrada no momento em que a

compensação é atingida.

Princípio de funcionamento:

(1) No início da conversão, o programador é posto em zero, pelo que a tensão à saída do

conversor D/A também tomará este valor.

(2) Ao primeiro impulso de relógio, o bit mais significativo do programador (MSB) é

posto no valor “1”.

(3) A correspondente tensão, igual a metade do valor máximo num programador binário,

é gerada à saída do conversor D/A e comparada com Vi.

(4) Quando surgir o próximo impulso de relógio o bit seguinte será posto a “1”, sendo o

bit MSB mantido a “1” no caso de ser Vr menor que Vi ou reposto a zero no caso

contrário.

(5) O processo repetir-se-á até todos os bits terem sido ensaiados, sendo a procura digital

resultante no programador o valor de com um erro igual a metade do valor do último

bit.

A precisão da medida depende de:

- Qualidade do comparador;

- Qualidade do conversor D/A;

33

Page 34: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

34

Page 35: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.6.5. EXPLORAÇÃO DE DISPOSITIVOS CONVERSORES ANALÓGICOS /

DIGITAIS

35

Page 36: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

36

Page 37: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.7. Microcontroladores

Após a passagem pelo conversor analógico-digital, onde o valor da grandeza física adquirida

pela cadeia de aquisição de dados é transformado numa palavra digital, estes dados serão

colocados num microprocessador com o objectivo de ser realizada uma qualquer função de

gestão, monitorização ou de controlo.

Neste caso em particular, será realizada uma descrição do microcontrolador que será utilizado

na disciplina para aplicação prática dos conceitos teóricos.

6.7.1. INTRODUÇÃO AO MICROCONTROLADOR MSP430

O microcontrolador da família MSP430 é fabricado pela Texas Instruments. Trata-se de um

microcontrolador de baixo consumo com 16 bits. Esta família de microcontroladores partilha

um core do CPU (Central Processing Unit) comum, do tipo RISC1, com uma arquitectura Von

Neumann2. O MSP430 torna-se competitivo em preço com os controladores de 8 bits

existentes no mercado, conseguindo suportar instruções de 8 bits e de 16 bits, permitindo a

migração a partir de plataformas similares.

As características fundamentais da família dos microcontroladores MSP430 são:

- Arquitectura para aplicações de baixo consumo energético;

- Medidas analógicas de alto desempenho;

- Arquitectura e características da unidade central de processamento com aplicações que

permitem reduzir o tamanho do código.

- Memória Flash programável.

1 RISC (Reduced Instructions Set Computing) – Neste tipo de configuração, as instruções são reduzidas ao básico com o objectivo de facilitar uma descodificação mais simples e rápida das instruções.

2 Arquitectura Von Neumann - Arquitectura computacional que faz uso de uma única estrutura de armazenamento para guardar tanto o conjunto de instruções como os dados. Neste modelo, a separação do armazenamento da unidade de processamento é implícita. Ao tratar as instruções do mesmo modo que os dados, as máquinas que fazem uso desta arquitectura podem facilmente alterar as instruções, isto é, são reprogramáveis.

37

Page 38: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O sistema de relógio foi desenvolvido especificamente para aplicações que façam uso de uma

fonte de alimentação externa. O relógio auxiliar de baixa frequência (ACLK) é obtido

directamente a partir de um cristal com 32 kHz. Um oscilador controlado digitalmente de alta

velocidade integrado no µC (DCO) pode fornecer a fonte de relógio ao relógio master

(MCLK) utilizado pela CPU e pelos periféricos de alta velocidade.

38

Page 39: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.7.2. FERRAMENTAS DE DESENVOLVIMENTO

6.7.2.1. Kit OLIMEX

A descrição dos itens seguintes será em função do microcontrolador MSP430x4xx incluído no

kit de desenvolvimento da OLIMEX, que possui capacidades mais adequadas às funções

pretendidas de aquisição de dados e a sua posterior gestão.

Dos kits disponíveis irão ser mais pormenorizadamente descritos o MSP430F449 STK e o

MSP430F449 STK2, cuja diferença mais significativa reside no número de dígitos do painel

LCD.

Será utilizada a placa de desenvolvimento da OLIMEX integra:

- TI MSP430F449;

- Alimentação por duas pilhas AA de 1,5 V;

- Buzina;

- Painel LCD (Liquid Cristal Display);

- Oscilador de cristais a 32 768 Hz;

- Oscilador de cristais de alta-frequência a 8 MHz (apenas funciona alimentado a

3,6 V);

- Porto JTAG;

- LED (Light Emissor Diode);

- 4 botões de pressão;

- Ligação RS232;

- Porto de botão de pressão DALLAS;

- Entrada em frequência;

- Portos de extensão (4 portos digitais e 1 porto analógico).

39

Page 40: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

kit OLIMEX MSP430F449 STK kit OLIMEX MSP430F449 STK2

Nota: Em Anexo encontram-se os Datasheets dos kits mencionados.

6.7.2.2. IAR Systems Embedded Workbench

O IAR Embedded Workbench™ é um ambiente de desenvolvimento integrado (Integrated

Development Environment - IDE), que permite o desenvolvimento e gestão completa de

projectos e aplicações embebidas.

As ferramentas integradas neste ambiente de desenvolvimento são:

- Compilador IAR MSP430 C/C++;

- Assemblador IAR MSP430;

- IAR XLINK Linker™;

- The IAR XAR Library Builder™;

- Editor de texto;

- Gestor de projectos;

- Utilitário de construção de linhas de comando;

- IAR C-SPY™ debugger.

40

Page 41: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O IAR Embedded Workbench encontra-se disponível para um grande número de

microprocessadores e microcontroladores de 8, 16 e 32 bits. Fornece um ambiente de

desenvolvimento altamente eficiente já que promove uma metodologia de trabalho funcional

que leva à redução de tempo de desenvolvimento fazendo uso das ferramentas IAR.

De seguida será sucintamente apresentado o modo de criação de um projecto fazendo uso do

ambiente de desenvolvimento IAR Embedded Workbench™. O seguinte exemplo demonstra

um ciclo típico de desenvolvimento e mostra como deverá ser utilizado o compilador e o

linker de modo a criar uma pequena aplicação para o MSP430.

Definição de um novo projecto

Antes de criar um projecto é necessário criar inicialmente um workspace. Quando se inicia o

IAR Embedded Workbench pela primeira vez, é gerado por defeito um workspace que poderá

ser utilizado para os projectos. Caso se feito uso deste workspace, o primeiro passo pode ser

ignorado:

1. Escolher File>New e seleccionar Workspace na caixa de diálogo New. Após premir OK

será apresentada uma janela com o workspace vazio.

2. Para guardar o workspace, escolher File>Save Workspace. Especificar onde deverá ser

guardado o ficheiro workspace. Neste exemplo, será armazenado na directoria projects.

Será dado o nome de tutorials na caixa File name, e premir Save para criar o novo

workspace (extensão do ficheiro .eww).

41

Page 42: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

3. Para criar um novo projecto, escolher Project>Create New Project. Surgirá a caixa de

diálogo Create New Project que permitirá basear o novo projecto num modelo de projecto

existente. Para este exemplo, seleccionar o modelo Empty project, que simplesmente cria um

projecto vazio fazendo uso da configuração de projectos existente por defeito.

4. Assegurar que a Tool Chain está direccionada para MSP430, e então premir OK.

42

Page 43: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

5. Na caixa de diálogo genérica Save As que surge, especificar a localização do ficheiro de

projecto, ou seja, na recém criada directoria denominada projects. Atribua o nome

project1 (extensão do ficheiro .ewp) na caixa File name, e premir Save para criar o novo

projecto. O projecto aparecerá na janela do workspace:

Este exemplo faz uso dos ficheiros fonte: Tutor.c e Utilities.c.

- A aplicação Tutor.c é um programa simples que apenas faz uso da linguagem C.

Inicializa um array com os 10 primeiros números de Fibonacci e imprime o resultado

para stdout.

- A aplicação Utilities.c contém rotinas utilitárias para os cálculos dos números

de Fibonacci.

6. Na janela workspace, seleccionar o destino ao qual se pretende adicionar um ficheiro fonte.

Neste caso, directamente ao projecto. No caso de se pretender criar os ficheiros fonte de raiz,

escolher File>New e seleccionar Source/Text na caixa de diálogo New.

7. Seleccionar Project>Add Files para abrir uma caixa de diálogo de procura. Localizar os

ficheiros Tutor.c e Utilities.c, seleccioná-los na lista de selecção de ficheiros, e

premir Open para os adicionar ao projecto project1.

43

Page 44: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

8. Para definir a configuração do projecto, seleccionar a pasta com o icon do projecto

project1 - Debug na janela workspace seleccionar Project>Options. A página de opções

Target na categoria General Options será apresentada.

44

Page 45: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Será necessário indicar o dispositivo da família MSP430. Neste caso deverá ser seleccionado

o MSP430F449.

9. Seleccionar C/C++ Compiler na lista de Category para visualizar as páginas de opções do

compilador.

45

Page 46: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

10. Seleccionar Debugger na lista de Category para visualizar as páginas de opções. Neste

caso, quando se pretende realizar uma simulação sem ter ligado ao PC qualquer

microcontrolador é necessário seleccionar na lista Setup opção Simulator. Caso contrário,

quando se pretende enviar para o microcontrolador o ficheiro compilado deverá ser

seleccionada a opção FET Debugger. Após a especificação de todas as opções, premir OK.

11. De seguida deverá ser efectuada a compilação dos ficheiro fonte. Para compilar o ficheiro

Utilities.c, seleccionar na janela workspace Choose Project>Compile. O progresso da

operação será apresentado numa janela de Messages. Após, compilar o ficheiro Tutor.c do

mesmo modo.

Durante este processo, o IAR Embedded Workbench cria novas directorias na directoria do

projecto. É criada uma directoria Debug que contém as directorias List (ficheiros com

extensão .lst), Obj (ficheiros com extensão .r43), e Exe (ficheiros com extensão .d43).

46

Page 47: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

12. Seleccionar Project>Debug.

13. Neste momento poderão ser analisadas as declarações fonte em cada um dos ficheiros

fonte, inspeccionadas as variáveis ( View>Auto ), monitorizados os registos

( View>Register ), a memória ( View>Memory ), e até mesmo os terminais de entrada /

saída ( View>Terminal I/O ).

14. Para completar a execução da aplicação, seleccionar Debug>Go.

47

Page 48: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.7.3. CARACTERÍSTICAS DO MICROCONTROLADOR MSP430

6.7.3.1. Resets

O reset do sistema pode ser efectuado por meios de duas fontes: reset à alimentação (POR) e

limpeza de sinal (PUC). Distintos eventos podem accionar esses sinais de reset e as condições

de inicialização do sistema serão diferentes dependendo de qual o sinal de reset gerado.

O POR é um dispositivo de reset que apenas será gerado nas seguintes condições:

- Alimentação do dispositivo;

- Um sinal lógico baixo no pino RST/NMI, quando configurado em modo de reset;

- Uma condição lógica baixa SVS quando o registo PORON = 1.

Um PUC é sempre gerado quando um POR é gerado, no entanto o POR não poderá ser

gerado por um PUC. Os seguintes eventos despoletam um PUC:

- Um sinal POR;

- Expiração do sinal do temporizador WATCHDOG quando configurado no modo de

supervisão;

- Violação da chave de segurança do temporizador WATCHDOG;

- Violação da chave de segurança da memória FLASH.

6.7.3.2. CPU

O MSP430 pode processar instruções em bits ou em palavras. O CPU possui:

- Pipeline com três níveis de instruções;

- Descodificação de instruções;

- ALU (Arithmetic and Logic Unit) de 16 bits;

- 4 Registos de 16 bits de uso dedicado (R0, R1, R2 e R3);

- 12 Registos de 16 bits de trabalho (R4 a R15)

48

Page 49: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O CPU é ligado à memória por 2 busses, um de endereçamento e outro de dados. Toda a

memória (RAM, ROM, informação da memória, registos de funções especiais e os registos dos

periféricos) são mapeados num único espaço contíguo de endereçamento.

R0: Contador do programa (PC – Program Counter)

O contador do programa de 16 bits (PC/R0) aponta para a próxima instrução a ser executada.

Cada instrução faz uso de um número par de bytes (2, 4 ou 6) e o PC é incrementado de

acordo com o tamanho da instrução.

R1: Apontador da pilha (SP – Stack Pointer)

O apontador da pilha (SP/R1) é utilizado pela CPU para armazenar o endereço de retorno de

chamadas de subrotinas ou de interrupções. Adicionalmente, o SP pode ser utilizado pelo

código em todas as instruções e modos de endereçamento.

R2: Registo de estado (SR – Status Register)

O registo de estado (SR/R2) quando configurado como registo de saída ou de destino pode ser

unicamente utilizado no modo de registo endereçado por instruções dadas por palavras. As

restantes combinações de modos de endereçamento são utilizadas como suporte ao gerador de

constantes:

SR 15 9 8 7 0

Reservados V SCG1 SCG0 OSCOFF CPUOFF GIE N Z C

49

Page 50: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Bit Descrição 8 V Bit de Overflow

7 SCG1 Gerador 0 do sistema de relógio

SCG1 = 1 ⇒ DCO = 0

6 SCG0 Gerador 1 do sistema de relógio

SCG1 = 1 ⇒ FLL+ = 0

5 OSCOFF Desliga o oscilador

OSCOFF = 1 ⇒ LFXT1 = 0

4 CPUOFF Desliga o CPU

CPUOFF = 1 ⇒ CPU = 0

3 GIE Habilita as interrupções em geral

GIE = 1 ⇒ Habilita interrupções mascaráveis

2 N Bit negativo

N = 1 ⇒ Resultado de uma operação com bytes ou palavras é negativo

1 Z Bit nulo

Z = 1 ⇒ Resultado de uma operação com bytes ou palavras é nulo

0 C Bit de transporte (carry)

C = 1 ⇒ Resultado de uma operação com transporte de bits

R2 - R3: Geradores de constantes (CG1, CG2)

Com os registos geradores de constantes (R2 e R3) são geradas 6 constantes usualmente

utilizadas, sem que seja necessário recorrer a uma palavra adicional de 16 bits no código do

programa.

R4 – R15: Registos de uso geral

Os registos R4 a R15 são de uso geral e podem ser utilizados como registos de dados,

apontadores de endereços ou valores de índices. Todos eles podem ser acedidos por bytes ou

instruções em palavras.

50

Page 51: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.7.3.3. Temporizador WATCHDOG

O temporizador WATCHDOG é um temporizador de 16 bits que pode ser utilizado como

supervisor ou como temporizador de intervalos.

A função principal do módulo do temporizador WATCHDOG (WDT) é efectuar um restart

controlado do sistema após a ocorrência de um problema originado pelo software. Se o

intervalo temporal seleccionado expirar, é gerado um reset ao sistema. Se a função de

supervisão não for necessária numa aplicação, o módulo poderá ser configurado como um

temporizador de intervalos dedicado à geração de interrupções.

6.7.4. PORTOS DE ENTRADA/SAÍDA (INPUT/OUTPUT)

O MSP430 possui 6 portos de entrada/saída digitais (P1 a P6). Todos os portos são de 8 bits

(isto é, possuem 8 pinos de entrada/saída) e que podem ser configurados individualmente

como entrada ou saída.

Podem ser divididos em duas categorias:

- Com interrupções associadas: As interrupções podem ser geradas por estes portos (P1

e P2);

- Sem interrupções associadas: Os restantes (P3 a P6) são dedicados às unicamente às

funções de entrada/saída.

Ainda, os pinos dos portos podem ser configurados individualmente como funções especiais

de entrada/saída, tais como:

- Emissor/receptor universal síncrono/assíncrono (USART – Universal

Synchronous/Asynchronous Receive/Transmit);

- Sinais comparativos;

- Conversor Analógico/Digital.

- - ...

51

Page 52: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Independentemente do tipo de porto (com capacidade de interrupção), a configuração da

operação dos portos consiste na definição de vários registos:

PxIN: Registo de entrada

Cada bit de cada registo PxIN reflecte o valor do sinal de entrada no pino de entrada/saída

correspondente (quando o pino está configurado na função de entrada/saída):

Bit = 0 ⇒ A entrada encontra-se a nível lógico baixo.

Bit = 1 ⇒ A entrada encontra-se a nível lógico alto.

PxOUT: Registo de saída

Cada bit de cada registo PxOUT reflecte o valor do sinal de saída a colocar no pino de

entrada/saída correspondente (quando o pino está configurado na função de entrada/saída e na

direcção de saída):

Bit = 0 ⇒ A saída é colocada a nível lógico baixo.

Bit = 1 ⇒ A saída é colocada a nível lógico alto.

PxDIR: Registo de direcção

Cada bit de cada registo PxDIR selecciona a direcção do correspondente pino de

entrada/saída, independentemente da função seleccionada para esse pino:

Bit = 0 ⇒ O pino (porto entrada/saída) está seleccionado como entrada.

Bit = 1 ⇒ O pino (porto entrada/saída) está seleccionado como saída.

PxSEL: Registo de selecção da função

Os pinos dos portos de entrada/saída poderão ser multiplexados com funções de módulos de

periféricos. Cada bit de cada registo PxSEL é utilizado para seleccionar a função do

correspondente pino de entrada/saída:

Bit = 0 ⇒ O pino está configurado como porto de entrada/saída.

Bit = 1 ⇒ O pino está configurado como função de um módulo de um

qualquer periférico.

52

Page 53: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Ainda, adicionalmente as estes registos de configuração, os portos com capacidade de

interrupção (P1 e P2) requerem a definição de mais uns quantos registos:

P1IFG, P2IFG: Registo da flag de interrupção

Cada bit PxIFG é a flag de interrupção do seu correspondente pino de entrada/saída:

Bit = 0 ⇒ Não existe qualquer interrupção pendente.

Bit = 1 ⇒ Existe qualquer interrupção pendente.

P1IES, P2IES: Registo de selecção do bordo da interrupção

Cada bit PxIES selecciona o bordo de ocorrência da interrupção para o correspondente pino

de entrada/saída:

Bit = 0 ⇒ A interrupção surge na transição ascendente.

Bit = 1 ⇒ A interrupção surge na transição descendente.

P1IE, P2IE: Registo de habilitação das interrupções

Cada bit PxIE habilita a flag de interrupção correspondente PxIFG:

Bit = 0 ⇒ A interrupção é desabilitada.

Bit = 1 ⇒ A interrupção é habilitada.

Exemplo 1: Acender o led do kit OLIMEX – MSP430 449 - STK

// Conforme o Datasheet do kit da OLIMEX com o MSP430 449 – STK, o led do kit

// encontra-se ligado ao pino 8 do porto 5. Ainda, este acenderá quando o pino for

// configurado como saída e se encontrar a nível baixo.

# include <msp430x44x.h>

void main(void)

{

P5OUT = 0x00; // Colocar a saída do porto 5 a nível lógico baixo

P5DIR = 0x80; // Configurar o pino 8 do porto 5 como saída: pino 5.7

P5SEL = 0x00; // Seleccionar para o porto 5 a função de porto de entrada/saída

}

53

Page 54: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.7.4. RELÓGIOS E TEMPORIZADORES

6.7.4.1. Módulo de Relógio (FLL+)

O módulo de relógio de FLL+ (Frequency Locked Loop) suporta sistemas de baixo custo e de

reduzido consume energético. Fazendo uso de 3 sinais de relógio internos, o utilizador poderá

escolher o melhor compromisso entre desempenho e consumo energético. O FLL funciona em

conjunto com um modulador digital e estabiliza a frequência do oscilador interno controlado

digitalmente (DCO) a um valor múltiplo (programável) da frequência do cristal (LFXT1).

O módulo de relógio FLL+ pode ser configurado para funcionar sem qualquer componente

externo, com um ou dois cristais externos, ou com ressonantes.

Este módulo inclui 2 ou 3 fontes de relógio:

- LFXT1CLK: Oscilador de baixa frequência/alta-frequência, que pode ser utilizado

com cristais de baixa frequência ( 32768 Hz ), com cristais padrão, ressonantes ou

com fontes de relógio externas na gama de 450 kHz a 8 MHz.

- XT2CLK: Oscilador opcional de alta-frequência, que pode ser utilizado com cristais

padrão, ressonantes ou com fontes de relógio externas na gama de 450 kHz a 8 MHz.

- DCOCLK: Oscilador interno controlado digitalmente (DCO) com características RC,

estabilizado pela FLL.

Ainda, neste módulo encontram-se disponíveis 4 sinais de relógio:

- ACLK (Auxiliary Clock): O ACLK é a fonte de relógio do LFXT1CLK;

- ACLK/n: O ACLK/n consiste no ACLK dividido por 1, 2, 4 ou 8 e apenas pode ser

utilizado externamente;

- MCLK (Master Clock): O MCLK pode ser seleccionado por software como o

LFXT1CLK;

- XT2CLK ou DCOCLK: O MCLK pode ser dividido por 1, 2, 4 ou 8 no bloco da

FLL, sabendo que o MCLK é utilizado pela CPU e pelo sistema;

- SMCLK (SubMain Clock): O SMCLK ser seleccionado por software como o

XT2CLK ou como o DCOCLK.

54

Page 55: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O MCLK e o SMCLK fornecem a fonte de relógio ao DCOCLK a 32 vezes a frequência do

ACLK. Quando um cristal com 32768 Hz é utilizado para o ACLK, o MCLK e o SMCLK

irão estabilizar a 1,048576 MHz.

Os registos SCFQCTL, SCFI0, SCFI1, FLL_CTL0, e FLL_CTL1 configuram o módulo

de relógio FLL+ (Mais pormenores em “User’s guide – MSP430x44xx Family”).

6.7.4.2. Temporizador WATCHDOG

O módulo WDT pode ser configurado como supervisor ou como temporizador de intervalos

com o registo WDTCTL. Este registo também possui um bit de controlo que configura o pino

RST/NMI. O registo de leitura/escrita WDTCTL é de 16 bits, protegido com password.

O contador do temporizador WATCHDOG (WDTCNT) é um contador crescente de 16 bits

que não é acessível directamente pelo software. O controlo e os intervalos temporais são

seleccionados através do registo de controlo do temporizador WATCHDOG.

Este contador pode ter como fonte de relógio tanto o ACLK como o SMCLK, sendo

seleccionada a fonte pelo bit WDTSSEL.

Depois de uma condição PUC, o módulo WDT é configurado no modo de supervisão com um

intervalo inicial de reset de aproximadamente 32 ms fazendo uso do DCOCLK. O utilizador

deverá definir, parar ou limpar o WDT antes de expirar o intervalo inicial de reset senão

ocorrerá novo PUC.

O modo de temporizador de intervalos é definido colocando o bit WDTTMSEL a valor

lógico alto. Este modo pode ser utilizado para fornecer interrupções periódicas.

O modulo WDT fax uso de 2 bits nas SFRs para controlo das interrupções:

- A flag de interrupção do WDT, localizada no bit IFG1.0;

- O habilitador de interrupções do WDT, localizada no bit IE1.0.

55

Page 56: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

WDTCTL, Registo de controlo do temporizador WATCHDOG

15 8

Leitura como 0x69, WDTPW escrito como 0x5A

7 0

WDTHOLD WDTNMIES WDTNMI WDTTMSEL WDTCNTCL WDTSSEL WDTIS1 WDTIS0

Bit Descrição 7 WDTHOLD Paragem do temporizador WATCHDOG quando WDTHOLD = 1

6 WDTNMIES Selecciona o bordo da interrupção do NMI quando WDTNMI = 1

WDTNMIES = 0 ⇒ NMI no bordo ascendente

WDTNMIES = 1 ⇒ NMI no bordo descendente

5 WDTNMI Selecciona a função do pino RST/NMI

WDTNMI = 0 ⇒ Função de reset

WDTNMI = 1 ⇒ Função de NMI

4 WDTTMSEL Selecciona o modo do temporizador WATCHDOG

WDTTMSEL = 0 ⇒ Modo de supervisão

WDTTMSEL = 1 ⇒ Modo de temporização de intervalos

3 WDTCNTCL Limpeza do contador do temporizador WATCHDOG

WDTCNTCL = 0 ⇒ Sem acção

WDTCNTCL = 1 ⇒ Inicialização do contador a 0x00

2 WDTSSEL Selecciona a fonte de relógio do temporizador WATCHDOG

WDTSSEL = 0 ⇒ SMCLK

WDTSSEL = 1 ⇒ ACLK

1 e 0 WDTISx Selecciona o intervalo temporal do temporizador WATCHDOG

WDTIS1 WDTIS0 = 0 0 ⇒ Fonte de relógio / 32768

WDTIS1 WDTIS0 = 0 1 ⇒ Fonte de relógio / 8192

WDTIS1 WDTIS0 = 1 0 ⇒ Fonte de relógio / 512

WDTIS1 WDTIS0 = 1 1 ⇒ Fonte de relógio / 64

IE1, Registo 1 de habilitação de interrupções 7 0

WDTIE

56

Page 57: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Bit Descrição 0 WDTIE Habilita as interrupções ao temporizador WATCHDOG quando WDTIE = 1

IFG1, Registo 1 de indicação de interrupção 7 0

WDTIFG

Bit Descrição 0 WDTIFG Flag de interrupção ao temporizador WATCHDOG quando WDTIFG = 1

6.7.4.3. BASIC TIMER

O módulo do BASIC TIMER 1 é constituído por dois temporizadores de 8 bits independentes

(mas que poderão ser colocados em cascata de modo a formar um temporizador de 16 bits). O

BASIC TIMER 1 fornece a temporização do painel LCD e intervalos temporais de baixa

frequência.

Algumas das características do BASIC TIMER 1 incluem:

- Função de Relógio em tempo real (Real Time Clock – RTC);

- Incrementos temporais de software.

Com as capacidades de:

- Seleccionar a fonte de relógio;

- Temporização através de 2 temporizadores de 8 bits que podem ser colocados em

cascata;

- Promover interrupções;

- Geração do sinal de controlo do painel LCD.

Os registos do módulo do BASIC TIMER 1 não possuem condição inicial, pelo que deverão

ser configurados pelo utilizador.

57

Page 58: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O módulo do BASIC TIMER 1 poderá ser configurado como dois temporizadores de 8 bits ou

apenas um de 16 bits através do registo BTCTL. Ainda, a frequência dos frames do painel

LCD são controlados pelo contador 1 do BASIC TIMER 1 (BTCNT1). Trata-se de um

temporizador/contador de 8 bits acessível directamente pelo software. O BTCNT1 é

incrementado pelo ACLK e fornece a frequência dos frames para o controlador LCD,

podendo ser parado a partir dos bits BTHOLD e BTDIV.

O contador 2 do BASIC TIMER 1 (BTCNT2) possui as mesmas características que o

BTCNT1, mas poderá ter como fonte de relógio o ACLK ou o SMCLK, ou ainda o

ACLK/256 quando colocado em cascata com o BTCNT1, sendo a fonte de relógio

seleccionada pelos bits BTSSEL e BTDIV.

De modo a reduzir o consumo energético do dispositivo, o BTCNT2 quando não utilizado

poderá ser parado através da configuração do bit HOLD.

Este contador fornece a interrupção do BASIC TIMER 1 (BTIFG). O intervalo de

interrupção é seleccionado pelos bits BTIPx.

O controlador do painel LCD faz uso do sinal fLCD a partir do BTCNT1 para gerar a

temporização para as linhas comuns para os segmentos do painel LCD. Sendo o ACLK =

32768 Hz, a frequência do painel LCD poderá ser seleccionada pelos bits BTFRFQx, nas

seguintes condições: ACLK/256; ACLK/128; ACLK/64; ou ACLK/32.

A fLCD indicada dependerá da frequência dos frames do painel LCD e da taxa de

multiplexagem do painel LCD, calculada a partir de:

fLCD = 2 × mux × fframe

O BASIC TIMER 1 utiliza dois bits nas SFRs para controlo das interrupções:

- Indicação (flag) de interrupção do BASIC TIMER 1 (BTIFG) localizada em IFG2.7;

- Habilitação da interrupção do BASIC TIMER 1 (BTIE) localizada em IE2.7.

58

Page 59: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

BTCTL, Registo de controlo do temporizador BASIC TIMER 1

7 0

BTSSEL BTHOLD BTDIV BTFRFQ1 BTFRFQ0 BTIP2 BTIP1 BTIP0

Bit Descrição 7 BTSSEL Selecção da fonte de relógio do BTCNT2 em conjunto com o bit BTDIV

6 BTHOLD Paragem do BASIC TIMER 1

BTHOLD = 0 ⇒ BTCNT1 e BTCNT2 operacionais

BTHOLD = 1 ⇒ BTCNT1 parado, no caso de BTDIV = 1

BTHOLD = 1 ⇒ BTCNT1 e BTCNT2 parados

5 BTDIV Divisor da fonte de relógio do BASIC TIMER 1. Este bit em conjunto com o bit

BTSSEL selecciona a fonte de relógio do BTCNT2:

BTSSEL BTDIV = 0 0 ⇒ ACLK

BTSSEL BTDIV = 0 1 ⇒ ACLK/256

BTSSEL BTDIV = 1 0 ⇒ SMCLK

BTSSEL BTDIV = 1 1 ⇒ ACLK/256

4 e 3 BTFRFFQx Frequência do painel LCD:

BTFRFQ1 BTFRFQ0 = 0 0 ⇒ fACLK/32

BTFRFQ1 BTFRFQ0 = 0 1 ⇒ fACLK/64

BTFRFQ1 BTFRFQ0 = 1 0 ⇒ fACLK/128

BTFRFQ1 BTFRFQ0 = 1 1 ⇒ fACLK/256

2 a 0 BTIPX Intervalo de interrupções do BASIC TIMER 1

BTIP2 BTIP1 BTIP0 = 0 0 0 ⇒ fCLK2 / 2

BTIP2 BTIP1 BTIP0 = 0 0 1 ⇒ fCLK2 / 2

BTIP2 BTIP1 BTIP0 = 0 1 0 ⇒ fCLK2 / 4

BTIP2 BTIP1 BTIP0 = 0 1 1 ⇒ fCLK2 / 8

BTIP2 BTIP1 BTIP0 = 1 0 0 ⇒ fCLK2 / 32

BTIP2 BTIP1 BTIP0 = 1 0 1 ⇒ fCLK2 / 64

BTIP2 BTIP1 BTIP0 = 1 1 0 ⇒ fCLK2 / 128

BTIP2 BTIP1 BTIP0 = 1 1 1 ⇒ fCLK2 / 256

59

Page 60: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

BTCNT1, Contador 1 do BASIC TIMER 1

7 0

BTCNT1x

BTCNT2, Contador 2 do BASIC TIMER 1

7 0

BTCNT2x

IE2, Registo de habilitação da interrupção do BASIC TIMER 1

7 0

BTIE

Bit Descrição 7 BTIE Habilitação de interrupções ao BASIC TIMER 1 quando BTIE = 1

IFG2, Registo de indicação de interrupção do BASIC TIMER 1

7 0

BTIFG

Bit Descrição 7 BTIFG Indicação de interrupções pendentes ao BASIC TIMER 1 quando BTIFG = 1

60

Page 61: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Exemplo 2: Configurar o BASIC TIMER1 para funcionar com interrupções de 0,5 em

0,5 seg.

# include <msp430x44x.h>

void config_timer(void)

{

BTCTL = BTSSEL + BTDIV + BTFRFQ1 + BTFRFQ0 + BTIP2 + BTIP1 + BTIP0;

}

void interrupt(void)

{

#pragma vector = BASICTIMER_VECTOR // Definição do vector de interrupção ao

__interrupt void basic_timer(void) // BASIC TIMER1

}

void main(void)

{

config_timer(); // Chamada à rotina config_timer

interrupt(); // Chamada à rotina interrupt

WDTCTL = WDTPW + WDTHOLD; // Pára o temporizador WATCHDOG

FLL_CT0 = XCAP18PF; // Configuração da capacitância

IE2 |= BTIE; // Habilita interrupções ao BASIC TIMER1

for (;;)

{

_EINT(); // Habilita interrupção

_DINT(); // Desabilita interrupção

}

}

61

Page 62: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.7.4.4. TIMER_A

O temporizador/contador de 16 bits TIMER_A possui 3 ou 5 registos de captura/comparação,

podendo suportar múltiplas operações deste tipo, saídas PWM (Pulse Width Modulation) e

temporização de intervalos temporais.

Ainda, possui também capacidades de interrupção, que poderão ser geradas a partir da

condição de overflow do contador em cada um dos registos de captura/comparação.

As características do TIMER_A incluem:

- Temporizador/contador assíncrono de 16 bits com 4 modos de operação;

- Fonte de relógio seleccionável e configurável;

- 3 ou 5 registos de captura/comparação configuráveis;

- Saídas com capacidade PWM configuráveis;

- Gestão das entradas e saídas de modo assíncrono;

- Registo do vector de interrupção para descodificação rápida de todas as interrupções

do TIMER_A.

O registo de 16 bits do temporizador/contador, TAR, incrementa ou decrementa (dependendo

do modo de operação) com o bordo ascendente do sinal de relógio, com possibilidade de gerar

uma interrupção quando atinge o overflow. Este registo poderá ser limpo pelo bit TACLR,

que limpa adicionalmente o divisor da fonte de relógio e conta no modo direcção up/down.

O relógio do temporizador, TACLK, poderá ter como fonte o ACLK, o SMCLK ou

externamente a partir do TACLK ou INCLK, seleccionado a partir dos bits TASSELx. A

fonte de relógio seleccionada poderá ser utilizada directamente ou dividida por 2, 4 ou 8 com

base na configuração dos bits IDx.

O temporizador poderá ser iniciado ou reiniciado nas seguintes condições:

- O temporizador conta quando MCx > 0 e a fonte de relógio se encontra activa;

- Quando o modo de temporização se encontra em up ou up/down, o temporizador

poderá ser parado por configuração do bit TACCR0.

62

Page 63: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O temporizador apresenta 4 modos de funcionamento, seleccionados a partir da configuração

dos bits MCx (MC1 MC0):

MCx Modo Descrição 0 0 Stop O temporizador encontra-se em estado de paragem

0 1 Up O temporizador conta repetidamente de 0x00 ao valor do registo TACCR0

1 0 Continuos O temporizador conta repetidamente de 0x00 ao valor 0xFF

1 1 Up/down O temporizador conta repetidamente de 0x00 ao valor do TACCR0 e retoma a

contagem em sentido inverso.

No TIMER_A existem 3 ou 5 blocos de captura/comparação idênticos, TACCRx, podendo

qualquer um deles ser utilizado para capturar os dados do temporizador ou para gerar

intervalos temporais.

O modo de captura é seleccionado quando CAP = 1 de modo a gravar eventos temporais, tais

como tempos de cálculo computacional ou medidas de tempos.

As entradas de captura CCIxA e CCIxB são ligadas a pinos externos ou a sinais internos pela

selecção definida nos bits CCISx. Os bits MCx permitem seleccionar o bordo de captura do

sinal de entrada (ascendente, descendente, ou ambos). Quando uma captura ocorre:

- O valor do temporizador é copiado para o registo TACCRx;

- A indicação (flag) de interrupção CCIFG é activa.

O modo de comparação é seleccionado quando CAP = 0. Este modo é utilizado para gerar

saídas PWM ou interrupções em intervalos temporais específicos. Quando o TAR conta até

ao valor que se encontra no registo TACCRx:

- A indicação (flag) de interrupção é activa;

- Sinal interno EQUx = 1;

- Os registos EQUx afectam a saída de acordo com o modo de saída;

- O sinal de entrada CCI ligado no SCCI.

63

Page 64: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Os modos de saída são definidos nos bits OUTMODx

(OUTMOD2 OUTMOD1 OUTMOD0). O sinal OUTx é modificado com o bordo

ascendente do relógio do temporizador à excepção do modo 0.

OUTMODx Modo Descrição 0 0 0 Output O sinal de saída OUTx é definido pelo bit OUTx

0 0 1 Set A saída é activa quando o temporizador conta até ao valor do registo

TACCRx.

Permanece activa até que seja feito um reset ao temporizador ou até que

novo modo de saída seja seleccionado e afecte a saída.

0 1 0 Toggle/Reset A saída é alternada quando o temporizador conta até o valor do registo

TACCRx e passará a desactiva quando o temporizador conta até o valor do

registo TACCR0.

0 1 1 Set/Reset A saída é activa quando o temporizador conta até o valor do registo

TACCRx e o passará ao estado desactivo quando o temporizador conta até o

valor do registo TACCR0.

1 0 0 Toggle A saída é alternada quando o temporizador conta até o valor do registo

TACCRx. O período da saída é o dobro do período de tempo.

1 0 1 Reset A saída é desactiva quando o temporizador conta até ao valor do registo

TACCRx. Permanece nesse estado até que novo modo de saída seja

seleccionado e afecte a saída.

1 1 0 Toggle/Set A saída é alternada quando o temporizador conta até o valor do registo

TACCRx e é activa quando o temporizador conta até o valor do registo

TACCR0.

1 1 1 Reset/Set A saída está desactiva quando o temporizador conta até ao valor do registo

TACCRx e passará ao estado activo quando o temporizador conta até o

valor do registo TACCR0.

O módulo do TIMER_A possui dois vectores de interrupção associados:

- Vector de interrupção TACCR0 para TACCR0 - CCIFG;

- Vector de interrupção TAIV para as restantes flags CCIFG e para TAIFG;

64

Page 65: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

TACTL, Registo de controlo do TIMER_A

15 10 9 8

Não usados TASSEL1 TASSEL0

7 0

ID1 ID0 MC1 MC0 Não usado TACLR TAIE TAIFG

Bit Descrição 9 - 8 TASSELx Selecção da fonte de relógio do TIMER_A

TASSEL1 TASSEL0 = 0 0 ⇒ TACLK

TASSEL1 TASSEL0 = 0 1 ⇒ ACLK

TASSEL1 TASSEL0 = 1 0 ⇒ SMCLK

TASSEL1 TASSEL0 = 1 1 ⇒ INCLK

7 - 6 IDx Divisor da fonte de relógio seleccionada pelos bits TASSELx:

ID1 ID0 = 0 0 ⇒ / 1

ID1 ID0 = 0 1 ⇒ / 2

ID1 ID0 = 1 0 ⇒ / 4

ID1 ID0 = 1 1 ⇒ / 8

5 - 4 MCx Divisor da fonte de relógio seleccionada pelos bits TASSELx:

MC1 MC0 = 0 0 ⇒ Stop mode: O temporizador é parado

MC1 MC0 = 0 1 ⇒ Up mode: O temporizador conta até TACCR0

MC1 MC0 = 1 0 ⇒ Continuos mode: O temporizador conta até 0xFF

MC1 MC0 = 1 1 ⇒ Up/down mode: O temporizador conta até

TACCR0 e depois até 0x00

2 TACLR Limpeza do TIMER_A:

1 TAIE Habilitação de interrupções do TIMER_A quando TAIE = 1

0 TAIFG Indicação (flag) de interrupções pendentes do TIMER_A quando TAIFG = 1

TACCTLx, Registo de controlo da captura/comparação

15 8

CM1 CM0 CCIS1 CCIS0 SCS SCCI Não usado CAP

65

Page 66: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

7 0

OUTMOD2 OUTMOD1 OUTMOD0 CCIE CCI OUT COV CCIFG

Bit Descrição 15 - 14 CMx Modo de captura:

CM1 CM0 = 0 0 ⇒ Sem captura

CM1 CM0 = 0 1 ⇒ Captura no bordo ascendente

CM1 CM0 = 1 0 ⇒ Captura no bordo descendente

CM1 CM0 = 1 1 ⇒ Captura em ambos os bordos

13 - 12 CCISx Selecção da entrada de captura/comparação:

CCIS1 CCIS0 = 0 0 ⇒ CCIxA

CCIS1 CCIS0 = 0 1 ⇒ CCIxB

CCIS1 CCIS0 = 1 0 ⇒ GND

CCIS1 CCIS0 = 1 1 ⇒ Vcc

11 SCS Sincronização do modo de captura com a fonte de relógio:

SCS = 0 ⇒ Captura assíncrona

SCS = 1 ⇒ Captura síncrona

10 SCCI Sincronização da entrada de captura/comparação.

8 CAP Modo de captura seleccionado quando CAP = 1.

7 - 5 OUTMODx Modo de saída:

OUTMOD2 OUTMOD1 OUTMOD0 = 0 0 0 ⇒ bit OUT

OUTMOD2 OUTMOD1 OUTMOD0 = 0 0 1 ⇒ Set

OUTMOD2 OUTMOD1 OUTMOD0 = 0 1 0 ⇒ Toggle / Reset

OUTMOD2 OUTMOD1 OUTMOD0 = 0 1 1 ⇒ Set / Reset

OUTMOD2 OUTMOD1 OUTMOD0 = 1 0 0 ⇒ Toggle

OUTMOD2 OUTMOD1 OUTMOD0 = 1 0 1 ⇒ Reset

OUTMOD2 OUTMOD1 OUTMOD0 = 1 1 0 ⇒ Toggle / Set

OUTMOD2 OUTMOD1 OUTMOD0 = 1 1 1 ⇒ Reset / Set

4 CCIE Habilitação de interrupções captura/comparação quando CCIE = 1.

3 CCI Entrada de captura/comparação.

2 OUT Indica o estado da saída.

1 COV Overflow da captura quando COV = 1.

0 CCIFG Indicação (flag) de interrupções pendentes de captura/comparação para CCIFG = 1.

66

Page 67: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.7.4.5. TIMER_B

O modulo do TIMER_B é idêntico ao do TIMER_A à excepção de:

- O comprimento do TIMER_B é programável desde 8, 10, 12 ou 16 bits;

- Os registos TBCCRx do TIMER_B podem ser agrupados;

- Todas as saídas do TIMER_B podem ser colocadas num estado de alta impedância;

- A função do bit SCCI não se encontra implementada no TIMER_B.

6.7.5. INTERRUPÇÕES

Quanto mais próximo estiver o módulo da CPU/NMIRS, maior é a sua prioridade. A

prioridade das interrupções determina qual a interrupção é acudida quando mais do que uma

interrupção se encontra pendente simultaneamente.

Existem três tipos de interrupções:

- Reset do sistema;

- Interrupções não mascaráveis (NMI – Non Maskable Interrupts);

- Interrupções mascaráveis.

As interrupções não mascaráveis (NMI) não são mascaráveis pelo bit geral de habilitação de

interrupções (GIE), no entanto são habilitadas pelos bits individuais de habilitação de

interrupções (ACCVIE, NMIE, OFIE).

Quando uma interrupção NMI é aceite, todos os bits de habilitação de interrupções NMI são

automaticamente desabilitados. Este tipo de interrupção pode ser gerada por uma das

seguintes três fontes:

- Um bordo no pino RST/NMI quando configurado no modo NMI;

- Uma falta no oscilador;

- Uma violação de acesso à memória flash.

67

Page 68: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

As interrupções mascaráveis são causadas pelos periféricos com capacidade de interrupção,

incluindo overflow do temporizador WATCHDOG quando no modo de temporizador de

intervalo temporais. Cada fonte de interrupção mascarável pode ser desabilitada

individualmente por um bit de habilitação de interrupção, ou todas as interrupções

mascaráveis podem ser desabilitadas pelo bit geral de habilitação de interrupções (GIE) no

registo de estado (SR – Status Register).

Quando uma interrupção é pedida por um periférico e os bit de habilitação de interrupção do

periférico e o GIE estão activos, é solicitada um rotina de serviço de interrupção (ISR –

Interrupt Service Routine).

A latência de uma interrupção corresponde a 6 ciclos de relógio, iniciando com a aceitação do

pedido de interrupção, até ao início da execução da primeira instrução da rotina de serviço de

interrupção.

6.7.6. CONTROLADOR DO LCD

O controlador do LCD comanda directamente os painéis LCD pela geração de sinais de

tensão dos segmentos AC e comuns automaticamente. O controlador do LCD suporta painéis

LCD estáticos, com duas (2-mux), três (3-mux) ou quatro (4-mux) multiplexagens.

As características do controlador do LCD são:

- Memória do painel;

- Geração automática do sinal;

- Frequência dos frames configurável;

- Capacidade de “piscar”;

- Capacidade de suportar 4 tipos de painéis LCD: estáticos, com duas (2-mux), três (3-

mux) ou quatro (4-mux) multiplexagens;

O mapa da memória do LCD, dependendo do modo, impõe que cada bit de memória

corresponda a um segmento do LCD ou então não tem utilização. Acender um segmento do

LCD corresponde a activar o bit da memória correspondente.

68

Page 69: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O controlador de LCD faz uso do sinal fLCD do BASIC TIMER1 para gerar a temporização

das linhas comuns e dos segmentos. A frequência fLCD adequada depende das necessidades do

painel LCD para frequência dos frames e da taxa de multiplexagem do LCD.

A geração da temporização é realizada pelos bits FRFQx (FRFQ1 FRFQ0) do registo de

controlo do BASIC TIMER1 (BTCTL), tal que:

fLCD = ACLK / [ 32*(1 + FRFQ) ]

Ainda, pode ser configurado de acordo com a seguinte expressão:

fLCD = { taxa de multiplexagem } * { frequência dos frames }

As tensões requeridas pelos sinais do painel LCD são fornecidas externamente pelos pinos

R33, R23, R13 e R03.

69

Page 70: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Modo Estático

No modo estático, cada pino dos segmentos do MSP430 alimenta um segmento do painel

LCD e uma linha comum (COM0).

70

Page 71: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Modo 2-mux

No modo 2-mux, cada pino de segmento do MSP430 alimenta dois segmentos do painel LCD

e duas linhas comuns (COM0 e COM1).

71

Page 72: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Modo 3-mux

No modo 3-mux, cada pino de segmento do MSP430 alimenta três segmentos do painel LCD

e três linhas comuns (COM0, COM1 e COM2).

72

Page 73: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Modo 4-mux

No modo 4-mux, cada pino de segmento do MSP430 alimenta quatro segmentos do painel

LCD e todas as quatro linhas comuns (COM0, COM1, COM2 e COM3).

73

Page 74: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

LCDCTL, Registo de controlo do LCD

7 0

LCDP2 LCDP1 LCDP0 LCDMX1 LCDMX0 LCDSON Não usado LCDON

Bit Descrição 7 - 5 LCDPx Selecção dos portos do LCD:

LCDP2 LCDP1 LCDP0 = 0 0 0 ⇒ Não há pinos multiplexados

LCDP2 LCDP1 LCDP0 = 0 0 1 ⇒ S0 – S15

LCDP2 LCDP1 LCDP0 = 0 1 0 ⇒ S0 – S19

LCDP2 LCDP1 LCDP0 = 0 1 1 ⇒ S0 – S23

LCDP2 LCDP1 LCDP0 = 1 0 0 ⇒ S0 – S27

LCDP2 LCDP1 LCDP0 = 1 0 1 ⇒ S0 – S31

LCDP2 LCDP1 LCDP0 = 1 1 0 ⇒ S0 – S35

LCDP2 LCDP1 LCDP0 = 1 1 1 ⇒ S0 – S39

4 - 3 LCDMXx Selecção da taxa de multiplexagem do LCD:

LCDMX1 LCDMX0 = 0 0 ⇒ Estático

LCDMX1 LCDMX0 = 0 1 ⇒ 2 multiplexagens (2 – mux)

LCDMX1 LCDMX0 = 1 0 ⇒ 3 multiplexagens (3 – mux)

LCDMX1 LCDMX0 = 1 1 ⇒ 4 multiplexagens (4 – mux)

2 LCDSON Activação dos segmentos do LCD quando LCDSON = 1.

0 LCDON Activação do gerador de temporização do LCD e o R33 quando LCDON = 1.

É necessário ter em consideração que no caso do kit da OLIMEX, já que apenas é alimentado

pela porta paralela (5 mA) é possível que os segmentos do painel LCD não sejam todos

acessos simultaneamente. Para tal, é necessário colocar a fonte adicional de energia.

Para o kit OLIMEX MSP430F449-STK as memórias do painel LCD são distribuídas do

seguinte modo:

74

Page 75: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Digito 1 Descrição LCDM1 LCD Memory 1 ⇒ b a = 0x11

LCDM2 LCD Memory 2 ⇒ d c = 0x11

LCDM3 LCD Memory 3 ⇒ e f = 0x11

LCDM4 LCD Memory 4 ⇒ h g = 0x11

Para o Digito 2 serão utilizados do mesmo modo os registos LCDM5 a LCDM8.

Para o Digito 3 serão utilizados do mesmo modo os registos LCDM9 a LCDM12.

Para o Digito 4 que possui uma configuração totalmente diferente dos anteriores, a

configuração das memórias indica:

Digito 4 Descrição LCDM13 LCD Memory 13 ⇒ b a = 0x11

LCDM14 LCD Memory 14 ⇒ LOBAT = 0x11

LCDM15 LCD Memory 15 ⇒ c = 0x01

75

Page 76: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Exemplo 3: Acender o led do kit OLIMEX – MSP430 449 – STK por pressão do botão

B1 e desligá-lo por pressão do botão B2.Ainda, quando o led estiver ligado, no painel

LCD deverá surgir a palavra “ON” e em caso contrário “OFF”.

# include <msp430x44x.h>

void config_P5(void)

{

P5SEL = 0x00; // Seleccionar para o porto 5 a função de porto de entrada/saída

P5DIR = 0x80; // Configurar o pino 8 do porto 5 como saída

P5OUT = 0x80; // Colocar o pino 7 do porto 5 a nível “1”: led desligado

}

void config_led(void)

{

LCTCTL = LCDDON + LCDSON + LCDP0 + LCDP1; // Configuração do LCD

BTCTL = BTFRFQ1 + BTFRFQ0; // Configuração do BASIC TIMER1

}

void escrever_on(void)

{

int i;

char num [3][4] =

{

{ 0x00, 0x00, 0x00, 0x00 }, // 3º digito do LCD limpo “ “

{ 0x11, 0x11, 0x11, 0x00 }, // 2º digito do LCD limpo “O“

{ 0x11, 0x01, 0x11, 0x00 }, // 1º digito do LCD limpo “N“

}

for (i=0;i<4,i++)

{

LCDMEM[i]=num[2][i]; // 1º digito: num[2] = ( )

LCDMEM[i+4]=num[1][i]; // 2º digito: num[1] = (O)

LCDMEM[i+8]=num[0][i]; // 3º digito: num[0] = (N)

}

}

76

Page 77: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

void escrever_off(void)

{

int i;

char num [3][4] =

{

{ 0x11, 0x11, 0x11, 0x00 }, // 3º digito do LCD limpo “O“

{ 0x11, 0x00, 0x11, 0x01 }, // 2º digito do LCD limpo “F“

{ 0x11, 0x00, 0x11, 0x01 }, // 1º digito do LCD limpo “F“

}

for (i=0;i<4,i++)

{

LCDMEM[i]=num[2][i]; // 1º digito: num[2] = (F)

LCDMEM[i+4]=num[1][i]; // 2º digito: num[1] = (F)

LCDMEM[i+8]=num[0][i]; // 3º digito: num[0] = (O)

}

}

void main(void)

{

int v;

WDTCTL = WDTPW + WTHOLD // Pára o temporizador WATCHDOG

config_P5(); // Chamada à rotina config_P5

config_led(); // Chamada à rotina config_led

for (;;)

{

v = P5IN & 0x3C; // O valor de v fica restricto aos botões de

if (v != 0x3C) { // pressão localizados do pino 5.2 ao pino 5.5

if (v != 0x38) {

escrever_on(); // Chamada à rotina escrever_on

P5OUT &= ~BIT7 // Negação do pino 7 do porto 5: led ligado

}

if (v ==0x34) {

escrever-off(); // Chamada à rotina escrever_off

P5OUT |= BIT7; // Activação do pino 7 do porto 5: led ligado

}

}

}

}

77

Page 78: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.7.7. CONVERSOR ANALÓGICO/DIGITAL

O módulo do conversor analógico/digital (ADC12) efectua conversões A/D de 12 bits. Este

módulo implementa um núcleo de 12 bits, controlo de selecção de amostra, geração de

referência e um buffer de conversão e controlo de 16 palavras. Este buffer permite a

conversão de até 16 amostras independentes, bem como o seu armazenamento sem qualquer

intervenção da CPU.

As suas características principais são:

- Taxa de conversão máxima superior a 200.000 amostras por segundo;

- Conversor de 12 bits monotónico sem falhas de código;

- Amostrador / Retentor com períodos de amostragem programáveis controlados por

software ou temporizadores;

- Inicio de conversão por software, TIMER_A ou TIMER_B;

- Geração de tensão de referência (1,5 V ou 2,5 V) seleccionável por software;

- Referência interna ou externa seleccionável por software;

- 8 canais de entrada externos configuráveis individualmente;

- Canais de conversão para o sensor de temperatura interno, AVCC, e referências

externas;

- Canais independentes e seleccionáveis para as fontes de referência (positivas e

negativas);

- Fonte de relógio de conversão seleccionável;

- Modos de conversão: Canal único (single-channel); Repetição de canal único (repeat-

single-channel); sequência (sequence); e Repetição de sequência (repeat-sequence);

- Alimentação do núcleo do conversor A/D e as tensões de referência poderão ser

separadas;

- Registo do vector de interrupção para rápida descodificação das 18 interrupções do

conversor A/D;

- 16 registos de armazenamento do resultado da conversão.

78

Page 79: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O núcleo do conversor A/D de 12 bits converte uma entrada analógica para a sua

representação em palavra digital de 12 bits, armazenando o resultado na memória de

conversão. O núcleo faz uso de dois níveis de tensão programáveis e seleccionáveis ( VR+ e

VR-) para definir os limites superior e inferior de conversão, respectivamente. A saída digital

(NADC) apresenta a escala máxima (0xFF) quando o sinal de entrada é igual ou superior a VR+

e zero (0x00) quando o sinal de entrada é igual ou inferior a VR-. O canal de entrada e as

tensões de referência são definidas na memória de controlo da conversão.

O núcleo do ADC12 é configurado através de dois registos de controlo, ADC12CTL0 e

ADC12CTL1, sendo habilitado pelo bit ADC12ON.

O ADC12CLK é utilizado como relógio de conversão e para gerar o período de amostragem

quando é seleccionado o modo de amostragem por pulsos. A fonte de relógio do ADC12 é

seleccionada pelos bits ADC12SSELx, podendo ser dividida de 1 a 8 pela configuração dos

bits ADC12DIVx. As fontes de relógio possíveis são: SMCLK, MCLK, ACLK, e o

oscilador interno ADC12OSC (5 MHz)

Os 8 sinais externos e 4 sinais internos analógicos são seleccionados como o canal para

conversão pelo multiplexador analógico.

As entradas do ADC12 são multoplexadas com os pinos do porto P6 (portas digitais CMOS).

O módulo do ADC12 contém uma referência em tensão com dois níveis seleccionáveis: 1,5 V

(REFON = 1 e REF2_5V = 0) e 2,5 V (REFON = 1 e REF2_5V = 1).

A conversão analógica/digital é iniciada com o bordo ascendente do sinal de entrada

amostrado SHI. A fonte para o SHI é seleccionada pelos bits SHSx tal que:

- Bit ADC12SC;

- TIMER_A Output Unit 1;

- TIMER_A Output Unit 0;

- TIMER_B Output Unit 1.

79

Page 80: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

A polaridade da fonte de sinal SHI pode ser invertida com o bit ISSH, enquanto que o sinal

SAMPCON controla o período de amostragem e o início da conversão.

Existem 16 registos de memória de conversão (ADC12MEMx) para armazenar os resultados

das conversões. Cada um destes registos é configurado pelo registo de controlo

ADC12MCTLx associado. Os bits SREFx definem a referência em tensão e os bits INCHx

seleccionam o canal de entrada. O bit EOS define o final de sequência quando o modo

sequencial de amostragem/conversão é seleccionado. Os bits CSTARTADDx definem qual o

primeiro registo de memória que será utilizado para guardar o valor da conversão.

O modo de conversão do ADC12 é configurado pelos bits CONSEQx:

CONSEQx Modo Descrição 0 0

Single-channel Single-conversion A grandeza analógica presente num único canal é

convertida uma única vez.

0 1 Sequence-of-channels

As grandezas analógicas presentes numa sequência de

canais são convertidas uma única vez.

1 0 Repeat-single-channel

A grandeza analógica presente num único canal é

convertida repetidamente.

1 1 Repeat-sequence-of-channel

As grandezas analógicas presentes numa sequência de

canais são convertidas repetidamente.

As conversões poderão ser terminadas da seguinte maneira dependendo do modo de

conversão seleccionado:

- Modo Single-channel single-conversion: Reset ao bit ENC termina a conversão

imediatamente;

- Modo Repeat-single-channel: Reset ao bit ENC termina a conversão no

final da conversão actual;

- Modo Sequence-of-channels: Reset ao bit ENC termina a conversão no

final da conversão da sequência;

- Modo Repeat-sequence-of-channels: Igual ao anterior.

80

Page 81: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

O ADC12 possui 18 fontes de interrupção:

- ADC12IFG0 - ADC12IFG15;

- ADC12OV, Overflow dos registos ADC12MEMx;

- ADC12TOV, Overflow do tempo de conversão do ADC12.

Todas as fontes de interrupção do ADC12 são prioritárias e combinadas de modo a gerar um

único vector de interrupção. O registo do vector de interrupção ADC12IV é utilizado para

determinar qual a fonte de interrupção habilitada solicitou um interrupção.

ADC12CTL0, Registo de controlo 0 do ADC12

15 8

SHT13 SHT12 SHT11 SHT10 SHT03 SHT02 SHT01 SHT00

7 0

MSC REF2_5V REFON ADC12ON ADC12OVIE ADC12TOVIE ENC ADC12SC

Bit Descrição 15 - 12 SHT1x Tempo de Amostragem / Retenção. Estes bits definem o número de ciclos do

ADC12CLK do período de amostragem para ADC12MEM8 a ADC12MEM15.

11 - 8 SHT0x Tempo de Amostragem / Retenção. Estes bits definem o número de ciclos do

ADC12CLK do período de amostragem para ADC12MEM0 a ADC12MEM7.

Bits SHTx Ciclos do ADC12CLK

0 0 0 0 ⇒ 4

0 0 0 1 ⇒ 8

0 0 1 0 ⇒ 16

0 0 1 1 ⇒ 32

0 1 0 0 ⇒ 64

0 1 0 1 ⇒ 96

0 1 1 0 ⇒ 128

0 1 1 1 ⇒ 192 1 0 0 0 ⇒ 256

1 0 0 1 ⇒ 384

1 0 1 0 ⇒ 512

81

Page 82: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

1 0 1 1 ⇒ 768 1 1 0 0 ⇒ 1024

1 1 0 1 ⇒ 1024

1 1 1 0 ⇒ 1024

1 1 1 1 ⇒ 1024

7 MSC Amostragem e conversão múltipla apenas válido para os modos em sequência ou

modos de repetição de conversão.

MSC = 0 ⇒ O temporizador de amostragem requer um bordo

ascendente no sinal SHI para despoletar cada

amostragem e conversão.

MSC = 1 ⇒ O primeiro bordo ascendente do sinal SHI

despoleta o temporizador de amostragem e as

seguintes amostragens e conversões são

realizadas automaticamente logo que a anterior

tenha terminado.

6 REF2_5V Gerador de tensão de referência que requer que o bit REFON esteja activo:

REF2_5V = 0 ⇒ 1,5 V

REF2_5V = 1 ⇒ 2,5 V

5 REFON Habilita o gerador de tensão de referência quando REFON = 1.

4 ADC12ON Habilita o ADC12 quando ADC12ON = 1.

3 ADC12OVIE Habilita as interrupções por overflow dos registos ADC12MEMx, requerendo que o

bit GIE esteja activo.

2 ADC12TOVIE Habilita as interrupções por overflow do tempo de amostragem/conversão,

requerendo que o bit GIE esteja activo.

1 ENC Habilita a conversão quando ENC = 1.

0 ADC12SC Inicia a conversão quando ADC12SC = 1

ADC12CTL1, Registo de controlo 1 do ADC12

15 8

CSTARTADD3 CSTARTADD2 CSTARTADD1 CSTARTADD0 SHS1 SHS0 SHP ISSH

7 0

ADC12DIV2 ADC12DIV1 ADC12DIV0 ADC12SSEL1 ADC12SSEL0 CONSEQ1 CONSEQ0 ADC12BUSY

82

Page 83: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Bit Descrição 15 – 12 CSTARTADDx Endereço de inicio de conversão: ADC12MEM0 = 0x00 ⇒ ADC12MEM15 =

0x0F

11 – 10 SHSx Selecção da fonte de amostragem e retenção:

SHS1 SHS0 = 0 0 ⇒ bit ADC12SC

SHS1 SHS0 = 0 1 ⇒ TIMER_A Output Unit 1

SHS1 SHS0 = 1 0 ⇒ TIMER_A Output Unit 0

SHS1 SHS0 = 1 1 ⇒ TIMER_B Output Unit 1

9 SHP Selecção do modo de pulsos de amostragem e retenção:

SHP = 0 ⇒ O sinal SAMPCON é dado pelo sinal de

entrada amostrado

SHP = 1 ⇒ O sinal SAMPCON é dado pelo

temporizador de amostragem.

8 ISSH Inversão do sinal de amostragem / retenção quando ISSH = 1.

7 – 5 ADC12DIVx Divisor do relógio do ADC12:

ADC12DIV2 ADC12DIV1 ADC12DIV0 = 0 0 0 ⇒ / 1

ADC12DIV2 ADC12DIV1 ADC12DIV0 = 0 0 1 ⇒ / 2

ADC12DIV2 ADC12DIV1 ADC12DIV0 = 0 1 0 ⇒ / 3

ADC12DIV2 ADC12DIV1 ADC12DIV0 = 0 1 1 ⇒ / 4

ADC12DIV2 ADC12DIV1 ADC12DIV0 = 1 0 0 ⇒ / 5

ADC12DIV2 ADC12DIV1 ADC12DIV0 = 1 0 1 ⇒ / 6

ADC12DIV2 ADC12DIV1 ADC12DIV0 = 1 1 0 ⇒ / 7

ADC12DIV2 ADC12DIV1 ADC12DIV0 = 1 1 1 ⇒ / 8

4 – 3 ADC12SSELx Selecção da fonte de relógio do ADC12:

ADC12SSEL1 ADC12SSEL0 = 0 0 ⇒ ADC12OSC

ADC12SSEL1 ADC12SSEL0 = 0 1 ⇒ ACLK

ADC12SSEL1 ADC12SSEL0 = 1 0 ⇒ MCLK

ADC12SSEL1 ADC12SSEL0 = 1 1 ⇒ SMCLK

2 – 1 CONSEQx Selecção do modo de conversão do ADC12:

CONSEQ1 CONSEQ0 = 0 0 ⇒ Single-channel, single-conversion

CONSEQ1 CONSEQ0 = 0 1 ⇒ Repeat-single-channel

CONSEQ1 CONSEQ0 = 1 0 ⇒ Sequence-of-channels

CONSEQ1 CONSEQ0 = 1 1 ⇒ Repeat-sequence-of-channel

0 ADC12BUSY Se uma sequência, amostragem ou conversão está activa ADC12BUSY = 1.

83

Page 84: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.8. Bibliografia

Aurélio Campilho, “Instrumentação Electrónica – Métodos e Técnicas de Medição”, FEUP

Edições, 2000.

Albert D. Helfrick, William D. Cooper, “Instrumentação Electrónica Moderna e Técnicas de

Medição”, Prentice Hall do Brasil, 1994.

G. Asch, “Acquisition de données – Du capteur à l’ordinateur”, Dunod, 1999.

IAR Systems, “MSP430 IAR Embedded Workbench™ IDE User Guide for Texas

Instruments’ MSP430 Microcontroller Family”, IAR Systems, 2004.

Larry D. Jones, A. Foster Chin, “Electronic Instruments and Measurements – 2sd edition”,

Prentice Hall – International Editions, 1991.

Texas Instruments, “User’s guide – MSP430x44xx Family”, Mixed Signal Products, 2004.

Chris Nagy, “Embedded Systems Design using the TI MSP430 Series”, Embedded

Technology Series, Newnes, Elsevier Science, 2003.

84

Page 85: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

6.9. Anexos

Datasheet KIT OLIMEX MSP430F449 - STK

85

Page 86: CAPÍTULO 6 ELEMENTOS DA CADEIA DE …webx.ubi.pt/~dinis/IM/im_cap06_cadeia.pdf · amplificador diferencial. 11 . Universidade da Beira I Instrumentaçnterior ão e Medida Elementos

Instrumentação e Medida Universidade da Beira Interior Elementos da Cadeia de Aquisição de Dados

Datasheet KIT OLIMEX MSP430F449 – STK2

86