娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2024年10月18日(星期五)

正在發生

2019年10月18日 | MSP430F5438時鐘系統

發布者:peon1989 來源: eefocus關鍵字:MSP430F5438  時鐘系統  輔助時鐘 手機看文章 掃描二維碼
隨時隨地手機看文章

要了解一款芯片,最直觀的就是官方給的芯片的特點(FEATURES);要用好一款芯片,就必須從數據手冊了解芯片的各個功能;要開發一款芯片,我們就不許從最基本的時鐘系統出發。本文著重介紹下MSP430F5438的時鐘系統,也是整個5系列的時鐘系統,這是我接觸的第一款430芯片,如有錯誤,歡迎指正。

統一時鐘系統( Unified Clock System (UCS) )為芯片提供不同的時鐘,下圖可以看出:5438有4個時鐘系統,分別是輔助時鐘(ACLK),主時鐘(MCLK),子系統時鐘(SMCLK),以及專用時鐘(MODCLK)。

首先看看這些時鐘的來源。


除了專用時鐘外,他們都可以來至XT1CLK,VLOCLK,REFOCLK,DCOCLK,DCOCLKDIV,XT2CLK,只需要配置對應的寄存器即可應需選擇。其中,XT1CLK來至外部的XIN和XOUT管腳通過OSC寄存器得到,通常用32768Hz晶振;VLO(Very-Low-Power Low-Frequency Oscillator)和REFO(Low-FrequencyReference Oscillator)直接由OSC寄存器產生(屬于內部時鐘);DCOCLK(Digitally-Controlled Oscillator)和DCOCLKDIV(DCO分頻得到)來至FLL(FrequencyLocked Loop)寄存器(屬于內部數字時鐘);XT2CLK來至外部的XT2IN和XT2OUT管腳。


在5438芯片PUC(Power up clear)即上電清除過后,UCS(Unified Clock System)默認配置為:


1.? XT1 工作在 LF(Low-Frequency)模式 作為ACLK(與第5條沖突,但手冊就是這么寫的,我也不懂);


2.? DCOCLKDIV 作為 MCLK;


3.? DCOCLKDIV 作為 SMCLK;


4.? FLL 工作,而且 XT1CLK 作為FLL的參考時鐘(FLLREFCLK);


5.?XTIN和XTOUT若不配置則作為通用I/O口,XT1禁止;配置后才作為XT1;


6.? XT2IN和XT2OUT作為通用I/O口,XT2禁止。


那么現在就開始配置時鐘了。我就選其中一個時鐘MCLK(主時鐘)的配置講解,其他的時鐘大同小異。

要得到MCLK就得配置上圖的寄存器(調整模塊)。需要配置的有DIVM(分頻選擇),SELM(時鐘源選擇),CPUOFF(關閉CPU,因為是主時鐘,所以關閉MLCK就相當于關閉CPU),MCLK_REQEN(MCLK conditional requests條件要求使能),MCLK_REQ(不需要配置,從手冊上看作用是:外圍模塊如果需要其正確的運作需要它自動從UCS模塊調整,而不管當前的操作模式)。


下面再講講內部時鐘源VLO和REFO以及DCO,MODOSC。


REFO是內建的參考時鐘,它很穩定,一般作為FLL的時鐘基準。MSP430F5438上的REFOCLK是32768Hz。


MODOSC是個專用時鐘(我知道可以用在AD采樣上),大概5MHz(不知道為什么手冊上沒有他的資料)。


VLO是一個內建的低頻時鐘。在5438上,它的頻率是6-14kHz。


DCO是Digitally-ControlledOscillator,數控晶振。它可以通過FLL產生頻率很高而且比較穩定的時鐘。通過配置FLL,它甚至可以產生百兆以上的時鐘信號。FLL是FrequencyLocked Loop,鎖頻環。它能通過反饋穩定DCO的輸出,下圖是它的框圖:

首先它需要一個參考,可以是XT1,XT2,REFO的其中一個,當啟用FLL之后(默認啟用),圖中的DCO,MOD可以不用設置,FLL會自行調整這兩個值。DCO輸出的頻率與以下幾個量有關:


FLLD,FLLN,FLLREFDIV,FLLREFCLK


計算公式如下:


fDCOCLK= D × (N + 1) × (fFLLREFCLK ÷ n)


fDCOCLKDIV= (N + 1) × (fFLLREFCLK ÷ n)


其中


D=1,2,4,8,16,32(對應FLLD=0,1,2,3,4,5)


N=FLLN


n=1,2,4,8,12,16(對應FLLREFDIV=0,1,2,3,4,5)


fFLLREFCLK為REFO,XT1或XT2的實際頻率。


時鐘系統差不多就這些了,看起來復雜其實挺簡單的,自己在板子上動手試試才能了解 到底哪塊還沒有理解透徹,下面貼出我自己的5438時鐘配置。


