阡陌 发表于 2024-1-21 13:41:06

STM32F1 库函数的宏定义


**1、USE_STDPERIPH_DRIVER 宏定义**

要在编译器中预定义这个宏:

![](https://file.mculoop.com/images/2024/01/11/202401111139003.png)

而且在编译器中仅仅定义这一个宏就可以了。STM32F10X_HD 这类的宏在编译器中选好 MCU 型号后就自动确定下来对应的宏了。

**2、HSE_VALUE 宏定义**

HSE_VALUE 需要根据实际使用的晶体频率修改,RCC_GetClocksFreq 中会用它来算出系统时钟。因为 USART_Init、I2S_Init、I2C_Init 用到了 RCC_GetClocksFreq,所以如果不修改 HSE_VALUE 为实际情况下的值会出现串口波特率错误等问题。不要直接修改 stm32f10x.h 中的定义,而要在 stm32f10x_conf.h 中重新定义 HSE_VALUE:

```c
#undef HSE_VALUE
#define HSE_VALUE    ((uint32_t)xxx)
```


页: [1]
查看完整版本: STM32F1 库函数的宏定义