需要准备的软件,硬件,IAR for stm8 (EWSTM8)、stm8s标准固件库、ST-LINK、STM8s003f3核心板

安装IAR(其中包括st-link的驱动),

到这个网址下载stm8s标准固件库(STSW-STM8069),http://www.st.com/web/en/catalog/tools/PF258009

使用IAR新建一个工程,具体步骤如下:

1,File->New->Workspace

2,创建一个工程:Project->Create New Project...

3,在弹出的对话框中选择C,-》OK

4,根据提示保存你的工程

5,从stm8s标准固件库中复制Libraries目录到你的工程目录,复制\STM8S_StdPeriph_Lib_V2.1.0\Project\STM8S_StdPeriph_Examples\GPIO到你的工程目录

6,IAR的工程配置:在工程中添加两个组Libraries,MyApp。右击你的工程->Add->Add Group

7,将库中的*.c文件和主程序目录的*.c文件分别添加到Libraries, MyApp;右击相应组->add->add files

8,选择单片机型号:右击你的工程Options->General Options->选择你单片机的型号

9,配置头文件搜索路径:上一步切换到C/C++ Complier->Preprocessor->Additional include directory: ( one per line)

10,选择调试器:切换到Debugger->Driver选择ST-Link->OK

现在开始编译拍错

1,右键main.c->Comliper会提示保存workspace,按提示操作,编译中会提示没有定义

Fatal Error[Pe035]: #error directive: "Please select first the target STM8S/A device used in your application (in stm8s.h file)" C:\Documents and Settings\Administrator\桌面\EWSTM8_turial\Libraries\STM8S_StdPeriph_Driver\inc\stm8s.h 65

双击该条提示,自动定位到错误位置,表示没有定义单片机型号,定义上

#define STM8S003F3

2,再次执行1,这次的提示变为

Error[Pe020]: identifier "GPIOH" is undefined C:\Documents and Settings\Administrator\桌面\EWSTM8_turial\GPIO\GPIO_Toggle\main.c 54

双击该提示,定位到错误位置,向上找到 #define LED_GPIO_PORT  (GPIOH)

将GPIOH改为GPIOD(STM8S003F3没有GPIOH这个IO)

3,再次执行1,OK没有错误

4,整体编译一遍:右击工程->Make.

在编译过程中有一部分文件会报错,不要担心,这些是STM8S003F3中没有的资源,将报错的文件删除即可

另外对固件库了解后,可以只添加需要的部分,比如这次使用的是stm8s_gpio.c,那么只添加stm8s_gpio.c就可以了

5,删除不需要的,再编译:OK没有错误,没有警告

下载并调试,

1,将STM8核心板通过SWIM与ST-Link连接起来,注意线序

2,将ST-Link连接到电脑,(在设备管理器中usb总线中会看到ST-link的相关信息)

3,给stm8核心板加电

4,点击IAR的Download and debug,点击Go。核心板上的灯会闪烁

