STM32开发环境--使用MDK建立一个工程
STM32开发环境--使用MDK建立一个工程
该工程模版是基于库函数基础制作而成,其中有借鉴相关资料。虽然工程模版一旦建立,以后任何项目只需套用即可,但考虑到长时间不使用,在将来某天可能会突然用到,再查询资料搭建比较费时间和精力。故在此做一个简单的教程,在方便自己以后查阅的同时,也希望可以帮助到别人。另水平有限,如有错误,欢迎指正!
声明:此文章为本人笔记,如若按照本教程制作出工程模版,在具体工程中造成任何损失,本人概不负责。

下载链接:

说明:
ProjectNameExample:此为整个工程项目命名,可为任意文字;
V1:版本号,方便后期项目升级,可直接将V1文件夹复制成为V2.0等,命名可为任意文字;(可以不要)
CAREM3:此文件夹用于存放care—M3内核文件和启动文件之用。命名建议为字母、数字、下划线;汉字是否可以,未经测试;
HARDWARE:此文件夹中存放自创相关库函数使用,具体使用后面会有介绍;命名建议为字母、数字、下划线;
OBJ:此文件夹中是存放工程编译的中间文件以及最终生成的.hex文件,工程中需选择存放于此,后面会有介绍。命名建议为字母、数字、下划线;
STM32F10x_FWLib:此文件夹是存放部分STM官方库文件;命名建议为字母、数字、下划线;
SYSTEM:上文已有介绍。(可以不要)
USER:存放格式为.uvprojx的工程文件以及main.c文件和重要STM官方库文件;





接下来就很重要了!需要将STM官方库STM32F10x_StdPeriph_Lib_V3.5.0文件夹中相关*.c\*.h等源码拷贝到工程文件下,具体操作如下:

1和2两个文件位置:
STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport
3文件的位置:
STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm
注:文件3为启动文件,需要根据不同容量的MCU去选择:
startup_stm32f10x_ld.s:小容量,一般为16K~64K的MCU使用。
startup_stm32f10x_md.s:中容量,一般为64K~128K的MCU使用。
startup_stm32f10x_Hd.s:大容量,一般为256K~512K的MCU使用。

 全部复制过来。其中inc中包含的是函数库中的.h文件,src中包含的是函数库中的.c文件。
全部复制过来。其中inc中包含的是函数库中的.h文件,src中包含的是函数库中的.c文件。STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template

注:拷贝完毕后,需要将main.c打开,将里面已有的源码全部清除。然后将main.c保存。

打开刚刚的USER目录下的 ,然后鼠标在工程中右键选择
,然后鼠标在工程中右键选择 会弹出一下界面在弹出的界面需要进行相关文件的添加。具体操作如图所示。
会弹出一下界面在弹出的界面需要进行相关文件的添加。具体操作如图所示。

注:在为CAREM3添加文件时有点特殊,因为其他文件夹都是添加.c文件,而这个里面还要添加一个.s的启动文件。具体操作如下图所示:

完成以上操作后,点击魔术棒 弹出如下画面,点击
弹出如下画面,点击 按照图片进行配置。
按照图片进行配置。

然后在切换至 界面。然后按照下图step 1~4进行配置。其中要特别注意step 2 和step 4 。所有设置完成一定要点击“ok”
界面。然后按照下图step 1~4进行配置。其中要特别注意step 2 和step 4 。所有设置完成一定要点击“ok”


STM32开发环境--使用MDK建立一个工程的更多相关文章
- ubuntu linux下建立stm32开发环境: 程序烧录 openocd+openjtag
		原文出处: http://blog.csdn.net/embbnux/article/details/17619621 之前建立stm32开发环境,程序也已经编译好生成main.bin,接下来就是要把 ... 
- Linux下STM32开发环境的搭建
		目录 一.概述 1.目的 2.开发环境描述 3.Eclipse构建的STM32集成开发环境结构 4.GDB / GDB Server 调试模型 二.搭建步骤 三.详细的搭建过程 1.安装eclipse ... 
