新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > MSP430學(xué)習(xí)筆記(3)時鐘模塊

MSP430學(xué)習(xí)筆記(3)時鐘模塊

作者: 時間:2016-11-27 來源:網(wǎng)絡(luò) 收藏
1.時鐘模塊包括高速晶體振蕩器、低俗晶體振蕩器、數(shù)字控制振蕩器DCO、鎖頻環(huán)FLL以及鎖頻環(huán)增強(qiáng)版本FLL+等部件構(gòu)成。

2.時鐘模塊產(chǎn)生3個輸出結(jié)果:ACLK(輔助時鐘),MCLK(主系統(tǒng)時鐘)和SMCLK(子系統(tǒng)時鐘)。

本文引用地址:http://butianyuan.cn/article/201611/322337.htm

3.MSP430采用鎖頻環(huán)FLL以及鎖頻環(huán)增強(qiáng)版本FLL+等部件將晶體頻率倍頻至系統(tǒng)頻率。數(shù)字控制振蕩器DCO和鎖頻環(huán)FLL計數(shù)相結(jié)合可實現(xiàn)快速啟動。在晶體振蕩器失效時DCO可自動用于系統(tǒng)時鐘。

4.3個時鐘輸入源:

a)LFXT1CLK:低頻時鐘源

b)XT2CLK:高頻時鐘源

c)DCOCLK:數(shù)字控制RC振蕩器

5.3種時鐘信號

a)ACLK:由LFXT1CLK信號經(jīng)1、2、4、8分頻后得到。ACLK可由軟件選做各外圍模塊的時鐘信號,一般用于低俗外設(shè)。

b)MCLK:由軟件選擇來自LFXT1CLK、XT2CLK、DCOCLK,然后經(jīng)過1、2、4、8分頻得到。MCLK主要用于CPU和系統(tǒng)。

c)SMCLK:可由軟件選擇來自LFXT1CLK和DCOCLK,然后經(jīng)過1、2、4、8分頻得到。SMCLK主要用于高速外圍模塊。

6.低速晶體振蕩模塊LFXT1

a)接手表晶振(32768Hz)時直接接在XIN和XOUT兩個腳上,不需要其他外部器件,所有保持工作穩(wěn)定的原件和移相電容都集成在芯片中。

b)也可通過外接450kHz~8MHz的高速晶體振蕩器來工作在高頻模式,這時兩個引腳要外接電容。

7.高速晶體振蕩器XT2

a)MSP430外接高速晶體振蕩器XT2的頻率為450kHz~8MHz。

8.DCO振蕩器

a)當(dāng)LFXT1和XT2失效時,DCO振蕩器會自動被選作MCLK的時鐘源。振蕩器失效引起的NMI中斷請求可以得到響應(yīng),甚至在CPU關(guān)閉的情況下也可以。

b)DCO振蕩器是一個可數(shù)字控制的RC振蕩器,它的頻率隨供電電壓和溫度變化而具有一定的不穩(wěn)定性。MSP430可以通過操作控制寄存器軟件調(diào)節(jié)來增強(qiáng)振蕩頻率的穩(wěn)定性。

9.時鐘模塊寄存器

a)DCO控制寄存器DCOCTL

i.DCOx:定義8種頻率之一,可分段調(diào)節(jié)DCOCLK的頻率,相鄰兩頻率相差10%。而頻率由注入直流發(fā)生器的電流定義。(默認(rèn)為3)。

ii.MODx:定義在32個DCO周期中插入的fdco+1的個數(shù),而在余下的DCO周期中為fdco周期,控制切換DCO和DCO+1兩種頻率。如果DCO常數(shù)為7,表示已經(jīng)選擇最高頻率,此時不能利用MODx進(jìn)行頻率調(diào)整。

b)基本時鐘系統(tǒng)控制寄存器1 BCSCTL1

i.XT2OFF: 0使XT2開啟,1使XT2關(guān)閉。(默認(rèn)關(guān)閉)

ii.XTS:控制LFXT1的工作模式,選擇須結(jié)合實際晶體振蕩器的連接情況。為0時工作在低頻,為1時工作在高頻。(默認(rèn)為低頻,在高頻時必須連接相應(yīng)的高頻時鐘源)。

iii.DIVAx:控制ACLK分頻。0為不分頻,1為2分頻,2為4分頻,3為8分頻。(默認(rèn)不分頻)。

iv.XT5V:此位設(shè)置為0。

v.RSELx:3位控制某個內(nèi)部電阻以決定標(biāo)稱頻率。為0為最低,依次增加,7為最高。(默認(rèn)為4。)(由DCO默認(rèn)值為3,RSELx默認(rèn)值為4可以推算出DCO的默認(rèn)頻率為1000kHz左右。注意DCO的頻率不穩(wěn)定。)

c)基本時鐘系統(tǒng)控制寄存器2 BCSCTL2

i.SELMx:選擇MCLK時鐘源,0為DCOCLK,1為DCOCLK,2為TX2CLK,3為LFTXT1CLK。(默認(rèn)為DCO)

ii.DIVMx:選擇MCLK分頻,0為1分頻,1為2分頻,2為4分頻,3為8分頻。(默認(rèn)1分頻)

iii.SELS:選擇SMCLK時鐘源,0為DCO,1為TX2CLK(默認(rèn)DCO)

iv.DIVSx:選擇SMCLK分頻,0為1分頻,1為2分頻,2為4分頻,3為8分頻。(默認(rèn)為1分頻,即SMCLK與MCLK一樣)

v.DCOR:選擇DCO電阻,0為內(nèi)部電阻,1為外部電阻

d)SFR中斷使能寄存器1

i.IE1是中斷允許寄存器,IE1.1是振蕩器故障中斷允許位OFIE,置位表示允許中斷,復(fù)位表示不允許中斷。

e)SFR中斷標(biāo)志寄存器1

i.IFG1是中斷標(biāo)志寄存器,IFG1.1是振蕩器故障中斷標(biāo)志位OF1FG,置位表示有振蕩器故障,復(fù)位表示沒有發(fā)生故障。

10.PUC信號后DCOCLK被自動選作MCLK時鐘信號,根據(jù)需要MCLK的時鐘源可以另外設(shè)置為LFXT1或者XT2.順序如下:

a)復(fù)位OSCOFF

b)清除OFIFG

c)延時等待至少50us

d)再檢查OFIFG,如果置位,則重復(fù)3,4步,直到OFIFG=0

e)代碼:

do

{

IFG1 &=~OFIFG;

for(I = 0xff;i> 0;i --);

}

while((IFG1 & OFIFG) != 0);



評論


技術(shù)專區(qū)

關(guān)閉