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环境下,引用库函数的工程文件的配置方法的更多相关文章

  1. .net环境下ckeditor与ckfinder中文文件链接乱码的问题

    .net环境下ckeditor与ckfinder中文文件链接乱码的问题 将ckfinder.js中的getUrl:function(){return this.folder.getUrl()+enco ...

  2. Windows环境下用C#编程将文件上传至阿里云OSS笔记

    Windows环境下用C#编程将文件上传至阿里云OSS笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/detai ...

  3. VS2010环境下用ANSI C创建DLL和使用方法(转)

    源:VS2010环境下用ANSI C创建DLL和使用方法 . 创建DLL工程 1.2 创建一个dll工程. 操作:a.文件->新建->项目->Win32控制台应用程序. b.输入工程 ...

  4. (转 留存)Windows环境下的NodeJS+NPM+GIT+Bower安装配置步骤

    Windows环境下的NodeJS+NPM+GIT+Bower安装配置步骤 标签: NodeJSnpmbower 2015-07-17 16:38 3016人阅读 评论(0) 收藏 举报  分类: G ...

  5. Linux环境下使用VSCode编译makefile文件的注意事项

    Linux环境下使用VSCode编译makefile文件的注意事项 首先安装C/C++的两个依赖 在debug,launch会自动的生成下方的launch.json launch.json { // ...

  6. linux环境下删除包含特殊字符的文件或目录

    linux环境下删除包含特殊字符的文件或目录 ls -liUse find command as follows to delete the file if the file has inode nu ...

  7. 转:Linux环境下段错误的产生原因及调试方法小结

    源地址:http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 补充:http://baike.baidu.com/link ...

  8. node环境下:node_modules里面的文件

    node环境下:node_modules里面的文件 package.json来制定名单,需要哪些npm包来参与到项目中来,npm install命令根据这个配置文件增减来管理本地的安装包. depen ...

  9. Linux下用rm删除的文件的恢复方法

    Linux下用rm删除的文件的恢复方法_Linux教程_Linux公社-Linux系统门户网站https://www.linuxidc.com/Linux/2008-08/14744.htm linu ...

随机推荐

  1. js数组依据下标删除元素

    最近在项目中遇到了一些问题,基础性的东西记得不牢固,就总结一下放在这里备再次查找,对操作js数组的一些问题一些常用的记录! 1.创建数组 var array = new Array(); var ar ...

  2. Map/Reduce中Join查询实现

    张表,分别较data.txt和info.txt,字段之间以/t划分. data.txt内容如下: 201001    1003    abc 201002    1005    def 201003  ...

  3. E2202 Required package 'VclJPG' not found

    xe8 [dcc32 Fatal Error] RaizeComponentsVcl_Design.dpk(40): E2202 Required package 'VclJPG' not found ...

  4. Linux操作系统时间与BIOS硬件时间

    注:以Ubuntu为例说明 在Linux计算机上,有两个时间,一个是硬件时间(BIOS中记录的时间,称为hwclock),另一个是操作系统时间(osclock).硬件时钟由BIOS电池供电, 当计算机 ...

  5. cocos2d-x 2.2.5 安卓工程编译的问题

    原址:http://www.cocoachina.com/bbs/read.php?tid=217124 新的cocos2d-x 2.2.5 在使用Eclipse的安卓NDK 9 的编译器进行编译的时 ...

  6. 异步编程之Promise(2):探究原理

    异步编程系列教程: (翻译)异步编程之Promise(1)--初见魅力 异步编程之Promise(2):探究原理 异步编程之Promise(3):拓展进阶 异步编程之Generator(1)--领略魅 ...

  7. HD1005Number Sequence

    Number Sequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tota ...

  8. ADT-bundle

    eclipse 弹出 Version 1.4.2_03 of the JVM not suitable for this product.Version1.6or geeater is requir ...

  9. poj 3216 Repairing Company(最短路Floyd + 最小路径覆盖 + 构图)

    http://poj.org/problem?id=3216 Repairing Company Time Limit: 1000MS   Memory Limit: 131072K Total Su ...

  10. 未能加载文件或程序集“Oracle.DataAccess, Version=2.112.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342”或它的某一个依赖项。 解决方法

    webconfig文件对于oracle的映射错误.需要在以下位置修改 <runtime> <legacyCorruptedStateExceptionsPolicy enabled= ...