stm8开发环境配置及测试的更多相关文章

  1. Windows10 + Visual Studio 2017 + CMake +OpenCV编译、开发环境配置及测试

    由于最近需要使用OpenCV,本人需要在自己的PC上使用OpenCV,因此最近一直在研究如何使用Visual Studio编译OpenCV源代码并搭建开发环境,折腾了很长时间,查阅了很多相关资料,终于 ...

  2. Odoo-10开发环境配置与测试

    Odoo是使用Python写的开源ERP软件,这几年比较火.内部有实施能力的,这个软件还是很不错的.总体来说,国外的这类软件,更多是在做平台(比如微软的AX.SharePoint.SAP等)平台本身具 ...

  3. Visual studio 通用开发环境配置:SDL,FFMPEG为例

    引言 每一个C++库的使用都是从开发环境的配置开始的,其实每个库的配置过程都是大同小异,总结下来有下面几个步骤: 下载库文件,这里假定是已经预先编译完成的. 配置库文件的包含目录(include)和库 ...

  4. Mac电脑配置IOS React Native开发环境配置笔记

    React Native(以下简称RN)的开发环境配置直接参考官方文档即可完成,不过对小白来说东西有点多,有些名词不是很好理解,这里就官方的安装文档稍微展开说一下. 中文版配置说明:不错的中文说明.官 ...

  5. windows下的Nodejs及npm的安装、常用命令,Nodejs开发环境配置

    http://www.cnblogs.com/webstorm/p/5744942.html ***************************************** 第一步:下载Nodej ...

  6. Fedora和Ubuntu下安装OpenGL开发环境配置

    Fedora下OpenGl开发环境配置 开发OpenGL工程需要3个库文件和对应的头文件: libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h 这些库 ...

  7. Android SDK 4.0.3 开发环境配置及运行

    最近又装了一次最新版本的ADK环境 目前最新版是Android SDK 4.0.3 本文的插图和文本虽然是Android2.2的 步骤都是一样的,如果安装的过程中遇到什么问题,可以留言,我会尽快回复! ...

  8. (转)OpenCV 2.4.8 +VS2010的开发环境配置

    转自:  http://blog.csdn.net/poem_qianmo/article/details/19809337 自己可能需要再进行修改 本系列文章由zhmxy555(毛星云)编写,转载请 ...

  9. XE4 IOS开发环境配置

    l 配置IOS的安装开发环境 使用RAD XE4开发IOS程序,一台MAC是必须的(也可以用虚拟机), MAC上需要安装Xcode, 独立版本的Commnand Line Tools 以及RAD的pa ...

随机推荐

  1. Hadoop学习总结(1)——大数据以及Hadoop相关概念介绍

    一.大数据的基本概念 1.1.什么是大数据 大数据指的就是要处理的数据是TB级别以上的数据.大数据是以TB级别起步的.在计算机当中,存放到硬盘上面的文件都会占用一定的存储空间,例如: 文件占用的存储空 ...

  2. Mongo集群之主从复制

    上线的系统.数据存储是重要部位.若一个公司的数据库部署还是待用单点部署,那若是宕机或是机器被损坏则是多糟糕的事情呀. 主从复制的部署方式为下图 主从复制是一个简单的数据库同步备份集群技术.这样的方式简 ...

  3. nyoj 1104 just for you

    just for you 时间限制:1000 ms  |  内存限制:65535 KB 难度:0 描写叙述 今天tlp和ly想去看电影了到了电影院才发现买票的人特别多 .ly不想让tlp等着急了,就先 ...

  4. 面试基础_03实现strcpy、strcat、strcmp、strlen

    实现代码例如以下: /************************************************************************* > File Name: ...

  5. Sqoop 数据导入导出实践

    Sqoop是一个用来将hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如:mysql,oracle,等)中的数据导入到hadoop的HDFS中,也可以将HDFS的数据导入到 ...

  6. display 表格模型值

    display:inline-table 此元素会作为内联表格来显示(类似 <table>),表格前后没有换行符.display:inline-table 可以使文字和表格在同一行显示 d ...

  7. promise的弊端

    promise的弊端 promise彻底解决了callback hell,但也存在以下一些问题 延时问题(涉及到evnet loop)(http://www.ruanyifeng.com/blog/2 ...

  8. Html学习总结(1)——理解Html的head

    HTML文档的head部分,通常包括指定页面标题,为搜索引擎提供关于页面本身的信息,加载样式表,以及加载JavaScript文件(出于性能考虑,多数时候放在页面底部</body>标签结束前 ...

  9. 【Oracle】使用bbed恢复delete的数据

    表中的数据被delete之后并不会真正删除数据,而是打了一个删除标记,仅仅要还没有被覆盖就能够恢复回来. 实验步骤例如以下: SYS@ORCL>create table bbed_test(x  ...

  10. mongodb官网文档阅读笔记:write concern

    write concern保证了mongodb写操作的级别,不同的write concern设置相应了不同级别的写操作.设置的级别越高.那么写操作的性能的持久化做得越好,可是写性能也就越差. mong ...