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

歷史上的今天

今天是:2024年08月25日(星期日)

正在發(fā)生

2020年08月25日 | STM32各種時鐘的區(qū)別

發(fā)布者:轉眼人老 來源: eefocus關鍵字:STM32  時鐘  處理器 手機看文章 掃描二維碼
隨時隨地手機看文章

時鐘系統(tǒng)是處理器的核心,所以在學習STM32所有外設之前,認真學習時鐘系統(tǒng)是必要的,有助于深入理解STM32。 


下面是從網上找的一個STM32時鐘框圖,比《STM32中文參考手冊》里面的是中途看起來清晰一些: 
    
    
重要的時鐘: 
  PLLCLK,SYSCLK,HCKL,PCLK1,PCLK2 之間的關系要弄清楚; 


      1、HSI:高速內部時鐘信號 stm32單片機內帶的時鐘 (8M頻率)     精度較差 
      2、HSE:高速外部時鐘信號  精度高 來源(1)HSE外部晶體/陶瓷諧振器(晶振)  (2)HSE用戶外部時鐘          
      3、LSE:低速外部晶體 32.768kHz 主要提供一個精確的時鐘源 一般作為RTC時鐘使用  


在STM32中,有五個時鐘源,為HSI、HSE、LSI、LSE、PLL。  

  ①、HSI是高速內部時鐘,RC振蕩器,頻率為8MHz。 

  ②、HSE是高速外部時鐘,可接石英/陶瓷諧振器,或者接外部時鐘源,頻率范圍為4MHz~16MHz。 

  ③、LSI是低速內部時鐘,RC振蕩器,頻率為40kHz。 

  ④、LSE是低速外部時鐘,接頻率為32.768kHz的石英晶體。 

  ⑤、PLL為鎖相環(huán)倍頻輸出,其時鐘輸入源可選擇為HSI/2、HSE或者HSE/2。倍頻可選擇為2~16倍,但是其輸出頻率最大不得超過72MHz。 

  其中40kHz的LSI供獨立看門狗IWDG使用,另外它還可以被選擇為實時時鐘RTC的時鐘源。另外,實時時鐘RTC的時鐘源還可以選擇LSE,或者是HSE的128分頻。RTC的時鐘源通過RTCSEL[1:0]來選擇。 

  STM32中有一個全速功能的USB模塊,其串行接口引擎需要一個頻率為48MHz的時鐘源。該時鐘源只能從PLL輸出端獲取,可以選擇為1.5分頻或者1分頻,也就是,當需要使用USB模塊時,PLL必須使能,并且時鐘頻率配置為48MHz或72MHz。 

  另外,STM32還可以選擇一個時鐘信號輸出到MCO腳(PA8)上,可以選擇為PLL輸出的2分頻、HSI、HSE、或者系統(tǒng)時鐘。 

  系統(tǒng)時鐘SYSCLK,它是供STM32中絕大部分部件工作的時鐘源。系統(tǒng)時鐘可選擇為PLL輸出、HSI或者HSE。系統(tǒng)時鐘最大頻率為72MHz,它通過AHB分頻器分頻后送給各模塊使用,AHB分頻器可選擇1、2、4、8、16、64、128、256、512分頻。其中AHB分頻器輸出的時鐘送給5大模塊使用: 

  ①、送給AHB總線、內核、內存和DMA使用的HCLK時鐘。 

  ②、通過8分頻后送給Cortex的系統(tǒng)定時器時鐘。 

  ③、直接送給Cortex的空閑運行時鐘FCLK。 

  ④、送給APB1分頻器。APB1分頻器可選擇1、2、4、8、16分頻,其輸出一路供APB1外設使用(PCLK1,最大頻率36MHz),另一路送給定時器(Timer)2、3、4倍頻器使用。該倍頻器可選擇1或者2倍頻,時鐘輸出供定時器2、3、4使用。 

  ⑤、送給APB2分頻器。APB2分頻器可選擇1、2、4、8、16分頻,其輸出一路供APB2外設使用(PCLK2,最大頻率72MHz),另一路送給定時器(Timer)1倍頻器使用。該倍頻器可選擇1或者2倍頻,時鐘輸出供定時器1使用。另外,APB2分頻器還有一路輸出供ADC分頻器使用,分頻后送給ADC模塊使用。ADC分頻器可選擇為2、4、6、8分頻。 

  在以上的時鐘輸出中,有很多是帶使能控制的,例如AHB總線時鐘、內核時鐘、各種APB1外設、APB2外設等等。當需要使用某模塊時,記得一定要先使能對應的時鐘。 

  需要注意的是定時器的倍頻器,當APB的分頻為1時,它的倍頻值為1,否則它的倍頻值就為2。 

  連接在APB1(低速外設)上的設備有:電源接口、備份接口、CAN、USB、I2C1、I2C2、UART2、UART3、SPI2、窗口看門狗、Timer2、Timer3、Timer4。注意USB模塊雖然需要一個單獨的48MHz時鐘信號,但它應該不是供USB模塊工作的時鐘,而只是提供給串行接口引擎(SIE)使用的時鐘。USB模塊工作的時鐘應該是由APB1提供的。 

  連接在APB2(高速外設)上的設備有:UART1、SPI1、Timer1、ADC1、ADC2、所有普通IO口(PA~PE)、第二功能IO口。 


