STM32建立工程问题汇总

老版本MDK,例如MDK4

工程内容如下:

User文件夹中存放main.c文件,用户中断服务函数(stm32f1xx.it.c),用户配置文件(stm32f1xx_hal_conf.h)等用户程序文件,或者mdk启动程序。

obj文件夹中存放hex或者mdk启动程序。类似于mdk5中的output文件夹

CORE、Libraries、Obj、object、User等大部分工程内容都为系统文件(有的还有start文件夹也是是底层启动文件),可由对应芯片的固件包中获取,而需要移植或者编辑的文件都放在自己建立的文件夹里。

类似于外设,led,key,sys,delay等文件放在自己建的文件夹中,即上述例工程中的MY_wen_jian文件夹,如图:

MDK5

使用了正点原子的工程模版,工程文件夹结构如下:

在这种工程下,

output中存放编译后输出的hex文件;

Projects文件夹下存放工程文件,包括:MDK-ARM,用于存放MDK工程;

User文件夹下还是存放用户程序文件如

Drivers 文件夹下面存放驱动层代码,包括:

1,BSP:正点原子提供的板级支持包驱动代码(原HARDWARE文件夹下的代码),如:LED、BEEP、KEY、EXTI、TIMER、WDG...等

2,CMSIS:ARM提供的CMSIS代码(主要包括各种头文件和启动文件(.s文件),为了方便使用,减少占用空间,我们进行了精简)

3,STM32F1xx_HAL_Driver:ST提供的F1xx HAL库驱动代码,如下图:

BSP文件夹中存放各种外设程序,SYSTEM文件夹中存放delay、sys、usart等文件,如下图:

至于 Middlewares(中间层)文件夹中存放 中间层组件代码,包括:

1,正点原子提供的中间层代码:USMART、MALLOC、TEXT、T9INPUT、PICTURE、GUI、MJPEG、各种ATK开头的LIB、NES、SMS、QR_ENCODE等

2,第三方中间层代码:FATFS、USB、LWIP、各种OS、各种GUI等

对于我来说暂时用不到。

不使用正点原子模版工程文件如下:

模版个文件内容大致一样。

相关推荐
HRTOS7 分钟前
HRTOS 4.0 本轮测试与升级工作阶段性总结
经验分享·单片机·嵌入式硬件·51单片机
‎ദ്ദിᵔ.˛.ᵔ₎23 分钟前
STM32 时钟树与 RCC
stm32
kkkkkkkkkk_Z1 小时前
新手自学嵌入式 | 学习日记:EPIT/GPT定时器、输入捕获与PWM、UART通信与Modbus协议
单片机·gpt·学习
笨笨饿1 小时前
#142_VS Code.map文件插件的用法
git·python·stm32·单片机·嵌入式硬件·物联网·vim
三佛科技-187366133971 小时前
HN62512是什么芯片?HN62512多规格5V/12V500mA,24V350mA芯片解析
单片机·嵌入式硬件
早八晚十啊2 小时前
双MCU架构:基于视觉反馈的简易自行瞄准装置(激光云台控制)
单片机·嵌入式硬件
恒锐丰科技林技术员2 小时前
EG27517 高速低侧单通道栅极驱动芯片解析
经验分享·嵌入式硬件·硬件工程
Zw-awa2 小时前
让小车沿线转得顺:循迹位置环 PID
stm32
铅笔小新z2 小时前
【stm32】RTC(实时时钟)
stm32·单片机·实时音视频
Yiran_G2 小时前
LoRa数据帧设计与工程实现:地址、长度、校验及版本兼容
网络·嵌入式硬件·物联网