久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1845|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

STM32時(shí)鐘樹(shù)系統(tǒng)淺析

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
本帖主要是討論stm32F103系列IC,同類的stm32的時(shí)鐘樹(shù)系統(tǒng)與F103系列相差不大,可做參考由于本人能力有限,難免會(huì)出現(xiàn)錯(cuò)誤,歡迎批評(píng)指正!!!

時(shí)鐘是一顆ic的心臟,為程序執(zhí)行提供基礎(chǔ)步調(diào);可以說(shuō),一個(gè)單片機(jī)的性能強(qiáng)不強(qiáng),與時(shí)鐘頻率直接掛鉤;
下面我們現(xiàn)在簡(jiǎn)單介紹一下STM32F103系列的時(shí)鐘樹(shù),參考附件截圖;

STM32F10xxx參考手冊(cè)RCC章節(jié)中可以看出,時(shí)鐘樹(shù)包含兩個(gè)外部輸入時(shí)鐘,一個(gè)外部輸出時(shí)鐘和兩個(gè)內(nèi)部振蕩時(shí)鐘;
兩個(gè)外部輸入時(shí)鐘分別是:HSE,LSE
一個(gè)外部輸出時(shí)鐘是:MCO
兩個(gè)內(nèi)部振蕩時(shí)鐘分別是:HSI,LSI
還包含了PLL鎖相環(huán)和預(yù)分頻器,這些共同組成了整個(gè)F103的時(shí)鐘樹(shù)系統(tǒng);

我該如何配置時(shí)鐘呢?以打開(kāi)gpio時(shí)鐘為例:
第一步:等待HSE,LSE,HSI,LSI起振,起振成功之后,配置PLL Source和PLL MUL;
第二步:設(shè)置SYSCLK Source,可以默認(rèn)設(shè)置PLL;
第三步:設(shè)置AHB總線預(yù)分頻系數(shù),使其總線頻率不超過(guò)72MHZ;
第四步:設(shè)置APB1和APB2總線預(yù)分頻系數(shù),使其總線頻率不超過(guò)最大總線頻率72MHZ和36MHZ;
第五步:打開(kāi)GPIO時(shí)鐘使能,使其能正常工作;



這樣我就配置好了一個(gè)時(shí)鐘,下面是代碼示例:
  1. /* enable lse clock*/
  2. hw_rcc_set_lse_enable(true);
  3. hw_rcc_lse_wait_ready();

  4. /* enable lsi clock */
  5. hw_rcc_set_lsi_enable(true);
  6. hw_rcc_lsi_wait_ready();

  7. /* enable hse clock */
  8. hw_rcc_set_hse_enable(true);
  9. hw_rcc_hse_wait_ready();

  10. /* open hsi clock */
  11. hw_rcc_set_hsi_enable(true);
  12. hw_rcc_hsi_wait_ready();

  13. /* configure pll clock source */
  14. rcc_set_pll_multiplication_factor(clock->pll_mul);
  15. rcc_set_pll_source(clock->pll_source);

  16. /* enable pll clock */
  17. hw_rcc_set_pll_enable(true);
  18. hw_rcc_pll_wait_ready();

  19. /* configure anb,apb1,apb2 prescaler */
  20. rcc_set_hpre(clock->ahb_prescaler);
  21. rcc_set_ppre1(clock->apb1_prescaler);
  22. rcc_set_ppre2(clock->apb2_prescaler);

  23. /* set system clock source */
  24. rcc_set_sysclk_source(clock->sysclk_source);

  25. /* enable gpio clock */
  26. hw_rcc_apb2periph_clock_enable(RCC_APB2ENR_IOPAEN, IOPAEN);
  27. hw_rcc_apb2periph_clock_enable(RCC_APB2ENR_IOPBEN, IOPBEN);
  28. hw_rcc_apb2periph_clock_enable(RCC_APB2ENR_IOPCEN, IOPCEN);
  29. hw_rcc_apb2periph_clock_enable(RCC_APB2ENR_IOPDEN, IOPDEN);
  30. hw_rcc_apb2periph_clock_enable(RCC_APB2ENR_IOPEEN, IOPEEN);
  31. hw_rcc_apb2periph_clock_enable(RCC_APB2ENR_IOPFEN, IOPFEN);
  32. hw_rcc_apb2periph_clock_enable(RCC_APB2ENR_IOPGEN, IOPGEN);
復(fù)制代碼

另外在時(shí)鐘樹(shù)上,發(fā)現(xiàn)cortex系統(tǒng)時(shí)鐘只有AHB時(shí)鐘的1/8,也就是說(shuō)72M的系統(tǒng)時(shí)鐘下,內(nèi)核只有9M的速度,與內(nèi)核相關(guān)外設(shè)最大時(shí)鐘頻率只有9M。

配置時(shí)鐘樹(shù),需要按照參考手冊(cè)上的來(lái),不能超過(guò)各個(gè)總線的最大時(shí)鐘頻率的限制;
可以通過(guò)標(biāo)準(zhǔn)庫(kù)和HAL庫(kù)已經(jīng)提供了相關(guān)的初始化接口,直接就可以配置到最大的速度;
也可以通過(guò)STM32CubeMX這種圖形化工具自己來(lái)配置各個(gè)時(shí)鐘,直接生成代碼;

51hei截圖20230806174949.png (296.38 KB, 下載次數(shù): 109)

51hei截圖20230806174949.png

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日韩精品在线免费观看视频 | 国产片一区二区三区 | 亚洲欧美另类在线观看 | 欧美精品一区二区在线观看 | 免费视频一区二区三区在线观看 | 一区二区三区日 | 国产精品久久久 | 在线视频亚洲 | 国产精品亚洲第一 | 日韩久久久久久久久久久 | 免费av一区二区三区 | 日韩国产精品一区二区三区 | 91免费观看 | 国产精品国产a级 | 黄色一级电影在线观看 | 日本三级电影在线看 | 精品国产乱码久久久久久影片 | 99精品欧美一区二区三区综合在线 | 亚洲欧美视频一区 | 精品国产乱码久久久久久丨区2区 | 91视频91| 操操日 | 欧美一区二区三区在线播放 | 福利一区视频 | 日本在线黄色 | 风间由美一区二区三区在线观看 | 国产成人免费视频网站视频社区 | 久久久久久亚洲 | 91久久精品国产 | 日本成年免费网站 | 久久日韩精品一区二区三区 | 91综合在线视频 | 久久久久久国产精品免费免费狐狸 | 国产精品久久777777 | 欧美在线观看网站 | 日本午夜视频 | 中文字幕亚洲在线 | 国产91丝袜在线播放 | 国产探花在线精品一区二区 | 毛片a级毛片免费播放100 | 九九热这里只有精品在线观看 |