涉及的寄存器: 
RCC 寄存器結構,RCC_TypeDeff,在文件“stm32f10x_map.h”中定義如下:  
typedef struct  
{  
vu32 CR;                  //HSI,HSE,CSS,PLL等的使能  
vu32 CFGR;              //PLL等的時鐘源選擇以及分頻系數(shù)設定 
vu32 CIR;                // 清除/使能 時鐘就緒中斷 
vu32 APB2RSTR;      //APB2線上外設復位寄存器 
vu32 APB1RSTR;      //APB1線上外設復位寄存器 
vu32 AHBENR;         //DMA,SDIO等時鐘使能 
vu32 APB2ENR;       //APB2線上外設時鐘使能 
vu32 APB1ENR;      //APB1線上外設時鐘使能 
vu32 BDCR;           //備份域控制寄存器 
vu32 CSR;             
} RCC_TypeDef; 

可以對上上面的時鐘框圖和RCC寄存器來學習,對STM32的時鐘系統(tǒng)有個大概的了解,然后對照我們的《STM32不完全手冊》的系統(tǒng)時鐘配置函數(shù)void Stm32_Clock_Init(u8 PLL)一同來學習。 


時鐘輸出的使能控制
    在以上的時鐘輸出中有很多是帶使能控制的,如AHB總線時鐘、內核時鐘、各種APB1外設、APB2外設等。
當需要使用某模塊時,必需先使能對應的時鐘。需要注意的是定時器的倍頻器,當APB的分頻為1時,它的倍頻值為1,否則它的倍頻值就為2。
   連接在APB1(低速外設)上的設備有:電源接口、備份接口、CAN、USB、I2C1、I2C2、UART2、UART3、SPI2、窗口看門狗、 Timer2、Timer3、Timer4。注意USB模塊雖然需要一個單獨的48MHz時鐘信號,但它應該不是供USB模塊工作的時鐘,而只是提供給串行接口引擎(SIE)使用的時鐘。USB模塊工作的時鐘應該是由APB1提供的。
   連接在APB2(高速外設)上的設備有:GPIO_A-E、USART1、ADC1、ADC2、ADC3、TIM1、TIM8、SPI1、AFIO

