14
深圳市技新电子科技有限公司 www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0 1 页共 14 STM8S001 系列教程(一)新建工程 本文主要介绍的内容如下: STM8S/A 标准外设库获取 创建文件目录&整理文件 创建 IAR 工程 Options 配置&编译下载 1STM8S/A 标准外设库的获取 STM8S/A 标准外设库可以在技新官网 https://www.jixin.pro/product/874.html 下的教程与资料中下 载,也可以根据下面的步骤到 ST 的官网中下载(推荐)。下面开始介绍如何到 ST 官网下载 STM8S/A 标准外 设库。 1) 输入 ST 官网的网址 http://www.st.com/content/st_com/en.html ,在界面左上角的导航栏选择 Tools&Software--->MCUS Embedded Software 2) 在打开的界面中点击 For STM8 MCUs 下面的图标

STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

  • Upload
    others

  • View
    19

  • Download
    0

Embed Size (px)

Citation preview

Page 1: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 1 页 共 14 页

STM8S001 系列教程(一)新建工程本文主要介绍的内容如下: STM8S/A 标准外设库获取 创建文件目录&整理文件 创建 IAR 工程 Options 配置&编译下载

1、STM8S/A标准外设库的获取STM8S/A 标准外设库可以在技新官网 https://www.jixin.pro/product/874.html 下的教程与资料中下

载,也可以根据下面的步骤到 ST 的官网中下载(推荐)。下面开始介绍如何到 ST 官网下载 STM8S/A 标准外设库。

1) 输入 ST 官网的网址 http://www.st.com/content/st_com/en.html,在界面左上角的导航栏选择Tools&Software--->MCUS Embedded Software

2) 在打开的界面中点击 For STM8 MCUs 下面的图标

Page 2: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 2 页 共 14 页

3) 在打开的界面中,有一个列表,在列表下面的 Show选择 All,显示所有的列表信息

4) 选择 STSW-STM8069(STM8S/A Standard peripheral library)

5) 在打开的界面中的 GET SOFTWARE 栏下点击 Get Software

6) 在弹出来的 License Agreement 点击 ACCEPT

Page 3: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 3 页 共 14 页

7) 之后会弹出一个 Get Software 窗口,如果有 ST 账号的可以点击窗口中的 Login/Register 登陆有即可下载。没有账号的可以填写下面的信息然后点击 Download(邮箱必须填一个常用的,用于接收ST发来的下载链接)

8) 窗口提示已经验证并发送下载链接到邮箱

9) 在收到的 E-mail 中点击链接下载

Page 4: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 4 页 共 14 页

2、创建文件目录&整理文件在创建工程前需要先创建相关的工程文件目录文件夹,然后把需要用到的库文件复制到相应的文件夹下。

首先新建一个Demo文件夹并在文件夹下创建User文件夹(存放用户应用文件)与StdPeriph_Driver文件夹(存放标准外设库文件),如下:

把下载的库文件解压后并打开 STM8S_StdPeriph_Lib 文件夹可以看到以下文件:

打开 Libraries 文件夹,把 STM8S_StdPeriph_Driver 文件夹下的 inc 文件夹与 src 文件夹复制到 Demo文件夹下的 StdPeriph_Driver 文件夹下

打开 Project/STM8S_StdPeriph_Examples/GPIO/GPIO_Toggle 文件夹,把里面的所有文件复制到Demo 文件夹下的 User 文件夹下

Page 5: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 5 页 共 14 页

至此,已经把需要用到的库文件都已经添加到我们的工程文件夹 Demo中,准备工作已经完成。

3、创建 IAR工程1) 打开 IAR 软件。创建新的工作空间;File--->New--->Workspace

2) 新建 Project。Project--->Create New Project...

3) 创建空白工程。选择 Empty project 点击 OK

Page 6: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 6 页 共 14 页

4) 把工程保存在 Demo 文件夹下并命名为 Demo

Page 7: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 7 页 共 14 页

5) 在工程中添加 Group(类似于于文件夹)。鼠标选中 Demo - Debug 点击右键--->Add--->AddGroup...并给 Group 命名为 User

6) 给 Group 添加文件。把 Demo 目录下的 User 文件夹中的 main.c 文件以及 stm8s_it.c 文件添加到User(Group)中;鼠标选择 User 点击右键--->Add--->Add Files...(添加完成后 Ctrl + S 保存,每操作一个步骤最好都Ctrl + S 一下)

Page 8: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 8 页 共 14 页

