<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > MSP430(F5529)學(xué)習筆記——UCS配置詳解

MSP430(F5529)學(xué)習筆記——UCS配置詳解

作者: 時(shí)間:2016-11-28 來(lái)源:網(wǎng)絡(luò ) 收藏

(3)將SMCLK和MCLK配置XT2
將SMCLK和MCLK配置為XT2跟配置為XT1的過(guò)程基本相同,唯一不同的是,在配置SMCLK和MCLK為XT2之前,需要將ACLK和REFCLK的時(shí)鐘源,因為ACLK和REFCLK的默認時(shí)鐘源是XT1,而我們這里并沒(méi)有配置啟動(dòng)X(jué)T1CLK,所以會(huì )產(chǎn)生XT1時(shí)鐘錯誤,即XT1LFFG,因此,我們先將ACLK和REFCLK配置為芯片自帶的時(shí)鐘(REFOCLK或VLOCLK)或者即將啟動(dòng)的時(shí)鐘(XT2),此外,XT2配置時(shí)不需要配置電容,故將SMCLK和MCLK配置為XT2的代碼如下:
[cpp]view plaincopy
  1. #include
  2. voidmain(void){
  3. WDTCTL=WDTPW+WDTHOLD;
  4. P1SEL|=BIT0;
  5. P1DIR|=BIT0;//測量ACLK用
  6. P2SEL|=BIT2;
  7. P2DIR|=BIT2;//測量SMCLK用
  8. P7SEL|=BIT7;
  9. P7DIR|=BIT7;//測量MCLK用
  10. P5SEL|=BIT2|BIT3;//將IO配置為XT2功能
  11. UCSCTL6&=~XT2OFF;//使能XT2
  12. UCSCTL4=UCSCTL4&(~(SELA_7))|SELA_1;//先將ACLK配置為VLOCLK
  13. UCSCTL3|=SELREF_2;//將REFCLK配置為REFCLK
  14. while(SFRIFG1&OFIFG){
  15. UCSCTL7&=~(XT2OFFG+XT1LFOFFG+DCOFFG);//清除三類(lèi)時(shí)鐘標志位
  16. //這里需要清除三種標志位,因為任何一種
  17. //標志位都會(huì )將OFIFG置位
  18. SFRIFG1&=~OFIFG;//清除時(shí)鐘錯誤標志位
  19. }
  20. UCSCTL4=UCSCTL4&(~(SELS_7|SELM_7))|SELS_5|SELM_5;//將SMCLK和MCLK時(shí)鐘源配置為XT2
  21. while(1);
  22. }
做完前面三個(gè)實(shí)驗,我們就能掌握MSP430F5XX系列時(shí)鐘切換的基本操作了,講的并不詳細,有其他疑問(wèn)請仔細閱讀芯片手冊或者留言討論。

DCO模塊詳解
DCO模塊在MSP430F5XX系列芯片中非常重要,因為從MSP430F4XX開(kāi)始,MSP430引用了FLL模塊,FLL即鎖相環(huán),可以通過(guò)倍頻的方式提高系統時(shí)鐘頻率,進(jìn)而提高系統的運行速度。
DCO模塊運行需要參考時(shí)鐘REFCLK,REFCLK可以來(lái)自REFOCLK、XT1CLK和XT2CLK,通過(guò)UCSCTL3的SELREF選擇,默認使用的XT1CLK,但如果XT1CLK不可用則使用REFOCLK。
DCO模塊有兩個(gè)輸出時(shí)鐘信號,級DCOCLK和DCOCLKDIV,其中,倍頻計算公式如下:
[cpp]view plaincopy
  1. DCOCLK=D*(N+1)*(REFCLK/n)
  2. DCOCLKDIV=(N+1)*(REFCLK/n)

其中:
n即REFCLK輸入時(shí)鐘分頻,可以通過(guò)UCSCTL3中的FLLCLKDIV設定,默認為0,也就是不分頻;
D可以通過(guò)UCSCTL2中的FLLD來(lái)設定,默認為1,也就是2分頻;
N可以通過(guò)UCSCTL2中的FLLN來(lái)設定,默認值為32。
所以,系統上電后如果不做任何設置,DCOCLK的實(shí)際值為2097152,DCOCLKDIV的實(shí)際值為1048576。
另外,配置芯片工作頻率還需要配置DCORSEL和DCOx,DCORSEL和DCOx的具體作用如下:
DCORSEL位于UCSCTL1控制寄存器中的4到6位,共3位,將DCO分為8個(gè)頻率段。
DCOx位于UCSCTL0中的8到12位,共5位,將DCORSEL選擇的頻率段分為32個(gè)頻率階,每階比前一階高出約8%,該寄存器系統可以自動(dòng)調整,通常配置為0。
DCORSEL和DCOx值的具體作用可以參考MSP430F5529的數據手冊,閱讀該手冊相關(guān)部分可以找到如下表格:

本文引用地址:http://dyxdggzs.com/article/201611/322859.htm

可以見(jiàn),DCORESL的頻率調節范圍大致如下:

[cpp]view plaincopy
  1. DCORSEL=0的調節范圍約為0.20~0.70MHZ;
  2. DCORSEL=1的調節范圍約為0.36~1.47MHZ;
  3. DCORSEL=2的調節范圍約為0.75~3.17MHZ;
  4. DCORSEL=3的調節范圍約為1.51~6.07MHZ;
  5. DCORSEL=4的調節范圍約為3.2~12.3MHZ;
  6. DCORSEL=5的調節范圍約為6.0~23.7MHZ;
  7. DCORSEL=6的調節范圍約為10.7~39.7MHZ;
  8. DCORSEL=7的調節范圍約為19.6~60MHZ。


關(guān)鍵詞: MSP430學(xué)習筆記UCS配

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>