KEIL中的 USE_STDPERIPH_DRIVER 宏定义

    在项目中使用stm32标准外设库(STM32F10x Standard Peripherals Library)的时候,我们会在项目的选项中预定义两个宏定义:USE_STDPERIPH_DRIVER, STM32F10X_MD,如下图:

                    

这两个的作用是什么呢?

1、 USE_STDPERIPH_DRIVER : to use or not the peripheral’s drivers in application code (i.e. code will be based on direct access to peripheral’s registers rather than drivers API) , this option is controlled by the #define USE_STDPERIPH_DRIVER

    即这个定义控制了是否在应用中启用外设驱动。我们使用标准外设库本来就为了方便控制外设,所以要添加这个定义,以启用外设驱动。

2、STM32F10X_MD:

    STM32有几个大类:

 

复制代码

  /* #define STM32F10X_LD_VL */   /*!< STM32 Low density Value line devices */ 

  /* #define STM32F10X_LD */      /*!< STM32 Low density devices */ 


  /* #define STM32F10X_MD_VL */   /*!< STM32 Medium density Value line devices */ 

  /* #define STM32F10X_MD */      /*!< STM32 Medium density devices */ 
  /* #define STM32F10X_HD_VL */   /*!< STM32 High density Value line devices */ 
  /* #define STM32F10X_HD */      /*!< STM32 High density devices */ 

  /* #define STM32F10X_XL */      /*!< STM32 XL density devices */ 

  /* #define STM32F10X_CL */      /*!< STM32 Connectivity line devices */ 

复制代码

 

每种类别都有所区别,例如sram或者flash或者外设数量不一样,所以stm32标准外设库必须根据你使用的处理器来做相应的预处理。

This define will control the declaration of the following part of the Standard Peripherals library:

  • IRQ channel definition
  • Peripheral memory mapping and physical registers address definition
  • Peripheral pointer declaration and driver header file inclusion
  • Product miscellaneous configuration: external quartz (HSE) value…
  • Peripheral with Features w/ different/incompatible implementation across the family

Note : This define doesn’t apply to peripheral drivers, these drivers are always supporting features of the family’s superset.

User has only to select which device he will use by controlling preprocessor define declared in stm32f10x.h file ( No selected device by default) then the library will be configured accordingly。

一般说STM32单片机的命名都是STM32F103XYZW这样的方式,其中X表示引脚数,Y表示ROM容量,Z表示封装方式,W表示工作温度范围,比如RBT6表示为64引脚、128KB和LQFP封装,工业温度范围。
针对ROM容量的字符,表示的容量是:
6-32KB
8-64KB
B-128KB
C-256KB
D-384KB
E-512KB
F-768KB
G-1024KB
其中:
ROM容量为16~32K就是LD
64K~128K的就是MD
256~512K的就是HD
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值