#include "msp430.h"

 

int main( void )

{

  // Stop watchdog timer to prevent time out reset

  WDTCTL = WDTPW + WDTHOLD;

  

  P11DIR = BIT2 + BIT1 + BIT0;              // P11.2,1,0 to output direction

  P11SEL = BIT2 + BIT1 + BIT0;              // P11.2 to output SMCLK, P11.1

                                            // to output MCLK and P11.0 to

                                            // output ACLK

 

  //ACLK = REFO = 32kHz, MCLK = SMCLK = 25MHz  

  UCSCTL3 |= SELREF__REFOCLK;                      // Set DCO FLL reference = REFO

                                                   //±?D?μ?£?·??òò??±óD′í?ó±ê??

  

  UCSCTL4 |= SELA__REFOCLK;         // Set ACLK = REFO 

                                    //éè???3??ê±?ó?aDCO?í?á3?′í,×ü?á3???′í?ó±ê??

                                    //ò?°???ó?DCODIVê±?ó°é

    

  __bis_SR_register(SCG0);                  // Disable the FLL control loop  

  UCSCTL0 = 0x0000;                         // Set lowest possible DCOx, MODx 

                                            //??ê2?′ó?£?éè???àéù??2?ó°?ì

  

  UCSCTL1 = DCORSEL_7;                      // Select DCO range 25MHz operation 

                                            //?μ?êμè??£?1ù·?×êá??μ×???135M£??ò?üá?30M

  

  UCSCTL2 = FLLD_1 +762;                   // Set DCO Multiplier for 25MHz  

                                            // (N + 1) * FLLRef = Fdco  

                                            // (762 + 1) * 32768 = 25MHz  

                                            // Set FLL Div = fDCOCLK/2 

                                            //2·??μ25M 3·??μ23M 4·??μ11.5M 2??aμàê2?′?é??

  

  __bic_SR_register(SCG0);                  // Enable the FLL control loop  

    

  // Worst-case settling time for the DCO when the DCO range bits have been  

  // changed is n x 32 x 32 x f_MCLK / f_FLL_reference. See UCS chapter in 5xx  

  // UG for optimization.  

  // 32 x 32 x 25 MHz / 32,768 Hz = 782000 = MCLK cycles for DCO to settle  

  __delay_cycles(782000);  

    

  // Loop until XT1,XT2 & DCO fault flag is cleared  

  do  

  {  

    UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + XT1HFOFFG + DCOFFG);  

                                            // Clear XT2,XT1,DCO fault flags  

    SFRIFG1 &= ~OFIFG;                      // Clear fault flags  

  }while (SFRIFG1&OFIFG);                   // Test oscillator fault flag

 

  while(1);                                 // Loop in place

  

  return 0;

}

關鍵字:MSP430F5438  時鐘系統  輔助時鐘 引用地址:MSP430F5438時鐘系統

上一篇:MSP430F5529LP+CC3000學習心得(一)
下一篇:MSP430F5529的IO口管腳的中斷學習筆記

推薦閱讀

? ? ? ? 本以為這個月會有三款滑蓋式手機推出的,沒想到聯想今天中途退賽,只剩下小米MIX3與榮耀Magic2上演巔峰對決,前者早早的開始預熱,確認支持5G網絡與用上10GB大內存,并放出宣傳視頻,暗示自拍照能力強大,前置2400像素的雙攝像頭,后者則是沒有任何消息放出。? ? ? ? 既然官方沒有消息,那就只能讓神通廣大的網友來爆料了,有知名...
到目前為止,電池組的生產都遵循相同的基本步驟。一家專門制造電池的公司,例如松下或LG化學,制造單個電芯,然后車企將這些電芯裝入電池組。換句話說,電池生產與汽車搭載的電池組是獨立的兩個步驟。而特斯拉的專利申請描述了一種新方法,該方法將電池組并聯子組與電池制造集成在一起。以前,單電池從電池制造廠出來。在特斯拉的專利申請中,平行電池組來...
據外媒報道,巴西國家電信局ANATEL新機入網的信息顯示,iPhone 12 mini電池容量為2227mAh,iPhone 12則采用2815mAh電池,比iPhone 11的 3110mAh電池更小,iPhone 12 Pro / Max 暫未披露。圖源:MacRumorsiPhone 12 mini電池容量為2227mAh,續航堪憂,估計出門要帶著充電寶才有安全感。雖然iPhone 12系列的電池容量相比上代有縮水,但由于 A14...
廣告摘要聲明廣告撰文 | 石頭今年以來,移動機器人領域熱度居高不下,備受資本和市場的關注。據高工移動機器人不完全統計,2021年1月截止至今,我國移動機器人賽道融資數量共80起,總融資金額超134.39億元;融資金額達億元以上的有29筆,融資金額約114.77億元?,F階段,國內移動機器人相關領域融資主要集中在A輪及其相關,其中A輪融資數量最高共37起,B...

