当前位置:网站首页>STM32 基于固件库的工程模板的建立
STM32 基于固件库的工程模板的建立
2022-08-11 05:25:00 【LIGAZN菜鸟】
STM32不同于C51,在新建工程时要麻烦很多,其中大概有十一个步骤。
1. 新建一个TEMPLATE文件夹,在这个文件夹中新建四个文件夹CORE、USER、FWLIP、OBJ
2.打开MDK,新建一个TEMPLATE项目,保存在USER文件夹中,芯片包选择STM32F103ZET6
3. 把固件stm32\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver路径下大的inc和src复制到工程文件夹的FWLIP文件夹中
固件包中的文件
复制好的工程模板中的文件
4. 把固件包stm32\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport两个文件复制到工程模板中的CORE路径中
固件包中的文件
复制好的工程模板中的文件
5. 复制启动文件。把固件包中的stm32\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm一个启动文件(大于128k为大容量用hd,大于64k小于128k为中等容量用md,小于64k的为小容量用ld)复制到CORE目录中
固件包中的文件
复制好的工程模板中的文件
6.复制stm32\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x中的三个文件到USER目录
固件包中的文件
复制好的工程模板中的文件
7. 复制stm32\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template路径中的四个文件到USER目录
固件包中的文件
复制好的工程模板中的文件
USER目录下共有七个.c和.h文件
8. 文件复制已经完成,打开MDK在新建的项目中添加FWLIP、CORE、USER文件夹,并添加对应的文件。其中FWLIP中添加src中的所有文件,USER添加三个C文件,CORE目录添加.C和.S文件
9. MDK中魔术棒中output勾选create hex
10. 设置头文件路径
在下图设置中include path中添加所有头文件的子目录(一定要是最后一级目录)
10. 在魔术棒中Define添加宏定义STM32F10X_HD,USE_STDPERIPH_DRIVER,这个宏定义一定不能错,否则会出问题
11. 主函数清空,写入要写的主函数内容,若编译报错,尝试删除OBJ文件夹中的所有文件。
这样,基于固件库的工程模板建好了
总结:在添加c文件后,要注意在魔术棒中添加头文件的路径,因为C文件和H文件不一定在同一个文件夹中,如果不设置头文件路径,则找不到头文件
边栏推荐
- Realize data exchange between kernel and userspace through character device virtual file system (passed based on kernel 5.8 test)
- 小程序技术原理分析
- 梅科尔工作室-HarmonyOS应用开发的第二次培训
- mAPH - Waymo dataset
- 梅科尔工作室-PR第三次培训笔记(效果与转场及插件使用)
- Zhejiang University School of Software 2020 Guarantee Research Computer Real Question Practice
- vmware不可恢复错误vmui
- Maykel Studio - Django Web Application Framework + MySQL Database Third Training
- CMT2380F32模块开发11-RTC例程
- Diagnostic Log and Trace——dlt的编译和安装
猜你喜欢
Diagnostic Log and Trace——dlt的编译和安装
安全帽识别-施工安全的“监管者”
Maykle Studio - Second Training in HarmonyOS App Development
360°大视野安全帽识别系统-深度学习智能视频分析
梅科尔工作室-DjangoWeb 应用框架+MySQL数据库第四次培训
Hard hat identification
TAMNet: A loss-balanced multi-task model for simultaneous detection and segmentation
目标检测——Faster R-CNN 之 Fast R-CNN
咕咚vs悦跑圈的竞品分析
珍爱网App竞品分析报告
随机推荐
梅科尔工作室-HarmonyOS应用开发的第二次培训
Maykel Studio - Django Web Application Framework + MySQL Database Second Training
10 个超好用的 DataGrip 快捷键,快加入收藏! | 实用技巧
Hardhat Recognition System - Solving Regulatory Conundrums
net6的Web MVC项目实现限流功能
梅科尔工作室-DjangoWeb 应用框架+MySQL数据库第二次培训
Mei cole studios - fifth training DjangoWeb application framework + MySQL database
CMT2380F32模块开发4-UART例程
CNN-based Point Cloud De-Noising
Diagnostic Log and Trace——开发人员如何使用 DLT
SCNet:Semantic Consistency Networks for 3D Object Detection
Diagnostic Log and Trace——dlt的编译和安装
推出 Space Marketplace 测试版 | 新发布
LAGRANGIAN FLUID SIMULATION WITH CONTINUOUS CONVOLUTIONS
aPaaS和iPaaS的区别
安全帽识别系统-解决监管难题
Kotlin 增量编译的新方式 | 技术解析
Wisdom construction site safety helmet identification system
Generic kernel and userspace Makefiles
自定义形状seekbar学习--方向盘view