Módulo Oscilador DCO (migrado)

Cassi Jones
Aprendiz
Brazil
70 Posts Posted - 21/01/2006 : 02:03:04
--------------------------------------------------------------------------------
Galera,
eu tô migrando do 8051 para o MSP430, então comprei o livro do Fábio Pereira, mas estou com algumas dúvidas sobre o clock do MSP que afinal é muito flexível e quanto mais flexível mais registradores para se preocupar.
Vou listar algumas dúvidas aqui.
1 - Escolhi o DCO para ser o meu MCLK e o LFXT1 para o SMCLK, acredito que não devo me preocupar durante o POR com a estabilização do oscilador, já que a minha CPU está operando via DCO. É isso mesmo ou estou enganado? Caso tivesse escolhido o XT2 como o MCLK, eu teria que me preocupar em verificar se a oscilação já está estável, ou verificar alguma flag como o OFIFG? Isso realmente eu não entendi ainda.
2 - Na página 134 do livro do Fábio existe um exemplo para configuração do clock e este dá o seguinte exemplo:
DCOCTL = 0xE0;
BCSCTL1 = 0x87;
BCSCTL2 = 0x01;
e diz, podemos usar símbolos definidos no cabeçalho.
DCOCTL = DCO2+DCO1+DCO0+MOD4; ???????? Isso não seria 0xF0
BCSCTL1 = XT2OFF+RSEL2+RSEL1+RSEL0;
BCSCTL2 = DCOR;
A configuração por símbolos, o MOD4 foi um erro de digitação ou eu não entendi a configuração (comparando os dois DCOCTL)? Eu imagino que não seja erro de digitação não, pois na mesma página existe outro exemplo.
DCOCTL = 0x9B;
BCSCTL1 = 0x87;
BCSCTL2 = 0x00;
e diz, podemos usar símbolos definidos no cabeçalho.
DCOCTL = DCO2+MOD4+MOD3+MOD2; ???????? Isso não seria 0x9C?
BCSCTL1 = XT2OFF+RSEL2+RSEL1+RSEL0;
BCSCTL2 = 0x00;
Parabenizo o Fábio pela qualidade do livro criado, explorando desde o compilador a todos os periféricos com exemplos. Valeu Fábio, você é gente que faz!
Um abraço,
Cassi Jones
MSN:cassi__jones@hotmail.com (2 underlines)
e-mail:andretahim@gmail.com
"A satisfação está no esforço envolvido e não apenas na realização final" Gandhi
Fabio Pereira
Conselheiro
Brazil
2205 Posts Posted - 23/01/2006 : 09:02:20
--------------------------------------------------------------------------------
Olá Cassi Jones,
Agradeço os elogios ao livro. Realmente, o livro foi fruto de um árduo trabalho e que me orgulho muito.
Com relação ao sistema de clock do MSP, realmente o mesmo é extremamente flexível. Respondendo as suas questões:
1- Você deverá preocupar-se com a estabilização do oscilador somente se pretender utilizar um periférico logo após o reset do MCU. Neste caso, é importante verificar o flag OFIFG, de forma a determinar que a fonte de clock externa está estável;
2- Realmente, os códigos dos exemplos não são idênticos. A soma dos símbolos DCO2+DCO1+DCO0+MOD4 resulta em 0xF0 e não 0xE0 como se poderia presumir pelo texto. O símbolo MOD4 deve ser suprimido naquela linha de forma a manter o sentido do texto. Da mesma forma o último exemplo da página deve ser: DCO2+MOD4+MOD3+MOD1+MOD0;
Até +
Fábio Pereira
ScTec - Automação e Projetos Especiais
www.sctec.com.br
Aprendiz
Brazil
70 Posts Posted - 21/01/2006 : 02:03:04
--------------------------------------------------------------------------------
Galera,
eu tô migrando do 8051 para o MSP430, então comprei o livro do Fábio Pereira, mas estou com algumas dúvidas sobre o clock do MSP que afinal é muito flexível e quanto mais flexível mais registradores para se preocupar.
Vou listar algumas dúvidas aqui.
1 - Escolhi o DCO para ser o meu MCLK e o LFXT1 para o SMCLK, acredito que não devo me preocupar durante o POR com a estabilização do oscilador, já que a minha CPU está operando via DCO. É isso mesmo ou estou enganado? Caso tivesse escolhido o XT2 como o MCLK, eu teria que me preocupar em verificar se a oscilação já está estável, ou verificar alguma flag como o OFIFG? Isso realmente eu não entendi ainda.
2 - Na página 134 do livro do Fábio existe um exemplo para configuração do clock e este dá o seguinte exemplo:
DCOCTL = 0xE0;
BCSCTL1 = 0x87;
BCSCTL2 = 0x01;
e diz, podemos usar símbolos definidos no cabeçalho.
DCOCTL = DCO2+DCO1+DCO0+MOD4; ???????? Isso não seria 0xF0
BCSCTL1 = XT2OFF+RSEL2+RSEL1+RSEL0;
BCSCTL2 = DCOR;
A configuração por símbolos, o MOD4 foi um erro de digitação ou eu não entendi a configuração (comparando os dois DCOCTL)? Eu imagino que não seja erro de digitação não, pois na mesma página existe outro exemplo.
DCOCTL = 0x9B;
BCSCTL1 = 0x87;
BCSCTL2 = 0x00;
e diz, podemos usar símbolos definidos no cabeçalho.
DCOCTL = DCO2+MOD4+MOD3+MOD2; ???????? Isso não seria 0x9C?
BCSCTL1 = XT2OFF+RSEL2+RSEL1+RSEL0;
BCSCTL2 = 0x00;
Parabenizo o Fábio pela qualidade do livro criado, explorando desde o compilador a todos os periféricos com exemplos. Valeu Fábio, você é gente que faz!
Um abraço,
Cassi Jones
MSN:cassi__jones@hotmail.com (2 underlines)
e-mail:andretahim@gmail.com
"A satisfação está no esforço envolvido e não apenas na realização final" Gandhi
Fabio Pereira
Conselheiro
Brazil
2205 Posts Posted - 23/01/2006 : 09:02:20
--------------------------------------------------------------------------------
Olá Cassi Jones,
Agradeço os elogios ao livro. Realmente, o livro foi fruto de um árduo trabalho e que me orgulho muito.
Com relação ao sistema de clock do MSP, realmente o mesmo é extremamente flexível. Respondendo as suas questões:
1- Você deverá preocupar-se com a estabilização do oscilador somente se pretender utilizar um periférico logo após o reset do MCU. Neste caso, é importante verificar o flag OFIFG, de forma a determinar que a fonte de clock externa está estável;
2- Realmente, os códigos dos exemplos não são idênticos. A soma dos símbolos DCO2+DCO1+DCO0+MOD4 resulta em 0xF0 e não 0xE0 como se poderia presumir pelo texto. O símbolo MOD4 deve ser suprimido naquela linha de forma a manter o sentido do texto. Da mesma forma o último exemplo da página deve ser: DCO2+MOD4+MOD3+MOD1+MOD0;
Até +
Fábio Pereira
ScTec - Automação e Projetos Especiais
www.sctec.com.br