stm32 HAL庫怎麼得到外設頻率的HAL_RCC_GetPCLK1Freq()

當需要知道外設頻率的時候,調用下面的函數得到

/* Get PCLK1 frequency */
  pclk1 = HAL_RCC_GetPCLK1Freq();

在這裏插入圖片描述
從上面的時鐘樹知道,外設時鐘爲 HCLK 除以 PPRE1分頻器

SystemCoreClock即HCLK在stm32f1xx.c 中被宏定義,在stm32f1xx.h中定義爲外部變量extern uint32_t SystemCoreClock; 以後在要使用此宏的c文件中只要包函stm32f1xx.h這個頭文件就可以了。
在這裏插入圖片描述
RCC->CFGR是 時鐘配置寄存器(RCC_CFGR),與上RCC_CFGR_PPRE1即得到以下的8 ,9 ,10位,再右移8位。

在這裏插入圖片描述
查手冊PPRE1是低速外設分頻器
在這裏插入圖片描述

const uint8_t APBPrescTable[8U] = {0, 0, 0, 0, 1, 2, 3, 4};

當PPRE1爲4即100的時候,分頻爲右移1位,即2分頻率。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章