IAR 做项目都是以工程的形式开发的。每一个项目的源代码和配置文件都存放在一个工作空间中,搭建好编程环境以后,每次只需要打开工作空间文件,就能访问项目中的所有文件,进而进行编程开发。本文就介绍一下使用寄存器开发STM8怎么搭建一个编程环境。
芯片选型:STM8S003F3编程IDE:IAR FOR STM8编程语言:C语言需要准备的文件:stm8s.h1、 创建一个文件夹用来存放整个项目的文件,方便打包,这里我把文件夹命名“STM8S开发工程-寄存器版”,然后在文件夹里面新建一个“APP”文件夹。
2、 打开“IAR FOR STM8”软件,选择 Project -> Create New Project

3、由于IAR和STM8都支持C++开发,所以里面会有C++的选项,C++开发的教程我会后期放出,本次我们使用C语言开发,所以选择C,然后点击OK。
4、选择我们刚才建立的文件夹,然后把工程名字命名为“DEMO”,然后保存。
5、进入编程空间界面,软件会新建一个main.c,并添加了一个主函数代码。
6、选择 file -> Save All,然后保存工作空间,也命名为“DEMO”
7、将“stm8s.h”头文件也复制到文件夹根目录里面,然后看一下我们刚才建立的文件夹下都多了哪些东西
APP文件夹是我们自己建立的,一会我们将把我们自己建立的.c文件放到里面Debug是存放输出文件的,我们编译生成的二进制文件可以在这个文件中找到settings文件夹是存放工程的配置文件的,我们设置的一些东西将保存到这里面main.c函数是IAR自己建立的默认的一个C文件。DEMO.eww是工作空间文件,每次只需要打开这个文件,就可以开发了。stm8s.h是我们刚才复制过来的,里面包含了我们开发单片机的寄存器地址。不管使用寄存器开发还是库函数开发,这个文件都是必须的。8、右键“DEMO-Debug” -> “options”
9、在“Device”选项中选择芯片型号:
10、在“C/C++Compiler” -> “optimization\"->“None”中关闭编译器优化
11、设置头文件编译路径:
将文件夹根目录和文件夹下的app文件夹地址都添加进来,如果还有其他自定义的文件夹存放有头文件,都需要添加进来。
添加进来以后默认是绝对地址,工程位置不能移动,我们要将这个地址设置为相对地址,这样把整个文件夹复制到其他地方工程环境依然有效。
12、设置输出选项:“Output Converter”选项按照图片设置
13、仿真选项设置:“Debugger”选项按照图片将仿真工具设置为“stlink”
14、点击右下角“OK”选项,退出“options”设置
15、将“main.c”中第一行添加以下代码,声明头文件
#include \"stm8s.h\"
16、关于编译和仿真按钮如图,其功能如下
编译当前文件编译整个工程进入仿真并在结束后下载程序进入仿真但是结束后不下载程序17、点击2号按钮,编译整个工程,会发现一个错误,双击错误处会跳转到源代码中报错的位置
18、分析可以看出来是由于定义了“USE_STDPERIPH_DRIVER”导致
#include \"stm8s_conf.h\"
但是没有找到这个头文件,所以报错。
19、右键“USE_STDPERIPH_DRIVER” -> Go to Definition of “USE_STDPERIPH_DRIVER”跳转到定义处
20、跳转到如下代码处,
#if !defined USE_STDPERIPH_DRIVER
/ Comment the line below if you will not use the peripherals drivers.
In this case, these drivers will not be included and the application code will be
based on direct access to peripherals registers /
#define USE_STDPERIPH_DRIVER
#endif
根据提示,我们本次使用寄存器开发。将#define USE_STDPERIPH_DRIVER注释掉,再次编译-错误和警告全部消失,环境初步搭建完成。
21、在“Workspace”区域“右键”->“Add”->“Add Group...”
22、输入“APP”,然后点击“OK”,就会在工作区域生成一个名字叫“APP”的文件组。作用是将自定义的C文件。本次我们就不向里面添加文件了,只是作为一个模板下次使用。
23、在“Output”文件组中,有一个“DEMO.map”
双击打开可以看到编译程序所占用的内存资源。
至此,STM8在IAR下面的工程环境搭建完成,可以当作一个开发模板,每次使用添加自己的程序,然后更改配置参数即可,不用每次都要新建。
需要模板工程代码文件可在下方留言或者私信。