- ubuntu下安装stm32开发环境
		在windowns下开发stm32刚开始学最烦的就是创建工程模板,都不知道为什么要那样设置,而且步骤繁多.现在我告诉大家一个好消息,在linux下配置stm32开发环境包括创建工程,使用JLink仿真 ... 
- windows下STM32开发环境的搭建
		一.概述 1.说明 笔者已经写了一篇Linux下STM32开发环境的搭建 ,这两篇文章的最区别在于开发环境所处的系统平台不一样,而其实这个区别对于开发环境的搭建其实影响不大,制作局部上的操作上发生了改 ... 
- VS Code 搭建stm32开发环境
		MCU免费开发环境 一般芯片厂家会提供各种开发IDE方案,通常其中就包括其自家的集成IDE,如: 意法半导体 STM32CubeIDE NXP Codewarrior TI CCS 另外也可以用ecl ... 
- 搭建Spring开发环境并编写第一个Spring小程序
		搭建Spring开发环境并编写第一个Spring小程序 2015-05-27 0个评论 来源:茕夜 收藏 我要投稿 一.前面,我写了一篇Spring框架的基础知识文章,里面没 ... 
- 嵌入式STM32开发环境之Keil5的安装(附资源)--
		全文copy,原文见https://blog.csdn.net/weixin_42602730/article/details/81007685 --------------------------- ... 
- VC6下OpenGL 开发环境的构建外加一个简单的二维网络棋盘绘制示例
		一.安装GLUT 工具包 GLUT 不是OpenGL 所必须的,但它会给我们的学习带来一定的方便,推荐安装. Windows 环境下的GLUT 本地下载地址:glut-install.zip(大小约为 ... 
- Struts2开发环境搭建,及一个简单登录功能实例
		首先是搭建Struts2环境. 第一步 下载Struts2去Struts官网 http://struts.apache.org/ 下载Struts2组件.截至目前,struts2最新版本为2.3.1. ... 
随机推荐
- web.xml报错:Invalid content was found starting with element 'init-param'
			问题与分析 在web.xml中配置servlet节点时报错如下: cvc-complex-type.2.4.a: Invalid content was found starting with ele ... 
- django_models表设计
			和很多现代的web框架一样,django依赖于强大的数据访问层,试图将python面向对象特性和关系型数据库联系起来. 可移植性:不同的数据库,可以使用同一段代码,不用关心后台是哪家的数据库. 在一个 ... 
- 题解报告:hdu 2141 Can you find it?(二分)
			Problem Description Give you three sequences of numbers A, B, C, then we give you a number X. Now yo ... 
- [在读]webkit技术内幕
			看了一点点,还不适合目前的我看,搁置. 
- Spark MLlib编程API入门系列之特征选择之向量选择(VectorSlicer)
			不多说,直接上干货! 特征选择里,常见的有:VectorSlicer(向量选择) RFormula(R模型公式) ChiSqSelector(卡方特征选择). VectorSlicer用于从原来的特征 ... 
- Android开发-浅谈架构(一)
			写在前面的话 嗯 聊聊架构. 这段时间一直在维护旧项目. 包括自己之前写的新项目 越来越发现 一个架构清晰的项目往往让人赏心悦目.不至于在一个bug丢过来之后手足无措.包括以后别人接收自己的项目 能很 ... 
- 虚方法(virtual)
			虚方法(virtual) Virtual 关键字用于修饰方法.属性.索引器或事件声明,并且允许在派生类中重写这些对象. 看一段代码: using System ; class A { public v ... 
- Hadoop 常用命令之 HDFS命令
			命令 说明 hadoop fs -mkdir 创建HDFS目录 hadoop fs -ls 列出HDFS目录 hadoop fs -copyFromLocal 使用-copyFromLocal 复制本 ... 
- 应用程序员眼中的数据库管理系统:API+数据库语言
			应用程序员眼中的数据库管理系统:API+数据库语言 sqlite3_open_v2 https://www.cnblogs.com/cchust/p/5121559.html 
- TCP socket如何判断连接断开
			http://blog.csdn.net/zzhongcy/article/details/21992123 SO_KEEPALIVE是系统底层的机制,用于系统维护每一个tcp连接的. 心跳线程属于应 ... 
