當(dāng)前位置:首頁 > 技術(shù)學(xué)院 > 熱搜器件
[導(dǎo)讀]MSP430時鐘設(shè)置及應(yīng)用總結(jié)

********************************基于MSP430F1612***************************
在MSP430單片機(jī)中,一個時鐘周期 = MCLK晶振的倒數(shù)。如果MCLK是8MHz,則一個時鐘周期為1/8us。
一個機(jī)器周期 = 一個時鐘周期,即430每個動作都能完成一個基本操作。
一個指令周期 = 1~6個機(jī)器周期,具體根據(jù)具體指令而定。
另外,指令長度只是一個存儲單位,與時間沒有必然的關(guān)系。
MSP430單片機(jī)的時鐘模塊主要包括:
    三個時鐘:輔助時鐘ACLK 、主時鐘MCLK 、子系統(tǒng)時鐘SMCLK
三個振蕩器:低頻時鐘源LFXT1 、高頻時鐘源XT2 、數(shù)字控制RC振蕩器DCO
而MSP430單片機(jī)工作所需時鐘就是由這些振蕩器振蕩后經(jīng)處理產(chǎn)生的。
(1)ACLK:是LFXT1CLK信號經(jīng)1/2/4/8分頻后得到的,主要用作低速外圍的時鐘
(2)MCLK:是LFXT1CLK,XT2CLK,DCOCLK的三者之一決定,由軟件選擇,然后經(jīng)1/2/4/8分頻后得到,主要用于CPU和系統(tǒng)
(3)SMCLK:可由LFXT1CLK和DCOCLK,或者XT2CLK與DCOCLK決定,然后經(jīng)1/2/4/8分頻后得到,主要用于高速外圍模塊
MSP430的時鐘模塊由DCOCTL,BCSCTL1,BCSCTL2,IE1,IFG1這五個寄存器來確定,具體的功能如下所示:
      DCOCTL:控制DCO振蕩器
   BCSCTL1:控制XT2,LFXT1,DCO振蕩,并控制ACLK的分頻情況
      BCSCTL2:設(shè)置三個時鐘源分別選擇什么振蕩器
我們在程序里對寄存器的設(shè)置,也就是對三個振蕩器進(jìn)行設(shè)置,時鐘振蕩器設(shè)置好了,還要對時鐘模塊進(jìn)行設(shè)置,也就是讓三個時鐘模塊MCLK SMCLK ACLK選擇相應(yīng)的時鐘振蕩器以得到不同頻率的時鐘。
PUC信號后,系統(tǒng)選擇內(nèi)部電阻以實(shí)現(xiàn)頻率的輸出。RSELx = 4 與 DCOx = 3,開始時使DCO有一個適中的頻率。MCLK與SMCLK的時鐘信號全部來自DCO,約為800KHz(芯片手冊)。PUC信號后將LFXT1設(shè)置到LF模式(XTS=0),并且關(guān)斷HF模式(XTS=1)與關(guān)斷XT2振蕩器。
(1)DCOCTL:DCO控制寄存器,地址為56H,初始值為60H
//       7    6    5    4    3    2    1    0
//     DCO2 DCO1 DCO0 MOD4 MOD3 MOD2 MOD1 MOD0
//
//  DCO0~DCO2:DCO Select Bit,定義了8種頻率之一,而頻率由注入直流發(fā)生器的電流定義
//  MOD0~MOD4:Modulation Bit,頻率的微調(diào)
//
// DCO的設(shè)置:通過設(shè)置DCOCTL和BCSCTL1,設(shè)置DCO的頻率
//  (1)DCO的調(diào)節(jié):
設(shè)置DCOR比特來選擇是外部電阻還是內(nèi)部電阻,以確定一個基準(zhǔn)頻率
通過BCSCTL1寄存器的RSELx來進(jìn)行分頻,確定時鐘頻率;
通過DCOCTL寄存器中DCOx在標(biāo)稱頻率基礎(chǔ)上分段粗調(diào),選擇頻率;
通過DCOCTL寄存器中MODx的值對頻率進(jìn)行細(xì)調(diào),選擇 DCOx 與 DCOx+1 之間的頻率
//  注意:DCO工作在最高頻率時,內(nèi)部電阻正常值大約為200k,此時DCO的工作頻率大約為5MHz。
例子:
//DCOCTL初始值為60H,即DCOCTL |= DCO1 + DCO2;
  DCOCTL |= DCO0 + DCO1 + DCO2;              // Max DCO
  //MOD0~MOD4:Modulation Bit,頻率的微調(diào)一般保持默認(rèn)即可
  //系統(tǒng)默認(rèn)情況下,RSELx=4
 
