MSP430 – Osciladores e Clock – Parte III


Bem-vindo a terceira parte da teoria e prática referente a osciladores e clock no MSP430. Se você ainda não conferiu, sugiro que dê uma olhada nos dois artigos anteriores, já que serão importantes para acompanhar a continuidade desta aula:

 

MSP430 – Osciladores e Clock Parte I

MSP430 – Osciladores e Clock Parte II

 

Código

 

Considerações

Não irei comentar sobre os comandos de programação que já foram utilizados nas partes I e II, pois, considerações sobre estas já foram feitas anteriormente. Portanto vamos voltar nossa atenção para as alterações ou as novas linhas de programação deste novo código.

 

if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF)                                     
{   while(1);  }

Aqui entra um novo conceito que comentamos superficialmente na primeira aula sobre esse assunto. A Texas fornece dados que são armazenados diretamente no chip na memória flash. Esses dados são basicamente informações relativas a uma calibração precisa referente a uma determinada frequência.

Entre outras palavras temos então valores predefinidos, que no caso são chamados como CALBC1_1MHZ e CALDCO_1MHZ. Como são valores gravados na memória flash, o que a estrutura no código faz é basicamente verificar se realmente esses valores estão lá, e não apagados. Caso os valores não estejam lá o programa fica preso em um loop infinito. Ou seja é uma rotina de verificação dos dados.

 

BCSCTL1 = CALBC1_1MHZ;
DCOCTL = CALDCO_1MHZ;

Após a verificação, estando tudo certo o programa continua sua execução. Através dos comandos acima, setamos a configuração de acordo com a frequência pretendida. Veja na figura abaixo, retirada da página 30 do datasheet do Msp430g2553. Na tabela você pode ver outras configurações.

 

DatasheetMsp430G2553

Figura 1 – Tabela Datasheet Msp430G2553

 

BCSCTL2 |= SELM_0 + DIVM_3;

Com SELM_0 estamos selecionando DCOCLK como fonte para MCLK, valor 00b para os bits 7-6. Soma-se a isso DIVM_3 que é o valor 11b para os bits 5-4, divisor do clock por 8. Veja na figura abaixo:

RegisterBCSCTL2

Figura 2 – Registrador BCSCTL2

 

As outras linhas de programação, envolvendo os demais registradores, são as mesmas utilizadas nos dois artigos anteriores, então se não viu, não deixe de conferir.

 

Prática

 

 

Desta forma, concluímos essa abordagem sobre os osciladores e o sistema de clock no MSP430. Com os exemplos envolvidos nestes três artigos, você já é capaz de desenvolver seu projeto configurando os registradores conforme o seu agrado. Até a próxima!

 

Inscreva-se para ficar atualizado!

Inscreva-se agora e fique por dentro das novidades do site

Fique tranquilo, respeitamos sua privacidade!

Deixe um comentário

O seu endereço de e-mail não será publicado.