使用HSE時鐘,程序設置時鐘參數(shù)流程:
1、將RCC寄存器重新設置為默認值   RCC_DeInit;
2、打開外部高速時鐘晶振HSE       RCC_HSEConfig(RCC_HSE_ON);
3、等待外部高速時鐘晶振工作      HSEStartUpStatus = RCC_WaitForHSEStartUp();
4、設置AHB時鐘         RCC_HCLKConfig;
5、設置高速AHB時鐘     RCC_PCLK2Config;
6、設置低速速AHB時鐘   RCC_PCLK1Config;
7、設置PLL              RCC_PLLConfig;
8、打開PLL              RCC_PLLCmd(ENABLE);
9、等待PLL工作          while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)
10、設置系統(tǒng)時鐘        RCC_SYSCLKConfig;
11、判斷是否PLL是系統(tǒng)時鐘     while(RCC_GetSYSCLKSource() != 0x08)
12、打開要使用的外設時鐘      RCC_APB2PeriphClockCmd()/RCC_APB1PeriphClockCmd()

 

下面是STM32軟件固件庫的程序中對RCC的配置函數(shù)(使用外部8MHz晶振)

void RCC_Configuration(void)

{

  RCC_DeInit();

  RCC_HSEConfig(RCC_HSE_ON);   //RCC_HSE_ON——HSE晶振打開(ON)

  HSEStartUpStatus = RCC_WaitForHSEStartUp();

  if(HSEStartUpStatus == SUCCESS)        //SUCCESS:HSE晶振穩(wěn)定且就緒

  {   

    RCC_HCLKConfig(RCC_SYSCLK_Div1);  //RCC_SYSCLK_Div1——AHB時鐘 = 系統(tǒng)時鐘

    RCC_PCLK2Config(RCC_HCLK_Div1);   //RCC_HCLK_Div1——APB2時鐘 = HCLK

    RCC_PCLK1Config(RCC_HCLK_Div2);   //RCC_HCLK_Div2——APB1時鐘 = HCLK / 2

    FLASH_SetLatency(FLASH_Latency_2);    //FLASH_Latency_2  2延時周期

    FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);       // 預取指緩存使能

    RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);    

   // PLL的輸入時鐘 = HSE時鐘頻率;RCC_PLLMul_9——PLL輸入時鐘x 9

    RCC_PLLCmd(ENABLE);

    while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) ;    

    RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);

   //RCC_SYSCLKSource_PLLCLK——選擇PLL作為系統(tǒng)時鐘

    while(RCC_GetSYSCLKSource() != 0x08);        //0x08:PLL作為系統(tǒng)時鐘

  }

 

  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |

  RCC_APB2Periph_GPIOC , ENABLE);

//RCC_APB2Periph_GPIOA    GPIOA時鐘

//RCC_APB2Periph_GPIOB    GPIOB時鐘

//RCC_APB2Periph_GPIOC    GPIOC時鐘

//RCC_APB2Periph_GPIOD    GPIOD時鐘

}

關鍵字:STM32  時鐘  處理器 引用地址:STM32各種時鐘的區(qū)別

上一篇:STM32 HAL 庫學習筆記之-------(系統(tǒng)時鐘配置)
下一篇:STM32f103時鐘系統(tǒng)簡介

推薦閱讀

隨著人們生活水平的不斷提高,對產品服務的要求也發(fā)生了變化,消費端開始升級并帶來新的挑戰(zhàn)和機遇。而服務機器人似乎為新的時代而生,逐步開始進入社會,進入家庭,服務于平民大眾。在2018世界機器人大會上,北京康力優(yōu)藍機器人科技有限公司創(chuàng)始人兼首席執(zhí)行官劉雪楠認為,服務機器人最大的市場是面向家庭的服務機器人,如果從商業(yè)價值的角度來講,最大的...
作為全球市場上重要的需求和應用大國,我國機器人產業(yè)起步雖然較晚,但發(fā)展速度和潛力卻十分驚人。近年來,隨著政策、企業(yè)、資本等要素的不斷助力與驅動,我國機器人發(fā)展也取得了舉世矚目的傲人成果,同時呈現(xiàn)出蒸蒸日上的發(fā)展動向與未來趨勢。 機器人被譽為“制造業(yè)皇冠上的明珠”,其是帶動產業(yè)轉型升級的強勁動力,是推動國民經濟發(fā)展的重要幫手,...
在過去幾個月中,不斷有關于 iPhone 12 Pro Max 外觀設計的猜測、謠傳、諜照、渲染圖等曝光;現(xiàn)在,Reddit 社區(qū)網友分享了一張新款 iPhone 的背面外殼圖,從外觀設計上非常像 iPhone 11 Pro Max,但由于加入了 LiDAR,麥克風往右挪了一點。  值得注意的是,上面的設計與我們之前看到的渲染圖有些不同。如果你還記得,幾周前傳出...
  為加強電化學儲能電站安全管理,進一步推進我國儲能產業(yè)健康有序發(fā)展,國家發(fā)展改革委、國家能源局近日組織起草了《電化學儲能電站安全管理暫行辦法(征求意見稿)》(以下簡稱《征求意見稿》),通過建立五項機制,全面提升儲能電站安全管理工作的規(guī)范化、科學化水平,促進行業(yè)健康發(fā)展。   以下為原文 關于對《電化學儲能電站安全管理暫行辦法...