(2)BCSCTL1(ACLK):Basic Clock System Control 1,地址為58H,初始值為84H
//       7     6    5     4     3     2     1     0
//     XT2OFF XTS DIVA1 DIVA0 XT5V RSEL2 RSEL1 RSEL0
//
//   RSEL2~RSEL0:選擇某個內(nèi)部電阻以決定標(biāo)稱頻率(0最低,7最高)
//   XT5V:1,該比特未用,必須選擇復(fù)位
//   DIVA0~DIVA1:選擇ACLK的分頻系數(shù)。DIVA=0,1,2,3(DIVA_0,DIVA_1...),ACLK的分頻系數(shù)分別為:1,2,4,8
//   XTS:選擇LFXT1工作在低頻晶體模式(XTS=0)還是高頻晶體模式(XTS=1)
//   XT2OFF:控制XT2振蕩器的開啟(XT2OFF=0)與關(guān)閉(XT2OFF=1)
//
// BCSCTL1的設(shè)置:初始值為84H
//使用XT2振蕩器
  //控制XT2振蕩器的開啟(XT2OFF=0)與關(guān)閉(XT2OFF=1)
  BCSCTL1 &= ~XT2OFF;//清OSCOFF/XT2
  do
  {
    IFG1 &= ~OFIFG;//清OFIFG
    OSC_Delay = 255;
    while(OSC_Delay --);//延時等待
  }
  while(IFG1 & OFIFG);//直到OFIFG=0為止
 
  //RSEL2~RSEL0:選擇某個內(nèi)部電阻以決定標(biāo)稱頻率(0最低,7最高)
  BCSCTL1 |= RSEL0 + RSEL1 + RSEL2;// XT2on,max RSEL
 
  //選擇ACLK的分頻系數(shù):DIVA=0,1,2,3,ACLK的分頻系數(shù)分別為:1,2,4,8
  //BCSCTL1 |= DIVA_2;//對ACLK進(jìn)行2分頻
 
//(3)BCSCTL2(SMCLK,MCLK):Basic Clock System Control 2,地址為58H,初始值為00H
//       7       6      5     4     3     2     1     0
//     SELM1 SELM0 DIVM1 DIVM0 SELS DIVS1 DIVS0 DCOR
//
//   DCOR:Enable External Resister,0—選擇內(nèi)部電阻,1—選擇外部電阻
//   DIVS0~DIVS1:DIVS=0,1,2,3,對應(yīng)SMCLK的分頻因子為1,2,4,8
//   SELS:選擇SMCLK的時鐘源,0:DCOCLK,1:XT2CLK/LFXTCLK
//   DIVM0~DIVM1:選擇MCLK的分頻因子,DIVM=0,1,2,3,對應(yīng)MCLK的分頻因子為1,2,4,8
//   SELM0~SELM1:選擇MCLK的時鐘源,0,1:DCOCLK,2:XT2CLK,3:LFXT1CLK
//
// BCSCTL2的設(shè)置:初始值為00H
//設(shè)置BCSCTL2,選定MCLK和SMCLK的時鐘源XT2,并可以設(shè)置其分頻因子
  //注意:ACLK只能來源于LFXT1,可以在BCSCTL1里設(shè)置ACLK的分頻,就是說ACLK最大只能為32768Hz(XIN 與 XOUT間接32.768KHz晶振)
 
  //DCOR一般設(shè)置為默認(rèn)值
 
  //設(shè)置SMCLK的分頻因子,DIVS0~DIVS1:DIVS=0,1,2,3,對應(yīng)SMCLK的分頻因子為1,2,4,8
  //BCSCTL2 = DIVS_0;
  //BCSCTL2 = DIVS_1;
  //BCSCTL2 = DIVS_2;
  //BCSCTL2 = DIVS_3;
 
  //設(shè)置MCLK的分頻因子,DIVM0~DIVM1:DIVM=0,1,2,3,對應(yīng)MCLK的分頻因子為1,2,4,8
  //BCSCTL2 = DIVM_0;
  //BCSCTL2 = DIVM_1;
  //BCSCTL2 = DIVM_2;
  //BCSCTL2 = DIVM_3;
 
  //BCSCTL2:設(shè)置三個時鐘源分別選擇什么振蕩器
 
  //SELM0~SELM1:選擇MCLK的時鐘源,0,1:DCOCLK,2:XT2CLK,3:LFXT1CLK
  //選擇 MCLK 時鐘源為XT2,
  //BCSCTL2 = SELM_2 ;
 
  //SELS:選擇SMCLK的時鐘源,0:DCOCLK,1:XT2CLK/LFXTCLK
  //選擇 SMCLK 時鐘源為XT2
  //BCSCTL2 = SELS ;
 
  //選擇MCLK 與 SMCLK為XT2
  BCSCTL2 = SELM_2 + SELS;
 
//(4)IE1,Interrupt Enable Register 1
//       7     6    5     4     3     2     1     0
//                                         OFIE
//     7~2 and 0 : These bits may be used by other modules
//     OFIE:Oscillator fault interrupt enable. 0---Interrupt not enabled
//                                    1---Interrupt enabled
//(5)IEG1,Interrupt Flag Register 1
//       7     6    5     4     3     2     1     0
//                                        OFIFG
//     7~2 and 0 : These bits may be used by other modules
//     OFIE:Oscillator fault interrupt flag. 0 No interrupt pending
//                                  1 Interrupt pending
//
在PUC信號后,默認(rèn)情況下由DCOCLK作MCLK與SMCLK的時鐘信號,由于DCOCTL初始值為60H,根據(jù)需要可將MCLK的時鐘源另外設(shè)置為LFXT1或者XT2,設(shè)置順序如下:
//(1)清OSCOFF/XT2
//(2)清OFIFG
//(3)延時等待至少50us
//(4)再次檢查OFIFG,如果仍置位,則重復(fù)(1)~(4)步,直到OFIFG=0為止
//(5)設(shè)置BCSCTL2的相應(yīng)SELM

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