stm32新建项目编译即出现大量报错,如何解决

太长时间没用过新建工程了,导致忘记了怎么新建工程。。。。。

当编译出现大量报错时,如果文件都已经正确放入文件夹,先查看编译器类型是否选对,如果选对且正确添加到工程。

下面看看编译器版本是否选对

选择默认5版本。

还有一项是记得在C/C++里定义这个宏

为什么要定义USE_STDPERIPH_DRIVER这个宏?

程序的执行是从"main.c"文件开始的,其中必须包含有头文件"stm32f10x.h"。

我们打开"stm32f10x.h",按下"Ctrl+F"键,查找USE_STDPERIPH_DRIVER,在"Find What"栏中输入"USE_STDPERIPH_DRIVER"。

如图所示。点击"Find Next",出现"USE_STDPERIPH_DRIVER"对应的代码行,重复上边操作三次,第三次的时候我们能找到如图所示代码段。

这段代码的意思是,只有用预编译指令预定义了"USE_STDPERIPH_DRIVER",才会将"stm32f10x_conf.h"包含进"stm32f10x.h"中,从而被"main.c"用到。这就解释了,为什么我们没有在"main.c"中包含"stm32f10x_conf.h",而在编译之后却被包含进了"main.c"中。

"stm32f10x_conf.h"文件相当于一个开关文件,如果要用到STM32固件库驱动标准外设,则外设驱动头文件是必不可少的。如"stm32f10x_gpio.h",在"stm32f10x_conf.h"中我们通过代码#include "stm32f10x_gpio.h"来实现这个操作。

在C/C++预定义中加入"USE_STDPERIPH_DRIVER"就是允许"使用标准外设驱动"了。

相关推荐
黑妹天下第一乖7 小时前
第 08 讲:阿加犀 AidGenSE 端侧大模型服务化与 OpenAI 兼容接口
人工智能·嵌入式硬件·深度学习·机器人·iot
辰哥单片机设计7 小时前
漏水传感器(STM32)
stm32·单片机·嵌入式硬件
恶魔泡泡糖8 小时前
stm32F103C8T6标准库串口接收之多串口基础应用5
stm32·单片机·嵌入式硬件
木子单片机8 小时前
基于51单片机计步器—无线蓝牙APP上传
单片机·嵌入式硬件·51单片机·keil
智者知已应修善业9 小时前
【51单片机只有一个8*8点阵数据如何滚动起来一片595+一组IO+花样】2022-1-15
c++·经验分享·笔记·单片机·蓝桥杯·硬件架构
恒锐丰科技林技术员9 小时前
EG2123A 三相独立半桥驱动芯片解析与工程应用
经验分享·嵌入式硬件·硬件工程
硅基手札9 小时前
【Linux 内核专栏 13】快IO层
linux·服务器·嵌入式硬件
李日华大战鸡红9 小时前
滑膜观测器(学习记录)
stm32·单片机·学习·matlab·机器人
白搞电子9 小时前
ESP32-S31 项目如何制作 Windows 一键烧录包:完整镜像、esptool 与数据边界
windows·stm32·单片机
xiangw@GZ10 小时前
纽扣电池型号
嵌入式硬件