STM32F1 库函数的宏定义
1、USE_STDPERIPH_DRIVER 宏定义
要在编译器中预定义这个宏:

而且在编译器中仅仅定义这一个宏就可以了。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:
#undef HSE_VALUE
#define HSE_VALUE ((uint32_t)xxx)
版权声明:本文为 阡陌 的原创文章,遵循「CC BY-NC-SA 4.0」版权协议。若转载,请附上本文链接及本声明。
本文地址:https://www.mculoop.com/archives/165.html
若对本文有疑问可在评论区留言,我们看到后会尽量解答。