史海拾趣

問答坊 | AI 解惑

網絡分析儀 資料

是繁體,屬于專家級看的了!…

查看全部問答∨

《畢業(yè)論文設計》基于單片機的信號發(fā)生器設計

我的08年畢業(yè)論文設計。所有資料都整理好!!包括源程序,Proteus仿真圖,PCB圖 …

查看全部問答∨

自制繪圖儀

繪圖儀結構圖: [local]1[/local] 走直線和畫圓的程序: #include "reg52.h" #include "math.h" sbit P00=P0^0;  // sbit P01=P0^1;  //起筆、提筆控制端口 sbit P02=P0^2;  //上 ...…

查看全部問答∨

問題:如何通過Tornado自帶的TCL命令實現(xiàn)對當前工程dependencies

不用tornado的圖形工具,直接用命令dependencies工程怎么實現(xiàn)?謝謝啦,…

查看全部問答∨

彩屏datasheet中有句話看不懂

在一塊彩屏的概述里,有這么一句話,不懂什么意思,上網也沒找到滿意的資料 …

查看全部問答∨

怎么用arm-uclibc-gcc

應該怎么在windows下安裝uclibc交叉編譯庫啊?怎么把它和keil拌定阿?…

查看全部問答∨

工作這點事!還必須得當回事!

我的第一份工作也許就是國慶后的學校面試招聘!也許是打包回家!好煩現(xiàn)在!因為我高考體檢檢查感染了肝功能不正常!雖說沒有傳染性!但又有那個公司會要我呢!我想誠實對待工作!希望老板也能誠實對待我吧!三年我很努力的學習!就是想用努力彌補我 ...…

查看全部問答∨

針對 Xilinx Spartan™-6 LX150 的電源參考設計

此參考設計旨在給Spartan 6 LX150及帶有TI Swift Integrated FETS的DC/DC轉換器供電…

查看全部問答∨

虛擬存儲器的總結

最近做了看了看虛擬存儲器的相關知識,覺得有必要總結一下,分享一下自己的理解吧。http://blog.chinaunix.net/space.php?uid=20937170&do=blog&id=2983528…

查看全部問答∨

AD574的模擬地和數(shù)字地的問題

請教大家一個問題,AD574的模擬地和數(shù)字地不接在一起可以正常工作嗎?…

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

最新單片機文章

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發(fā)圈

 
機器人開發(fā)圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 九龙城区| 苍溪县| 博野县| 巴林左旗| 凭祥市| 襄城县| 大安市| 蒙山县| 南投市| 巴林左旗| 承德县| 黑河市| 玉山县| 溆浦县| 永仁县| 庆阳市| 财经| 东海县| 茌平县| 新郑市| 江阴市| 靖江市| 绍兴县| 游戏| 馆陶县| 集贤县| 长子县| 崇文区| 丹棱县| 红原县| 雷州市| 平邑县| 蚌埠市| 新源县| 云南省| 武冈市| 萍乡市| 革吉县| 藁城市| 民权县| 湖南省|