7) 同样的添加一个新 Group,命名为 StdPeriph_Driver,并添加 Demo/StdPeriph_Driver/inc 下的stm8s_gpio.c 文件。添加完成后的项目目录如下(Output 是自动生成的,不予理会)

8) 工程建立完毕,双击main.c 打开该文件,点击 Project--->Make(或点击工具栏的 图标,快捷键F7),编译工程。在 Build 栏提示有 3个错误,这主要是还没配置Options 引起的

Page 9: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 9 页 共 14 页

4、Options配置&编译下载1) 鼠标选中 Demo-Debug,右键点击Options...进入 Options for node “Demo”配置窗口

2) 选择目标器件。在 General Options 选项卡的 Target 选项下,Device:中点击右边的 图标,选择STM8S-->STM8S001J3 器件

Page 10: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 10 页 共 14 页

3) 包含文件的相对路径。在 C/C++ Compiler 选项卡的 Preprocessor 选项下,Additional includedirectories:(one per line)中,点击右边的 添加文件路径,在弹出的Edit Include Directories窗口点击<Click to add>,把工程文件下的 Demo/StdPeriph_Driver/inc 与 Demo/User 路径添加进去,然后选中文件路径,点击右边的 按钮,把路径改为相对路径,之后点击 OK

Page 11: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 11 页 共 14 页

4) 预定义 STM8S001 头文件。在 Defined symbols:(one per line)下填入 STM8S001

5) 输出.Hex 文件。在 Output Converter 选项卡,Output 选项下,在 Generate additional output 前打上√,Output format:下拉菜单中选择 Intel extended,并在 Override default 前打上√

Page 12: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 12 页 共 14 页

6) 选择下载仿真器。在 Debugger 选项卡,Setup 选择下,Driver:选择 ST-LINK。点击 OK,Options配置完成

7) 保存工作空间。点击 File--->Save Workspace,把工作空间保存到 Demo 工程下并命名为 Demo

8) 重新编译。点击 Project--->Make(或点击工具栏的 图标,快捷键 F7),编译工程,在 Build 窗口下提示有错误(这是因为目前最新的 STM8S 库还没有定义 STM8S001 头文件引起的),双击错误信息,跳转到发生错误的文件

Page 13: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 13 页 共 14 页

9) 添加STM8S001定义。在错误文件中(stm8s.h)添加语句&& !defined (STM8S001),然后重新编译

10) 修改main.c文件。编译后仍然能看到”GPIOH” is undefine 错误,因为STM8S001没有GPIOH,我们来对main.c文件进行修改。打开mian.c文件,修改#define 部分代码,然后重新编译,错误与警告都为 0(.hex 文件输出在 Demo/Debug/Exe 文件夹下)

11) 添加防锁代码。STM8S001J3 可用 IO 口只有 5个(包括 SWIM 引脚),没有复位引脚,下载程序只能通过SWIM下载,为了防止复用SWIM引脚作为其他功能后使得SWIM引脚无法下载程序(原因是上电后 SWIM 被配置为其他功能,使得程序无法通过 SWIM 引脚下载,官方数据手册 12 页中有介绍),需要在主程序添加防锁代码来防止芯片被锁住无法下载

Page 14: STM8S001系列教程(一)新建工程 · 深圳市技新电子科技有限公司 STM8S001系列教程(一)新建工程V1.0.0.0 第1 页共14 页 STM8S001系列教程(一)新建工程

深圳市技新电子科技有限公司www.jixin.pro STM8S001 系列教程(一)新建工程 V1.0.0.0

第 14 页 共 14 页

代码的原理是利用核心板上的 KEY 按键,上电时检测按键是否按下,按下就会进入死循环,程序无法向下运行,这时可以使用 SWIM 引脚下载程序。以后的每一个例程都会添加此防锁代码。

12) 编译下载。编译之后0错误与警告,把STM8S001J3核心板的P2口与ST-LINK的SWIM接口对接起来,然后点击Project--->Download and Debug 或快捷键 Ctrl + D 或点击工具栏的 按钮即可下载仿真的界面,点击 即可关闭仿真,程序正常运行,LED1 闪烁。

最后,有如下几个需要主要的地方: Demo 可以到技新官网下进行下载 STM8S 最新的库中没有包含 STM8S001 的头文件,需要在 stm8s.h 文件中添加 最新版的 IAR For STM8 才支持 STM8S001J3 程序都要在主函数添加防锁代码,防止 SWIM 引脚复用后,上电无法下载程序 SWIM 复用,在下次下载时需要按住 KEY 然后上电下载,再松开 KEY