新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > stm32系統(tǒng)時(shí)鐘配置問(wèn)題

        stm32系統(tǒng)時(shí)鐘配置問(wèn)題

        作者: 時(shí)間:2016-11-27 來(lái)源:網(wǎng)絡(luò) 收藏
        系統(tǒng)從上電復(fù)位到72mz配置好之前,提供時(shí)鐘的是內(nèi)如高速rc振蕩器提供8MZ的頻率,這個(gè)由下面void SystemInit (void)函數(shù)的前面的一部分代碼來(lái)完成的和保證的:



        RCC->CR |= (uint32_t)0x00000001;

        本文引用地址:http://www.104case.com/article/201611/322423.htm


        #ifndef STM32F10X_CL
        RCC->CFGR &= (uint32_t)0xF8FF0000;
        #else
        RCC->CFGR &= (uint32_t)0xF0FF0000;
        #endif


        RCC->CR &= (uint32_t)0xFEF6FFFF;


        RCC->CR &= (uint32_t)0xFFFBFFFF;


        RCC->CFGR &= (uint32_t)0xFF80FFFF;

        #ifdef STM32F10X_CL

        RCC->CR &= (uint32_t)0xEBFFFFFF;


        RCC->CIR = 0x00FF0000;


        RCC->CFGR2 = 0x00000000;
        #elif defined (STM32F10X_LD_VL) || defined (STM32F10X_MD_VL) || (defined STM32F10X_HD_VL)

        RCC->CIR = 0x009F0000;


        RCC->CFGR2 = 0x00000000;
        #else

        RCC->CIR = 0x009F0000;
        #endif

        #if defined (STM32F10X_HD) || (defined STM32F10X_XL) || (defined STM32F10X_HD_VL)
        #ifdef DATA_IN_ExtSRAM
        SystemInit_ExtMemCtl();
        #endif
        #endif

        接著void SystemInit (void)調(diào)用 SetSysClock();函數(shù),將系統(tǒng)時(shí)鐘配置到72m,將AHB,APB1,APB2等外設(shè)之前的時(shí)鐘都配置好,然后切換到72mz下運(yùn)行。所以在使用哪個(gè)外設(shè)的時(shí)候,只需要使能相應(yīng)的外設(shè)時(shí)鐘就可以了



        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 长汀县| 龙泉市| 中宁县| 玉田县| 肇州县| 望城县| 岐山县| 尚义县| 嵊州市| 句容市| 江口县| 哈巴河县| 麻城市| 自贡市| 廉江市| 仪陇县| 民权县| 瑞金市| 新绛县| 长岭县| 昌邑市| 宝清县| 延边| 赤水市| 溧水县| 苗栗市| 蕉岭县| 辽源市| 那曲县| 襄城县| 北辰区| 洛宁县| 开阳县| 太原市| 清流县| 府谷县| 柳河县| 通山县| 内黄县| 白河县| 社会|