国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

LPC1754內部PLL0原理及應用設計詳解

UtFs_Zlgmcu7890 ? 來源:互聯網 ? 作者:佚名 ? 2017-10-19 06:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

LPC175x作為NXP公司主推的cortex-M3內核芯片,廣泛應用于各工控、電子計量、報警系統等領域,無論何種應用,根據實際需求選擇合適的時鐘源并配置合理的系統時鐘頻率都是必不可少的。

振蕩器

以EasyARM-1754M3開發板為例,LPC1754芯片外部晶體振蕩器包含兩個,一個頻率為12MHz外部高速晶振和一個頻率為32.768KHz的外部低速晶振,兩個都可以使用軟件設置選用或不選用。此外LPC1754內部也包含三個獨立的振蕩器,他們分別是內部主振蕩器,內部RC振蕩器和內部RTC振蕩器。實際應用當中常用的振蕩器是外部高速晶體振蕩器,和外部低速晶體振蕩器。

LPC1754內部PLL0原理簡介

PLL0包含多個寄存器,其中PLL0時鐘源的選擇可在CLKSRCSEL寄存器中設置,PLL0將輸入時鐘進行倍頻,然后再分頻為CPU及芯片外設提供實時時鐘信號。PLL0可產生的時鐘頻率最高可達100MHz,是CPU所允許的最大值。

PLL0內部結構可表示為下圖,PLL0的輸出時鐘信號即為pllclk,后經過CPU時鐘分頻器的分頻,產生系統時鐘,系統時鐘再進入外設時鐘分頻器后輸出多路的外設時鐘。

應用舉例

EasyARM-1754M3開發板配套的所有例程使用統一的系統初始化函數SystemInit()將系統時鐘配置為96MHz,外設時鐘配置為默認值24MHz。用戶可在對此函數有一定理解的條件下,根據自身實際需求,對參數進行修改,可修改項一般包含時鐘源、倍頻系數、分配系數三個重要參數,系統初始化函數當中的PLL0配置部分如下程序清單所示:

#if (CLOCK_SETUP) /* Clock Setup */

LPC_SC->SCS = SCS_Val;

if (SCS_Val & (1 << 5)) {????????????????????????????? ?????/* If Main Oscillator is enabled? */

while ((LPC_SC->SCS & (1<<6)) == 0);???????????? ????????/* Wait for Oscillator to be ready*/

}

LPC_SC->CCLKCFG = CCLKCFG_Val; /* 系統時鐘分頻值,CCLKCFG_Val值可改 */

LPC_SC->PCLKSEL0 = PCLKSEL0_Val; /* Peripheral Clock Selection */

LPC_SC->PCLKSEL1 = PCLKSEL1_Val;

LPC_SC->CLKSRCSEL = CLKSRCSEL_Val; /* 選取時鐘源,CLKSRCSEL_Val值可改 */

#if (PLL0_SETUP)

LPC_SC->PLL0CFG = PLL0CFG_Val; /*PLL0倍頻值,PLL0CFG_Val值可改 */

LPC_SC->PLL0CON = 0x01; /* PLL0 Enable */

LPC_SC->PLL0FEED = 0xAA;

LPC_SC->PLL0FEED = 0x55;

while (!(LPC_SC->PLL0STAT & (1<<26)));????????????? ??????/* Wait for PLOCK0?????????????? */

LPC_SC->PLL0CON = 0x03; /* PLL0 Enable & Connect */

LPC_SC->PLL0FEED = 0xAA;

LPC_SC->PLL0FEED = 0x55;

#endif

LPC_SC->PCONP = PCONP_Val; /* Power Control for Peripherals */

LPC_SC->CLKOUTCFG = CLKOUTCFG_Val; /* Clock Output Configuration */

#endif

其中關鍵參數為PLL0倍頻系數PLL0CFG_Val、CPU時鐘分頻系數CCLKCFG_Val,由于寄存器值比實際值小1,因此它們實際值為16和4。另外每次想PLL0相關寄存器寫入新的數值時,需要向饋送寄存器當中寫入饋送系列以后才能生效,通常是將0xAA和0x55先后寫入PLLxFEED寄存器。

