stm32f107vc在IAR环境下,引用库函数的工程文件的配置方法
stm32做开发很方便的一个原因是大家可以稍稍放松对于硬件寄存器等的设置,因为stm32有了非常丰富和实用的库函数,外设文件等等,所以我们在使用的时候可以更加关注程序开发的过程和逻辑关系。但是,在开发项目的时候,我们需要自己去根据需求配置工程文件,前些日子,自己建立工程,然后去引用提供的库函数总是出错,但有找不出原因,所以昨天专门花了点时间研究了工程文件的结构,今天就来介绍一下如何配置自己的工程文件。
准备:1.基础的函数文件 core_cm3.h,core_cm3.c,sysytem_stm32f10x.h,sysytem_stm32f10x.c
2.自己所需要用到的外设的库函数,比如我们这里做蜂鸣器,则需要stm32f10x_gpio.c、stm32f10x_gpio.h、stm32f10x_rcc.c、stm32f10x_rcc.h。
3.自己的main.c函数
项目简历过程:
- 在Project菜单中选择create new project,点击确定,进入项目存储界面,选择新建文件夹,建立自己的工程文件夹。如图。点击打开,输入工程的名字,保存。
- 点击文件的全部保存,这个时候会让你选择保存工作区,输入工作区的名字beep,点击保存
- 在左侧工作区点击添加组(右击->Add->Group),简历讲个工作组,一个是CMSIS(名字不固定,但建议为cmsis,用来存放基础的函数文件),另外一个是PERIPH_DRIVER(名字不固定,但建议为PERIPH_DRIVER,存放外设函数文件)。
- 向CMSIS中添加两个函数(右击->Add->File),一个是 core_cm3.c和System_stm32f10x.c。向PERIPH_DRIVER中添加stm32f10x_gpio.c和stm32f10x_rcc.c两个文件。
- 在空白处添加main.c文件(右击->Add->File)。到目前为止,工程的基础框架基本搭建完毕,剩下的是设置某些选项来配置工程文件。
- 右击项目名称,选择Option选项,出现下面的页面
- 在device中选择ST->STM32F10XXC,其他默认设置
- 点击左侧的c/c++complier,选择language选项,设置如下:
- 接下来设置的是重点。选择Preprocessor,在“Additional include dreectories(one per line)”中需要填写用到的头文件的地址。即core_cm3.h, sysytem_stm32f10x.h, stm32f10x_rcc.h .stm32f10x_gpio.h的地址,这里注意,地址书写时以.eww的工程文件为根的,$PROJ_DIR$代表.eww工程文件所在的目录, \..\表示上一级菜单。以core_cm3.h为例,他在.eww文件的上一级上一级的Libraries\CMSIS\CM3\CoreSupport菜单下,那我在文件里应该写$PROJ_DIR$\..\..\Libraries\CMSIS\CM3\CoreSupport。其余的自己可以按照这种方式添加上去。
- 其他的设置基本上就是默认就可以了,如果你是用板子实际的调试程序则可以再debugger中选择T-Linker/T-Trace,如果是模拟调试则选择Similator。(其他设置的详细信息请百度)
- 到这里,一个完整的工程文件基本就可以了,这里主要讲的是如何搭建工程文件的框架,如果在配置工程文件(Option)的过程中不够详细,请百度。运行后的界面如下。我也是刚刚开始学习,所以那里有理解不对的地方,希望批评指正。
stm32f107vc在IAR环境下,引用库函数的工程文件的配置方法的更多相关文章
- .net环境下ckeditor与ckfinder中文文件链接乱码的问题
.net环境下ckeditor与ckfinder中文文件链接乱码的问题 将ckfinder.js中的getUrl:function(){return this.folder.getUrl()+enco ...
- Windows环境下用C#编程将文件上传至阿里云OSS笔记
Windows环境下用C#编程将文件上传至阿里云OSS笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/detai ...
- VS2010环境下用ANSI C创建DLL和使用方法(转)
源:VS2010环境下用ANSI C创建DLL和使用方法 . 创建DLL工程 1.2 创建一个dll工程. 操作:a.文件->新建->项目->Win32控制台应用程序. b.输入工程 ...
- (转 留存)Windows环境下的NodeJS+NPM+GIT+Bower安装配置步骤
Windows环境下的NodeJS+NPM+GIT+Bower安装配置步骤 标签: NodeJSnpmbower 2015-07-17 16:38 3016人阅读 评论(0) 收藏 举报 分类: G ...
- Linux环境下使用VSCode编译makefile文件的注意事项
Linux环境下使用VSCode编译makefile文件的注意事项 首先安装C/C++的两个依赖 在debug,launch会自动的生成下方的launch.json launch.json { // ...
- linux环境下删除包含特殊字符的文件或目录
linux环境下删除包含特殊字符的文件或目录 ls -liUse find command as follows to delete the file if the file has inode nu ...
- 转:Linux环境下段错误的产生原因及调试方法小结
源地址:http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 补充:http://baike.baidu.com/link ...
- node环境下:node_modules里面的文件
node环境下:node_modules里面的文件 package.json来制定名单,需要哪些npm包来参与到项目中来,npm install命令根据这个配置文件增减来管理本地的安装包. depen ...
- Linux下用rm删除的文件的恢复方法
Linux下用rm删除的文件的恢复方法_Linux教程_Linux公社-Linux系统门户网站https://www.linuxidc.com/Linux/2008-08/14744.htm linu ...
随机推荐
- Scrum概述
• 敏捷方法是一类软件开发流程的泛称: • 敏捷方法是相对于传统的瀑布式软件过程提出的: • 敏捷方法可以用敏捷宣言(4条).敏捷原则(12条)来概括: • 敏捷原则通过一系列的敏捷实践来体现出来: ...
- 【文件系统】浅解释FAT32
了解完linux下的文件系统之后,顺便对FAT32也研究一下. 假如一个FAT32表如下所示. 文件的簇应该保留在目录中,根据此簇,应该能得到一个块. 要找到文件的下一块,就要根据簇在FAT中寻找,所 ...
- SNMP 和 NetBios协议理解
一.简单网络管理协议(SNMP,Simple Network Management Protocol)构成了互联网工程工作小组(IETF,Internet Engineering Task For ...
- 项目常用jquery/easyui函数小结
#项目常用jquery/easyui函数小结 ##背景 项目中经常需要使用到一些功能,封装.重构.整理后形成代码沉淀,在此进行分享 ##代码 ```javascript /** * @author g ...
- Chapter 5 Convert Image Set To LevelDB/LMDB
Caffe中convert_imageset projrct将图像数据转换成Caffe能读取的数据格式leveldb/lmdb 1.添加命令参数 在main函数中添加命令参数,内容和位置如下: #if ...
- dom 冒泡事件
<!doctype html> <html> <head> <meta charset="utf-8"> <style> ...
- AutoCAD.NET关于Hatch填充
使用Hatch时尤其要注意其参数设置顺序,顺序不对的话,填充出来的效果可能和想象中的不一样,一般来说大多数的属性参数设置都要放在SetHatchPattern方法之前,比如进行“用户定义”填充时: h ...
- global & nonlocal
name = "A" def test(): name = "B" def test2(): global name # global 指的是拿到的是全局的变量 ...
- 1) data-options
<select class="easyui-combobox" data-options="editable:false"> <select ...
- WEB数据挖掘(十三)——关联规则与序列模式(1)
一.Apriori算法简介: Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集. Apriori(先验的,推测的)算法应用广泛 ...