史海拾趣

問答坊 | AI 解惑

企業面試電子類面試題[單片機/MCU/計算機原理]

1、簡單描述一個單片機系統的主要組成模塊,并說明各模塊之間的數據流流向和控制流流向。簡述單片機應用系統的設計原則。(仕蘭微面試題目) 2、畫出8031與2716(2K*8ROM)的連線圖,要求采用三-八譯碼器,8031的P2.5,P2.4和P2.3參加譯碼,基本地 ...…

查看全部問答∨

急: 咨詢LM3S8962通過I2C模塊訪問DAC8571, 位啥不成功?

本帖最后由 dontium 于 2015-1-23 13:42 編輯 先介紹DAC8571 資料; 數字轉模擬的DAC,  工作電壓3.3V, 目前參考電壓輸入為1V ,  電路圖如下連接:   SDA, SCL 都上拉了,上拉電阻10K; DAC8571 訪問關鍵資料圖如下: LM3S8962 配 ...…

查看全部問答∨

關于d12的某些基礎問題??

這幾天想學usb,就看了些usb協議方面的東西,pdiusbd12芯片,現在也基本能看懂網上的一些程序,但是有幾個問題還是搞不大懂,望各位在座高手指點一二,謝謝~~ 1.D12到底何時產生中斷   就是什么時候int_n會產生低電平呢? 2.Setup包 ...…

查看全部問答∨

請大家的幫忙! 嵌入式開發新手 請指點一下吧!

做醫療設備的嵌入式開發到底需要一個什么樣的編程情況?還有就是自己要一個什么樣的編程環境? 我以前是做VC的數據庫與網絡開發的,所以想急切了解一下這方面的情況?明天就要去上班了,有點不知所措了,請高手指教! 請你們給我介紹一下做醫療設備的嵌 ...…

查看全部問答∨

請教高手:一個關于全局變量隨機變化的問題

在一個源文件中定義了一個普通的全局變量,該變量在同一個PROJECT的多個源文件中被調用. 可以通過按鍵改變這個全局變量InputSelection的值,從而選擇不同的輸入源. 前期調試中切換正常.但是現在發現一個奇怪的問題,該變量的值總是莫名其妙隨機的 ...…

查看全部問答∨

msp430 定時中斷問題

我的程序大概如下 void main() {    .... //初始化     ..... } 在我的主函數里我調用一個函數,這個函數產生變量m=1 現在我想進入中斷定時 #pragma vector = TIMERA0_VECTOR __interrupt void Timer_A0(void) { &n ...…

查看全部問答∨

理解FFT圖

本帖最后由 dontium 于 2015-1-23 13:22 編輯 作者:Bonnie C. Baker, 德州儀器 (TI)   關鍵詞:模擬電路設計、轉換器、ADC、工業應用、醫療電子、Op Amp、系統設計、工程教育、物理驗證與分析、信號完整性、設計方法   您可以通過 ...…

查看全部問答∨

NTP網絡較時編程之大端小端存儲

  最近在學習NTP網絡較時編程中,遇到了一個問題,這是一個容易被我們忽視的問題,也是一個很重要的問題。 對NTP網絡校時編程有一定了解的同學,一定知道NTP包,它的結構如下圖: 在編程中,對上圖的描述就是用一個結構體: typedef stru ...…

查看全部問答∨

如果四旋翼飛行器出個飛行控制的題,能用飛控芯片嗎

本帖最后由 paulhyde 于 2014-9-15 03:10 編輯 如果四旋翼飛行器出個飛行控制的題,能用飛控芯片嗎?    …

查看全部問答∨

大蝦們,偶在做一個溫濕度傳感器,用的DHT21傳感器,但是有一段程序困擾我好久了,...

函數名稱 : 讀溫濕度字節函數 功    能 : 讀取溫濕度每個字節 說    明 : 無 *********************************************************/ void  COM(void)//讀字節 {    U8 i;    & ...…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 石泉县| 蓬莱市| 长沙县| 博爱县| 铁力市| 安西县| 三门县| 高陵县| 恩施市| 五河县| 拜泉县| 沂南县| 郎溪县| 横山县| 开远市| 大竹县| 凤山县| 永川市| 郸城县| 高碑店市| 齐河县| 民县| 平利县| 依安县| 阳信县| 平罗县| 乐至县| 绥阳县| 扶余县| 万山特区| 朝阳区| 正阳县| 常宁市| 巴青县| 安溪县| 宁津县| 唐河县| 达日县| 江源县| 樟树市| 宜黄县|