如何建立一个标准的工程模板,我用的是stm32F103C8芯片的

建立标准的工程模板

1.新建一个Template0文件夹,创建好后在该文件目录下分别创建CORE 、FWLIB、OBJ、SYSTEM、USER等五个子文件;

CORE:用来存放核心文件和启动文件;
FWLIB:用来存放库函数源码文件;
OBJ:用来存放编译过程文件和hex文件;
SYSTEM:用来存放共用代码;
USER:用来存放工程文件和主程序main。

2.接下来打开keil5MDK,在USER目录下新建一个工程,取名为Template0;

之后再选择自己开发板上芯片的型号(要提前安装好对应的器件包),因为我是自己买的一个最小系统板,所以这里我选择的芯片是stm32F103C8

之后会出现一个安装组件画面,直接取消就好了。

这时候打开USER目录,有新生成的几个文件和文件夹,我们可以不用理。

3.现在打开下载好的官方固件库,定位到D:\桌面\stm32标准库\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver下,把目录下的src和inc复制到我们刚新建的FWLIB下。
src存放的是固件库的.c文件,inc存放的是固件库的.h文件。

4.同样定位到D:\桌面\stm32标准库\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport将下面的两个文件复制到COER下

再定位D:\桌面\stm32标准库\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm讲相关的启动文件同样复制到COER目录下,这里我查了相关资料,我所用的芯片是中容量,闪存为64K的,所以把后缀名为md.s的复制过去。


5.再定位到D:\桌面\stm32标准库\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x将下面的三个文件复制到USER目录下

然后再定位到D:\桌面\stm32标准库\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template将下面的四个文件同样复制到USER下

6.前面的几个步骤,我们已经将我们需要的文件从固件库复制到我们的工程目录下了,接下来打开keil5,将这些文件加入我们的工程中
I.新建跟我们文件夹相同名字的源组

添加所需的文件(注意core那要加入启动文件的,文件类型是.s,到时注意更改)

7.之后编译文件,在这之前设置我们编译过程的中间文件放在OBJ文件夹下(魔术棒setting那可以设置)

8.之后在魔术棒下添加头文件(定位到inc目录下)

9.配置宏定义变量,因为我是中容量,所以是MD,可以根据那个启动文件来改。

10.再将老师提供的实验例程下SYSTEM下的文件夹复制到我们的文件夹下,在MDK中用同样的方法加入.c和.h文件,然后一个标准的工程模板就建好了。

好了,已经建立好一个标准的工程模板了。

stm32建立标准的工程模板相关推荐

  1. STM32的标准库及其使用

    单片机的开发工作量,主要集中在两个地方,一是调通各种外设,二是实现产品功能. 像较高级的语言,比如c++/java/python等.因为将底层操作进行了封装,所以只需要集中关注第二点.事实上,越到后, ...

  2. 将STM32的标准库编译成lib

    转载自:http://www.cnblogs.com/zyqgold/p/3189719.html 以前一直使用STM32的标准库,需要一步步地将代码加进去,将编译选项设置好,然后再编译整个工程. 这 ...

  3. 【STM32】标准库与HAL库对照学习教程八--串口通信详解

    [STM32]标准库与HAL库对照学习教程八--串口通信详解 一.前言 二.准备工作 三.通信的基本概念 1.通信方式 2.串行通信与并行通信 (1)串行通信 (2)并行通信 3.异步通信与同步通信 ...

  4. 移植好U8g2图形库的STM32F407标准库工程模板,0.96寸OLED驱动程序

    移植好U8g2图形库的STM32F407标准库工程模板,用的0.96寸OLED屏(SSD1306),用硬件IIC驱动. 花了一晚上时间去移植.开发板主控MCU用的是STM32F407VET6,I2C接 ...

  5. VB无所不能之五:建立“标准”DLL动态链接库文件(1)

    VB无所不能之五:建立"标准"DLL动态链接库文件(1) --作者:钟声 博客地址:http://useway.blog.51cto.com 动态链接库经常被认为是VC或者Deph ...

  6. 浪潮服务器建立虚拟驱动器,像《十二时辰》一样去建立标准! 浪潮这款服务器做到了...

    原标题:像<十二时辰>一样去建立标准! 浪潮这款服务器做到了 这个夏天,<长安十二时辰>制霸屏幕 开画至今豆瓣评分达到8.8分 现已成功"出海" 在Amaz ...

  7. stm32F051系列教程 前哨篇 建立一个KEIL工程模板

    前哨篇:如何建立一个KEIL工程模板 本节的内容主要针对的是初学者,有个熟练使用KEIL建立ARM工程项目的朋友可以略过: 首先大家安装KEIL for arm 4.3版本以上后,找到桌面的keil图 ...

  8. 【ArcGIS风暴】CASS建立标准分幅图框并在ArcGIS中DOM批量分幅案例教程

    文章目录 一.CASS建立标准格网 二.ArcGIS中批量格网分幅 1. 加载数据 2. 图幅编号连接属性表 2. 批量分幅 一.CASS建立标准格网 参照:[CASS精品教程]CASS9.1生成标准 ...

  9. 【STM32】标准库与HAL库对照学习教程六--位带操作

    [STM32]标准库与HAL库对照学习教程六--位带操作 一.前言 二.准备工作 三.位带介绍 1.位带操作 2.STM32位带及位带别名区域 四.位带区与位带别名区地址转换 五.GPIO的位带操作 ...

最新文章

  1. React文档 state and lifecycle
  2. MIME types [记录]
  3. spring+mybatis+atomikos 实现JTA事务
  4. oracle软件静默安装程序,【oracle】静默安装 oracle 11gr2
  5. java等待5秒_Java并发编程-主线程等待子线程解决方案
  6. 数据库复习总结(4)-数据库的分离、附加、脚本的创建
  7. 手把手教你实现机器学习SVM算法
  8. 【渝粤教育】国家开放大学2018年秋季 0727-22T思想道德修养与法律基础 参考试题
  9. 基于SSM的MSDN资源发布网站
  10. 各浏览器下图片垂直居中的方法:
  11. Tomcat 调优之从 Linux 内核源码层面看 Tcp backlog
  12. vscode超好玩好用的插件
  13. 集成谷歌地图不显示的问题
  14. python 进行文本情感分析
  15. 有趣的java编程题_java编程题 有趣的数
  16. Linux 脚本部署应用宝,应用宝新版继续整合资源,腾讯移动分发再加力
  17. 测试温度时共模电压的考虑
  18. 不同开发语言之Python、Java、Golang对比
  19. QT入门第一天平台使用规则和代码逻辑学习(初学者)
  20. Python 超简单爬取微博热搜榜数据

热门文章

  1. suse linux 12 sp5 开启FTP服务方法
  2. 腾讯云直播 tcplayer, 前端 vue 项目经验记录
  3. java fire forget,响应式协议RSocket介绍
  4. 只有曾失去的才知道珍惜
  5. 十一、Oracle 触发器
  6. 七年级计算机的发展是教案,七年级信息技术上学期 第三课计算机的发展与应用 教案...
  7. 微信小程序云开发之云数据库入门
  8. mysql为什么要分库_mysql为什么要分库分表?
  9. 优雅的接口防刷处理方案
  10. jmeter复杂性能测试场景设计