• 新聞中心

    EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > stm32f10x_conf.h 與 stm32f10x.h

    stm32f10x_conf.h 與 stm32f10x.h

    作者: 時(shí)間:2016-11-24 來源:網(wǎng)絡(luò) 收藏
    新版的固件庫V3.0以上 main等源文件中不再直接包含stm32f10x_conf.h,而是stm32f10x.h,stm32f10x.h則定義了啟動(dòng)設(shè)置,以及所有寄存器宏定義,此文件中需要注意的有:

    1、device選擇

    本文引用地址:http://m.butianyuan.cn/article/201611/320683.htm

    #if !defined (STM32F10X_LD) && !defined (STM32F10X_LD_VL) && !defined (STM32F10X_MD) && !defined (STM32F10X_MD_VL) && !defined (STM32F10X_HD) && !defined (STM32F10X_HD_VL) && !defined (STM32F10X_XL) && !defined (STM32F10X_CL)

    #define STM32F10X_MD

    #endif

    此段代碼在stm32f10x.h的開始處,根據(jù)所用的器件 取消合適的注釋。我常用的是stm32f103c8t6 屬于Medium density Value Line devices.

    2、外部時(shí)鐘頻率選擇

    #if !defined HSE_VALUE

    #ifdef STM32F10X_CL

    #define HSE_VALUE ((uint32_t)25000000)

    #else

    #define HSE_VALUE ((uint32_t)8000000)

    #endif

    #endif

    注意STM32F10X_CL,STM32F10X_CL是stm32f105 和stm32f107 互聯(lián)型的device,用到此器件外部要選用25MHz的晶體,由于前面的代買沒有取消 的注釋,所以此處默認(rèn)的外部8MHz的晶體

    3、外設(shè)宏定義USE_STDPERIPH_DRIVER

    #if !defined USE_STDPERIPH_DRIVER

    #endif

    如果不適用片內(nèi)外設(shè),則不要取消 的注釋

    注意stm32f10x.h文件的最后有這樣的代碼:

    #ifdef USE_STDPERIPH_DRIVER

    #include "stm32f10x_conf.h"

    #endif

    stm32f10x_conf.h中包含了所有外設(shè)的頭文件,因此任意源文件只要包含了stm32f10x.h,就可以在源文件調(diào)用任意外設(shè)的函數(shù)。

    若有外設(shè)為使用到,在stm32f10x_conf.h注釋相應(yīng)部分,項(xiàng)目編譯時(shí)就不會(huì)在編譯去掉的外設(shè)。




    關(guān)鍵詞: stm32f10x_confhstm32f10

    評(píng)論


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

    關(guān)閉