今天给小伙伴分享一篇给stm32新建工程模版

1、首先打开IAR,就是这个样子

2、再建一个目录文件夹

3、建立一个工作空间,以及建好工作空间如右图所示

4、接下来建立工程,Project--------Creat New Project

点击Empty project-------------再点击OK

选择你之前创建的目录里面,取个名字再保存就行了

保存之后就是这个样子

5、这个时候再点保存,就像下图,会跳出一个窗口(如图),这个是保存你的工作空间,取个名字(用原来的工程名字都行),点保存就行

6、接下来添加分组

7、我们要多多添加这样的几个分组,如下

8、在我们之前的目录里面也创建如下的文件夹

9、按图示操作把下载的库文件夹里的这部分 复制 到之前创建的文件夹里

10、按照图示,把iar文件夹里的启动文件全部复制到Startup内

11、再把这三个文件复制到Startup文件夹内

12、继续复制文件,把标准库内(图示)目录下的三个文件复制到User目录下,

之前少做了一件事要把Startup文件夹里面的stm32f10x.h移到User文件夹内,这样看的美观一些。

13、导入文件,之前少创建了一个分组,补上如图所示

导入文件的如下(如图):这里要注意一点,startup_stm32f10x_md.s这个文件是需要根据你的单片机型号来定的,不同型号的单片机这个启动文件不一样,我这里是stm32f103c8t6单片机

14、在App里面创建一个main.c

14、接下来配置工程

15、选择单片机的型号

16、将库配置选成Full,再勾选下面的Use CMSIS

17、将char类型改成 有符号型

18、接下来就是极为重要的一件事,添加group里面.c文件的路径,黄色框的文件都要点进去,再点确认

添加完成的路径图片是这样的

19、到这里,已经完成了七七八八,把鼠标点击到main.c,来编译一下,就是图中的图标

这样编译会出现好多个错误,一看到这么错误肯定会慌

不要慌!!!!!!!!

不要慌!!!!!!!!

不要慌!!!!!!!!

不就是这样的错误么,英文意思是请选择你应用中的单片机型号的启动文件

点击这个错误可以定位到这里

也就是说工程里缺少   #if !defined (STM32F10X_LD) && !defined (STM32F10X_LD_VL) && !defined (STM32F10X_MD) && !defined (STM32F10X_MD_VL) && !defined (STM32F10X_HD) && !defined (STM32F10X_HD_VL) && !defined (STM32F10X_XL) && !defined (STM32F10X_CL)  这么多宏里面的一个

所以我的单片机stm32f103c8t6的启动文件是STM32F10X_MD,按下图所示,添加这个东西之后,再编译

20、再编译之后是下图

这也是有原因的,我们点击一个警告错误,这个是初学者可能不懂,再把这个  USE_STDPERIPH_DRIVER  添加进去

你们肯定会疑问为什么要添加这个这个宏,如下图所示

看红框里面的斜蓝色字体,意思大致就是“如果你不使用外设驱动,在这种情况下,这些驱动不会被包括并且这些应用代码会直接基于外设寄存器”,所以我们需要这样的宏,再编译就显示没有错误,没有警告。

  • 以上为参考内容,与STM32f103SET6基本配置相同。仅有几处区别如下所示:

 

  •  配置过程中与遇到的主要问题:
  1. 不知道MDK中启动文件与IAR中是不同的两个文件,直接将MDK工程模板中启动文件拷贝到IAR工程中,作为启动文件。导致错误。。

  解决参考考博客:启动文件大量报错《startup_stm32f10x_hd.s》

  • 配置成功截图:

IAR为STM32创建工程模板(基于STM32f103zet6)的更多相关文章

  1. IAR 为 STM32新建工程模板(最详细)

    今天给小伙伴分享一篇给stm32新建工程模版 1.首先打开IAR,就是这个样子 2.再建一个目录文件夹 3.建立一个工作空间,以及建好工作空间如右图所示 4.接下来建立工程,Project------ ...

  2. STM32学习笔记:创建工程模板

    STM32作为一类高级单片机,在应用中不容小觑. 所以本人从2018年1月1日开始对于STM32系列单片机的学习. 本人所持的型号为:STM32F429ZI-DISCOVERY,M4内核,封装类型为: ...

  3. Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  4. Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401开发

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  5. Keil MDK STM32系列(四) 基于抽象外设库HAL的STM32F401开发

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  6. Keil MDK STM32系列(九) 基于HAL和FatFs的FAT格式SD卡TF卡读写

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  7. Keil MDK STM32系列(三) 基于标准外设库SPL的STM32F407开发

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  8. Keil MDK STM32系列(六) 基于抽象外设库HAL的ADC模数转换

    Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...

  9. CXF 入门:创建一个基于WS-Security标准的安全验证(CXF回调函数使用,)

    http://jyao.iteye.com/blog/1346547 注意:以下客户端调用代码中获取服务端ws实例,都是通过CXF 入门: 远程接口调用方式实现 直入正题! 以下是服务端配置 ==== ...

随机推荐

  1. [LeetCode] 750. Number Of Corner Rectangles 边角矩形的数量

    Given a grid where each entry is only 0 or 1, find the number of corner rectangles. A corner rectang ...

  2. GitLab - 安装并启动GitLab

    1 - GitLab安装 1.1 信息确认 [Anliven@node102 ~]$ uname -a Linux node102 3.10.0-957.el7.x86_64 #1 SMP Thu N ...

  3. Mysql中TO_DAYS函数

    原文地址:https://blog.csdn.net/sinat_19569023/article/details/50417273 SQL博大精深 TO_DAYS函数 返回一个天数! 啊哈?什么天数 ...

  4. 机器学习技法实现(一):AdaBoost- Decision Stump (AdaBoost - 决策树的基于Matlab的实现)

    经过前面对AdaBoost的总结,下面要基于Matlab实现AdaBoost-Stump进行二维平面数据点的分类的实验. 一. 实验原理 参看 http://blog.csdn.net/lg12591 ...

  5. JavaScript原生封装ajax请求和Jquery中的ajax请求

    前言:ajax的神奇之处在于JavaScript 可在不重载页面的情况与 Web 服务器交换数据,即在不需要刷新页面的情况下,就可以产生局部刷新的效果.Ajax 在浏览器与 Web 服务器之间使用异步 ...

  6. [转帖]DCEP究竟是什么?

    DCEP究竟是什么? https://www.cnblogs.com/kaixin2018/p/11795534.html DCEP (Digital Currency Electronic Paym ...

  7. 『Go基础』第5节 第一个Go程序

    本节我们来学习写一个最简单的Go程序: 打印 Hello Go. 第一个Go程序, 只要跟着做, 留下个印象就可以. 用Goland创建一个 hello_go.go 文件(后缀为 .go ). 文件内 ...

  8. 在springMVC的controller中获取request,response对象的一个方法

    ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttr ...

  9. Java身份证处理工具

    身份证处理工具 /** * <html> * <body> * <P> Copyright 1994 JsonInternational</p> * & ...

  10. 安装Ubuntu18.04系统

    一.安装Ubuntu系统 进入系统安装的第一个界面,开始系统的安装操作.每一步的操作,左下角都会提示操作方式!! 1.选择系统语言-English 2.键盘设置-English 3.选择操作Insta ...