- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一步步建立STM8S工程项目
鉴于本人曾经摸索了不少时间,走了很多弯路,为了使新手更好地快速入门,特编写此教程。
本文件期望达到如下目的:
从无到有建立全新的STM8S工程项目
能调用标准库函数
会定义位,懂得如何查找特定的寄存器并直接赋值。
在开始之前,假设你已经安装了STVD和cosmic软件,STVD在ST官网下载,COSMIC到官网或网上可找到评估版或破解版。
首先下载ST标准库,从官网下载,我在网上下载到的压缩文件名是stm8_stdperiph_lib。可按如下方法下载:
进入STM8S mainstream的resources页,进入Firmware,下载“STM8S/A Standard peripheral library”如下图所示:
其次搜索并下载“STM8S库函数中文参考”,对新手省去学习库函数的麻烦。
第一步,打开STVD,File - New WorkSpace
可选creat workspace and project 创建工程和项目
在新工程框中,输入工程名,先点左边红色框的选择文件夹,然后点新建文件夹并输入名称
确定后填入项目名称,在Toolchain选择所用编译器,本例选cosmic
点击OK后,选中IC型号,双击,再点OK
点击OK,初步工程和项目已经建立,编译通过。
将下载的STM8S标准库stm8_stdperiph_lib解压,如下图,我下载的版本解压后是STM8S_StdPeriph_Lib_V2.1.0文件夹。
打开以上文件夹,如下图目录,从标准库中复制以下三个文件到新建工程项目中:
新建工程文件目录粘贴如下:
将STM8S_StdPeriph_Lib_V2.1.0\Libraries\下的STM8S_StdPeriph_Driver文件夹复制到你刚才建立的工程文件夹里,如下图:
将以上stm8s_it.c和stm8s_conf.h添加到STVD的工程文件夹中,然后将stm8s.h从STM8S_StdPeriph_Driver下的inc文件夹中添加,如下图
双击打开stm8s.h,将所用的单片机型号的注释符号去掉,如下图:
将stm8s_it.c中的INTERRUPT_HANDLER(NonHandledInterrupt, 25)函数注释掉,因为重复定义了。然后编译通过。
在STVD中的project右键New Folder,建立所需文件夹
建立一个文件夹STM8S_StdPeriph_Driver,如下图:
在STVD中点击STM8S_StdPeriph_Driver右键,添加标准库文件stm8s_gpio.c。
双击打开stm8s_conf.h文件,将如下图所示红色框的定义文件注释掉。
打开STM8S库函数中文参考,下例中设置PA0口
点击复制,将其粘贴到main函数中,并在main.c中添加#include stm8s.h,编译通过,如下图。
至此一个基本的STM8S工程项目建立完毕。若需要使用到单片机的其它模块功能,直接按添加stm8s_gpio.c的方法添加,比如要用到time4,则添加stm8s_tim4.c到工程中即可。
以上是使用标准库函数的编写方法,另外可直接使用已经定义好的头文件,直接对寄存器和位赋值设置操作。
到STVD安装目录找到单片机类型的头文件,本例是C:\Program Files\STMicroelectronics\st_toolset\include中找到STM8S003.h和STM8S103F.h,复制到新建的工程文件夹中,如下两图
一中
在STVD中添加单片机头文件,如下图,本例是stm8s003f3.h和stm8s103f.h,文件中有对特殊功能寄存器的定义。
在main.c文件中加入“#include stm8s003f3.h”或“#include STM8S103F.h”。这样就可以直接以单片机头文件定义的寄存器名直接赋值,比如:
为了便于位操作,可另建一个位定义文件,本例是建立stm8s_bitsdefine.h文件名,以下是示例,用户可自行设置添加内容:
#ifndef _MACRO_BITS_DEFINE_H_
#define _MACRO_BITS_DEFINE_H_
/*----------------------------------------------------------------------------*/
//IO bits define
/* Port A data output bits*/
volatile _Bool PA_ODR_0 @PA_ODR:0;
volatile _Bool PA_ODR_1 @PA_ODR:1;
volatile _Bool PA_ODR_2 @PA_OD
您可能关注的文档
最近下载
- 2024高考物理(四川卷).doc
- 粤教版高中物理选择性必修第二册教材习题解答.pdf
- 专题14 世界区域地理-备战2023年中考地理二轮复习优质课件.pptx VIP
- 电路分析基础 教学课件 作者 史健芳 陈惠英 李凤莲 等 ch9电路的频率响应.ppt
- 从优秀走向卓越——高中阶段的优生培养策略课件高中尖子生培养主题班会.pptx VIP
- 北京市清华大学中学2025届高三第六次模拟考试物理试卷含解析.doc
- 电路分析基础 教学课件 作者 史健芳 陈惠英 李凤莲 等 ch8三相电路.ppt
- 自注意力机制.pptx VIP
- PGT-25-PLUS-燃气轮机结构介绍-图文.ppt.pptx
- 电路分析基础 史健芳 陈惠英 李凤莲 等 ch7 5-7新.ppt
文档评论(0)