欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: Stm32時(shí)鐘體系 [打印本頁]

作者: 1130187084    時(shí)間: 2020-12-19 08:15
標(biāo)題: Stm32時(shí)鐘體系
1、時(shí)鐘體系
(1)參考手冊(cè) STM32F4xx中文參考手冊(cè).pdf 第106頁
(2)時(shí)鐘源
可以使用三種不同的時(shí)鐘源來驅(qū)動(dòng)系統(tǒng)時(shí)鐘 (SYSCLK):
● HSI 振蕩器時(shí)鐘,高速內(nèi)部時(shí)鐘
● HSE 振蕩器時(shí)鐘,高速外部時(shí)鐘,外接晶振8MHz
● 主 PLL (PLL) 時(shí)鐘,倍頻后可達(dá)168MHz
器件具有以下兩個(gè)次級(jí)時(shí)鐘源:
●32 kHz 低速內(nèi)部 RC (LSI RC),該 RC 用于驅(qū)動(dòng)獨(dú)立看門狗,也可選擇提供給 RTC 用于停機(jī)/待機(jī)模式下的自動(dòng)喚醒。
● 32.768 kHz 低速外部晶振(LSE 晶振),用于驅(qū)動(dòng) RTC 時(shí)鐘 (RTCCLK)
對(duì)于每個(gè)時(shí)鐘源來說,在未使用時(shí)都可單獨(dú)打開或者關(guān)閉,以降低功耗。
file:///C:/Users/XIANGF~1/AppData/Local/Temp/ksohtml/wpsCE78.tmp.jpg
2、修改系統(tǒng)文件
(1)其實(shí)第一個(gè)執(zhí)行的文件是匯編文件:startup_stm32f40_41xxx.s
        .棧的初始化,提供函數(shù)調(diào)用的時(shí)候進(jìn)行現(xiàn)場(chǎng)保護(hù)和現(xiàn)場(chǎng)恢復(fù)
        .堆的初始化,為申請(qǐng)內(nèi)存提供空間,調(diào)用malloc
        .執(zhí)行Reset_Handler,意思說上電復(fù)位后執(zhí)行的動(dòng)作
                .執(zhí)行SystemInit函數(shù)
                .跳轉(zhuǎn)到main函數(shù)
(2)系統(tǒng)初始化函數(shù)SystemInit
void SystemInit(void)
{
......
  /* Configure the System clock source, PLL Multiplier and Divider factors,
     AHB/APBx prescalers and Flash settings ----------------------------------*/
  SetSysClock();                //設(shè)置系統(tǒng)時(shí)鐘源
}
(3)系統(tǒng)時(shí)鐘源設(shè)置函數(shù)SetSysClock
static void SetSysClock(void)
{
........................
    /* Configure the main PLL */
    RCC->PLLCFGR = PLL_M | (PLL_N << 6) | (((PLL_P >> 1) -1) << 16) |
                   (RCC_PLLCFGR_PLLSRC_HSE) | (PLL_Q << 24);
}
PLL時(shí)鐘源計(jì)算公式:
#define PLL_M      25
#define PLL_Q      7
#define PLL_N      336
#define PLL_P      2
f(PLL 常規(guī)時(shí)鐘輸出) = f(PLL 時(shí)鐘輸入) × (PLLN / PLLM) / PLLP
                             = 8M * (336 / 25) / 2
                           = 53.76
結(jié)果與中文參考手冊(cè)中所說的168MHz不相吻合?
由于官方的代碼是使用的外部晶振25MHz,但GEC-M4是使用的8M,所以要進(jìn)行修改。
修改以下兩個(gè)地方:
(1)system_stm32f4xx.c的254行
#define PLL_M      25
修改為:#define PLL_M      8
(2)stm32f4xx.h的127行
#define HSE_VALUE    ((uint32_t)25000000)
修改為: #define HSE_VALUE    ((uint32_t)8000000)
修改不了?
打開該文件所在文件件,將只讀的√去掉,即可修改,改完之后,將權(quán)限重新設(shè)為只讀。
試一試:
調(diào)節(jié)PLL_N的值為432的時(shí)候,那么CPU跑的頻率能夠高達(dá)216MHz,感受超頻的快感!
        調(diào)節(jié)PLL_N的值為168的時(shí)候,那么CPU跑的頻率能夠高達(dá)84 MHz,感受蝸牛的速度!
項(xiàng)目經(jīng)驗(yàn):
        調(diào)節(jié)CPU的運(yùn)行頻率,來控制系統(tǒng)的性能與功耗。比較典型的例子就是說手機(jī)/筆記本電腦都有高性能模式、平衡模式、低功耗模式。
M4開發(fā)板
        高性能                216MHz,最高能夠?MHz
        平衡模式        168MHz
        低功耗                84MHz,最低能夠低到8MHz





歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1