將相關參數準備好之后,就要根據參數配置,判斷選中的時鐘源,并通過計算得出最后的系統時鐘頻率。在選用外部12MHz時鐘源的條件下,程序會跳轉到CASE1的位置運行,并結合此前所給參數,計算出系統時鐘頻率CCLK=12M×2×16/1/4=96MHz。

case 1: /* Main oscillator => PLL0 */

SystemFrequency = (OSC_CLK *

((2 * ((LPC_SC->PLL0STAT & 0x7FFF) + 1))) / /*PLL0STAT的低15位是15,倍頻值*/

(((LPC_SC->PLL0STAT >> 16) & 0xFF) + 1) / /*PLL0STAT的16~23位是0,分頻值*/

((LPC_SC->CCLKCFG & 0xFF)+ 1)); /*CCLKCFG是系統分頻值,3 */

break;

又例如使用32.768KHz的外低速晶振作為時鐘源,并同樣產生96MHz的系統時鐘,只需將CLKSRCSEL_Val、CCLKCFG_Val、PLL0CFG_Val分別改為0x02、0x02、0x1127(4391)即可,含義分別是選擇外部低速晶振,系統分頻為3(寄存器值比實際值小1),PLL0倍頻值為4392(而PLL0分頻值不設,默認為0),計算:32.768×2×4392÷3=95944.704KHz,

約為96MHz。

時鐘配置注意事項

在整個代碼編寫過程中要格外注意對饋送寄存器PLLxFEED的操作,要嚴格遵循0xAA和0x55先后寫入的順序。另外要確保執行寫入饋送序列時,不會出現任何一個中斷服務程序,即在執行PLL0饋送操作時,必須禁止中斷,如果寫入的值不正確、或者沒有滿足無中斷發生的條件,那么對PLL0CFG寄存器的更改都不會生效。

在根據自身需求配置所需系統時鐘頻率時,往往會使用仿真器的Debug功能,觀測相關參數,以驗證時鐘頻率配置的正確與否。但不能在執行PLL0饋送操作時,設置任何斷點,否側同樣無法使配置生效。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • LPC
    LPC
    +關注

    關注

    8

    文章

    137

    瀏覽量

    79256
  • NXP
    NXP
    +關注

    關注

    61

    文章

    1396

    瀏覽量

    197645
  • 寄存器
    +關注

    關注

    31

    文章

    5608

    瀏覽量

    129996
  • lpc1754
    +關注

    關注

    0

    文章

    1

    瀏覽量

    1897

原文標題:多種選擇—輕松配置LPC175x系統時鐘-ZLG技術研發中心

文章出處:【微信號:Zlgmcu7890,微信公眾號:周立功單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    探索LPC11E6x 32位ARM Cortex - M0+微控制器:特性、應用與設計要點

    探索LPC11E6x 32位ARM Cortex - M0+微控制器:特性、應用與設計要點 在當今電子設備飛速發展的時代,微控制器作為核心部件,其性能和功能直接影響著產品的質量和競爭力。NXP
    的頭像 發表于 03-02 17:10 ?575次閱讀

    LTC1754-3.3/LTC1754-5:高效微功耗電荷泵DC/DC轉換器

    LTC1754-3.3/LTC1754-5:高效微功耗電荷泵DC/DC轉換器 在電子設備設計中,電源管理模塊至關重要,它直接影響著設備的性能、功耗和穩定性。今天,我們就來深入探討Linear
    的頭像 發表于 02-11 16:10 ?248次閱讀

    LPC1110/11/12/13/14/15 32 位 ARM Cortex - M0 微控制器:設計與應用指南

    LPC1110/11/12/13/14/15 32 位 ARM Cortex - M0 微控制器:設計與應用指南 一、引言 在電子設計領域,微控制器是眾多項目的核心。NXP 推出的 LPC
    的頭像 發表于 02-10 15:20 ?158次閱讀

    Texas Instruments PLL1705/PLL1706:3.3-V 雙 PLL 多時鐘發生器的卓越之選

    Texas Instruments PLL1705/PLL1706:3.3-V 雙 PLL 多時鐘發生器的卓越之選 在電子設計領域,時鐘發生器是確保系統穩定運行的關鍵組件。今天,我們要深入探討
    的頭像 發表于 02-10 14:15 ?149次閱讀

    Texas Instruments PLL1707和PLL1708:低抖動多時鐘發生器的卓越之選

    Texas Instruments PLL1707和PLL1708:低抖動多時鐘發生器的卓越之選 在電子設計領域,時鐘發生器的性能對系統的穩定性和性能起著至關重要的作用。今天我們來深入探討一下
    的頭像 發表于 02-10 13:45 ?221次閱讀

    探究PLL1705與PLL1706:3.3V雙PLL多時鐘發生器的卓越性能

    輸入輸出特性 PLL1705和PLL1706采用27 - MHz主時鐘輸入,能產生多個系統時鐘輸出。以音頻系統時鐘為例,SCKO0固定為33.8688 MHz,
    的頭像 發表于 02-04 09:35 ?223次閱讀

    德州儀器PLL1707和PLL1708:低抖動多時鐘發生器的卓越之選

    德州儀器PLL1707和PLL1708:低抖動多時鐘發生器的卓越之選 在電子設計領域,時鐘發生器是確保系統穩定運行的關鍵組件。今天,我們就來深入探討德州儀器(Texas Instruments)推出
    的頭像 發表于 02-04 09:20 ?167次閱讀

    LPC800系列MCU:低功耗與高性能的完美結合

    哪些獨特的優勢和特點。 文件下載: NXP Semiconductors Semiconductors LPC86x 32位 Arm? Cortex- M0+ MCU.pdf 一、LPC800系列MCU
    的頭像 發表于 12-24 16:40 ?291次閱讀

    修改 PLL 參數的流程

    步驟 1:設置 SYSCTRL_CR1.PLLEN 為 0,關閉 PLL; 步驟 2:等待 SYSCTRL_PLL.STABLE 標志被系統硬件清零; 步驟 3:更改 PLL 的參數;
    發表于 12-11 06:38

    PLL1708雙PLL多時鐘發生器技術文檔總結

    PLL1707成本低、鎖相 環路 (PLL) 多時鐘發生器。PLL1707和 PLL1708可以從 27 MHz 生成四個系統時鐘 參考輸入頻率。的時鐘輸出
    的頭像 發表于 09-22 14:01 ?823次閱讀
    <b class='flag-5'>PLL</b>1708雙<b class='flag-5'>PLL</b>多時鐘發生器技術文檔總結

    ?PLL1707/PLL1708 雙PLL多時鐘發生器技術文檔總結

    PLL1707成本低、鎖相 環路 (PLL) 多時鐘發生器。PLL1707和 PLL1708可以從 27 MHz 生成四個系統時鐘 參考輸入頻率。的時鐘輸出
    的頭像 發表于 09-22 13:57 ?763次閱讀
    ?<b class='flag-5'>PLL</b>1707/<b class='flag-5'>PLL</b>1708 雙<b class='flag-5'>PLL</b>多時鐘發生器技術文檔總結

    是否可以內部生成40MHz時鐘并將PLL時鐘設置為40MHz?

    我有一個關于內部時鐘生成的問題。 外部 24MHz 時鐘連接到 MHzECO 端子。 是否可以內部生成 40MHz 時鐘并將 PLL 時鐘設置為 40MHz? 如果可能的話請告訴我如何做。
    發表于 07-30 07:26

    Analog Devices Inc. ADES1754 評估套件數據手冊

    Analog Devices Inc. ADES1754評估套件(EV套件)用于演示ADES1754/ADES1755/ADES1756數據采集系統的功能和特性。該套件與MAX17851評估套件搭配
    的頭像 發表于 06-10 11:25 ?961次閱讀
    Analog Devices Inc. ADES<b class='flag-5'>1754</b> 評估套件數據手冊

    PLL用法

    易靈思的FPGA在生成PLL的方式與別的廠家稍有區別,這與其的core和interface架構是相對應的。對于易靈思的FPGA來講,PLL,GPIO,MIPI,LVDS和DDR相對于core部分都是
    的頭像 發表于 06-07 16:18 ?1402次閱讀
    <b class='flag-5'>PLL</b>用法

    如何使用GPIO IRQ從Deep sleep喚醒LPC1768?

    // or Power-Down mode------------ LPC_SC->PLL1CON = 2; // Turn off the main PLL (PLL0
    發表于 03-21 08:01