【天津科技大学-智能科学与先进制造实验班】1-LED篇-关于手焊STM8S208MB开发板的测试与学习

一、引言

        首先感谢天津科技大学董舰老师以及创驿社各位学长们对我们22级智能科学与先进制造实验班的培养与帮助,能给我们一个非常珍贵的实践机会来学习STM8单片机,本篇将以零基础手把手教会大家如何通过点亮LED,从而测试自己手焊STM8开发板是否合格。如果有错误,欢迎大家及时指导。.

 

二、关于STM8的编译器的下载

        1、STVP(这里不推荐)

        STVP(ST Visual Programmer)是由意法半导体(STMicroelectronics)开发的一款集成开发环境(IDE),主要用于编程和调试STM8系列微控制器。

STVP提供了一种直观易用的界面,使得用户可以轻松地编译、下载和调试STM8单片机的应用程序。用户可以通过STVP将STM8单片机的Flash、EEPROM、Option Bytes等进行编程和擦除,以及进行调试操作,包括单步调试、断点调试、观察和修改寄存器、内存和变量等。

        除了基本的编程和调试功能之外,STVP还提供了一些高级功能,如仿真模式、实时跟踪等,可以帮助开发人员更快速、更准确地诊断和解决问题。此外,STVP还支持多种编程语言,包括C、C++和汇编语言等,使得用户可以根据自己的喜好和需要选择合适的编程语言。

百度网盘下载地址:

链接:https://pan.baidu.com/s/1KtWA7MXYD2QC4JBfm2HEHA?pwd=lvw1 
提取码:lvw1

        2、IAR(推荐使用)

        IAR Embedded Workbench for STM8(简称IAR)是一款由IAR Systems公司开发的集成开发环境(IDE),专门用于编译、调试STM8系列微控制器的应用程序。IAR被广泛认为是一款高效、稳定、易用的开发工具。

        IAR提供了一个直观的用户界面,使得用户可以方便地编辑、编译、调试和下载STM8的应用程序。其编译器和调试器都是针对STM8单片机进行优化的,能够生成高效的代码并提供实时调试功能。

        除了基本的编译和调试功能之外,IAR还提供了一些高级功能,如代码分析工具、代码覆盖率分析、CPU使用率分析、动态内存分析等,帮助开发人员更好地了解和优化他们的代码。

        IAR还提供了全面的STM8系列微控制器支持,包括各种不同型号和封装的芯片,以及各种不同的外设和接口。它还提供了广泛的文档和示例代码,帮助用户快速掌握和应用STM8单片机开发。

百度网盘下载地址:

链接:https://pan.baidu.com/s/1AEycyuYSBVTp95NMHW4UbA?pwd=5l3i 
提取码:5l3i

三、软件的安装

这里引用了CSDN另外两位博主的文章:

STVP安装 原作者:StrongHuang

IAR安装 原作者:“dandan”不能定义

四、ST-LINK下载器

        我们在大一上学期时使用过Mixly编译器编写过Arduino UNO的程序,在下载程序时只需要将Arduino UNO单片机上的串口通过USB连接电脑即可烧录程序。但是在使用STM8以及STM32时,我们烧录程序大多数会使用一个名叫ST-LINK的下载器来烧录程序。

        ST-Link是意法半导体(STMicroelectronics)推出的一款微控制器下载器,用于将编译好的代码下载到STM32和STM8微控制器中,并且支持微控制器的调试功能。

        ST-Link下载器是一种USB接口的设备,它包括了一个JTAG/SWD接口和一个USB接口。用户可以通过ST-Link将编译好的代码下载到微控制器中,并且在微控制器中设置断点、单步执行等调试操作,以帮助开发人员诊断和解决代码中的问题。

        ST-Link下载器不仅支持STM32和STM8微控制器,还支持其他一些微控制器,如STM32MP1系列等。此外,ST-Link下载器还支持多种不同的IDE,包括IAR Embedded Workbench、Keil MDK-ARM、Eclipse等,可以与开发人员熟悉的IDE进行无缝集成。

        大家可以在某宝或者某东自行购买,实物如图4-1

图4-1 ST-Link

五、ST-Link硬件连接STM8开发板

        当我们已经拥有一块STM8和ST-Link时,我们所有的硬件设备就已经准备完毕,现在只需要将ST-Link与STM8开发板连接起来并插在电脑上,再写一段代码即可点亮LED(获得成就:点灯大师),那我们该如何连接呢?

        我们仔细观察一下ST-Link上面的丝印如图5-1,可以看到5V,3.3V,GND,RST,SWIM,SWDIO,SWCLK的字样,ST-Link数据手册如图5-1:

图5-1 ST-Link数据手册

 这里我们使用ChatGPT帮助我们翻译一下:

由USB连接器提供的5V电源兼容USB 2.0全速接口提供USB Type-A到Mini-B数据线SWIM特定功能:

  • SWIM接口支持1.65 V至5.5 V的应用电压
  • 支持SWIM低速和高速模式
  • SWIM编程速率:低速时为9.7 kbyte/s,高速时为12.8 kbyte/s
  • SWIM可连接到具有ERNI标准连接器的应用程序 ◦
  • 垂直连接器参考:284697或214017。
  • 水平连接器参考:214012
  • SWIM电缆可连接到具有引脚头或2.54 mm间距连接器的应用程序
  • JTAG / 串行线调试(SWD)特定功能:
  • JTAG / SWD接口支持1.65 V至3.6 V的应用电压和5 V容忍输入
  • JTAG电缆可连接到标准的JTAG 20针2.54 mm间距连接器
  • JTAG支持
  • 支持SWD和串行线查看器(SWV)通信
  • 直接固件更新支持(DFU)
  • 在与PC通信期间状态LED闪烁
  • 工作温度范围从0°C到50°C
  • 1000 Vrms高绝缘电压(仅适用于ST-LINK / V2-ISOL)

其中5V,3V是正极(这里需要注意,通过STM8的数据手册得知STM8既可以5V供电也可以3,3V供电,但是在以后使用STM32时需要注意,STM32不可以使用5V供电,只能使用3.3V供电),GND是接地负极,这两个是之前上课讲过的,也是最重要的构成电路回路的部分。关于RST,SWIM,SWDIO,SWCLK大家可以查看数据手册,STM8需要连接的是RST和SWIM。如下图5-2:

图5-2 ST-Link丝印

        我们打开本开发板的烧录接口原理图如图5-3(因考虑本开发板是老师学长辛苦绘制出来的,暂且不在此处放置全部原理图,请大家在班群自行下载),大家可以看到原理图的网络标识都有与ST-Link相对应的,只需要对应连接即可。

图5-3 ST-Link原理图

        下图为实物连接图,如图5-4:

图5-4 实物图连接

六、连接LED

        我们现在已经成功将ST-Link与STM8连接到一起了,今天的目标是点亮LED,我们现在进行硬件连接的最后一步,连接LED。首先我们同样的先查阅LED的原理图,如图6-1:

图6-1 LED原理图

        我们可以看到LED2与LED3他们一端共地一端连接的是1,2号排针,由此可以分析出,只需要给1,2号排针释放一个高电平即可点亮LED2与LED3。现在问题来了,LED4与LED5他们一端是3,4号排针好像没有什么问题,但是另一端他们却是VCC-MCU,那这个VCC-MCU是什么呢?我们可以仔细查阅电源电路原理图,在原理图中已经标注了VCC-MCU是单片机电源,如图6-2。

 图6-2 电源电路

        那我们找到STM8S208MB数据手册看一下单片机电源的引脚的部分,先看数据手册中的符号和缩写说明,如图6-3:

图6-3 符号和缩写说明 

        通过图6-3得知,S为供电引脚,我们找出所有供电引脚查看说明,如图6-4:

图6-4 数据手册(引脚)

        从而我们分析上面LED电路原理图,如果我们想给LED3和LED4点亮,就需要给LED的两端实现电势差,从而使电流流动,他们的一端是高电平,那只需要给另一端设置低电平即可点亮LED3和LED4。

        那我们现在的电路已经分析清楚了,那我们只需要给4个排针分别连接一个单片机的GPIO即可完成控制电路,我这里选择的是PI0-4,如图6-3:

图6-3 LED实物连接图

七、程序编写

        在下载完IAR之后,我们只需要编写一个很简单的设置GPIO高低电平的程序即可完(获)成(得)点(点)亮(灯)LED(大师)的任(成)务(就),根据刚才分析完的电路,我们需要将PI0,PI1设置成高电平PI2,PI3设置成低电平。由于大家没有学习过寄存器编程,本人不在这里过多赘述,CV一遍代码即可实现。在写代码之前,我先教大家如何配置好IAR的编程环境。按照以下图片流程即可,我就不标图序号了(别管,我懒)。

        OK,好的恭喜大家,距离点亮4个LED仅差最后一步CV代码,烧录的按钮就是倒数第二个图标,绿色的小三角,代码我直接奉上: 

#include "iostm8s208mb.h"       //调用STM8S208MB头文件int main()
{while(1){PI_DDR=0x0F;        //设置输出PI_CR1=0x0F;        //设置推挽模式PI_CR2=0x00;        //设置频率PI_ODR=0x03;        //设置PI0,PI1为高电平,PI2,PI3低电平}
}

最后实物效果如下,如果失败了一定是你的焊接出了问题,绝对不是我太菜了: 

 

恭喜你解锁了点灯大师的成就,你距离点亮mos又进了一步。加油吧骚年!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/14410.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

采样与保持仿真实验(计控实验一simulink)

【ChatGPT】前些天发现了一个巨牛的人工智能学习电子书,通俗易懂,风趣幽默,无广告,忍不住分享一下给大家。(点击查看学习资料) 一、实验目的与要求 1、了解数/模转换器的零阶保持器作用。 2、验证零阶保持…

AI新晋“顶流”ChatGPT将对财务数字化带来哪些影响?

近期ChatGPT持续火热,2个月内,成为最快达成月活超过1亿的现象级应用。无论是科研人员、技术人员还是普通大众都对此非常关注,并惊讶于它强大的对话能力,ChatGPT也在国内持续霸榜热搜,成为大家茶余饭后的热点话题。毫无…

数电实验四-触发器(Multisim和Basys3)

【ChatGPT】前些天发现了一个巨牛的人工智能学习电子书,通俗易懂,风趣幽默,无广告,忍不住分享一下给大家。(点击查看学习资料) 特别说明:该系列内容均是本人实验记录,无盗取侵权之嫌…

Maynor的博客专家成长之路——暨2023年中复盘

文章目录 博客专家成长之路——暨2023年中复盘前言念念不忘的博客专家每天只做三件事敲代码写博客健健身 我的感悟 不足之处未来:和CSDN共同成长最后 博客专家成长之路——暨2023年中复盘 前言 ​ 2023年不知不觉已经过去了半年有余,也是时候作年中复盘…

上传ChatGPT相关资源,瓜分¥5000元奖金池

一、活动时间 资源类型时间上传地址上传【ChatGPT的原理分析】资源4月17日-4月30日https://upload.csdn.net/creation/uploadResources?taskId643925fde212675bb64a3984&utm_sourceblog上传【ChatGPT的多种使用方法】资源4月15日-4月30日https://upload.csdn.net/creatio…

ChatGPT带我做四轴飞行器和自平衡小车

按照ChatGPT的说法,这款主板的的主控MCU、无线通信、电源管理、外设接口可以共用,需要差异化的有电机驱动、传感器的选择、控制算法和软件、电源供电。ChatGPT说的共用部分没啥争议,有差异化的地方需要细想下:电机驱动显然应该不同…

统一网关Gateway

一、网关Gateway作用介绍 网关功能: 身份认证和权限校验 对工作人员或者是内部人员才能允许查看敏感信息 一切请求先到网关再到微服务,这样就能做到身份认证和权限校验 服务路由、负载均衡 倘若我们通过了身份认证和权限校验,那怎么知道访问哪…

ChatGPT加持下!OpenAI估值已达290亿美元,新一轮融资宣告结束!

来源:机器之心 因为 ChatGPT 的发布,OpenAI 成为了目前最炙手可热的创业公司,很多投资者都希望加入光荣的股东行列。 根据本周五 TechCrunch 看到的文件,包括 Tiger Global、Sequoia Capital、Andreessen Horowitz、Thrive 和 K2 …

chatgpt赋能python:用Python快速替换文本的技巧

用Python快速替换文本的技巧 在编程世界中,文本处理是一项必备的技能。作为一名有10年Python编程经验的工程师,我深刻理解到Python在文本处理方面的强大之处,特别是在快速替换文本方面。在本篇文章中,我将分享几个用Python快速替…

【AI提示】ChatGPT提示工程课程(吴恩达OpenAI) 自动回复评论+温度参数设置(中文chatgpt版)...

Expanding 在本课中,您将生成针对每位客户的评论量身定制的客户服务电子邮件。 设置 import openai import osfrom dotenv import load_dotenv, find_dotenv _ load_dotenv(find_dotenv()) # read local .env fileopenai.api_key os.getenv(OPENAI_API_KEY) def …

AC66U-B1) 刷梅林固件教程

下载固件: 华硕ac6u和ac66u-B1用的是相同的固件,7.5版固件下载地址为http://firmware.koolshare.cn/Koolshare_Merlin_Legacy_380/ASUS/RT-AC66U_B1/ 升级固件 目前华硕路由器原厂固件支持刷第三方固件,因此我们只需要进入华硕路由器的后台…

路由器选择使用指南之一梅林

一、序 看了看我的博客数据,发现有关路由的文章最受欢迎,阅读量最大(仅指笔者所写的文章)。所以,以后多发点有关路由应用的。这一系列介绍的路由系统主要将说说梅林、padavan、和Openwrt。主要笔者也就这三个用得多了…

让梅林R6400支持sftp协议

说明 通常linux中ssh默认支持sftp,梅林路由器中的ssh是精简版,不支持sftp协议。 自带的配置不支持,是否有有办法呢?我们可以先装entware-setup.sh,然后用opkg安装sftp。 有了ssh和sftp,我们可以做很多事…

fgo梅林服务器维护,FGO:梅林池抽卡引发退游现象 国服没强卡真的不能玩?

大家所期待的梅林卡池终于在昨天维护以后正式登录国服FGO,梅林作为FGO第一强卡的存在使得其拥有很多强度党拥趸者,因为其“拐”的属性对于红卡英灵来说具有极大的提升,所有亦在所有国服FGO玩家心中有着重要的地位。而国服本年度开始第二波梅林…

开源路由器-OpenWRT/梅林

文章目录 前言开源路由器开源路由器有多个版本OpenWRTLEDE 华硕梅林华硕梅林官网华硕梅林文档开发工具链 梅林论坛刷机梅林小宝梅林插件梅林插件开发 前言 近段时间,有朋友咨询路由器刷梅林系统,定制上网加速的方案。我研究了一下,整理了一些…

梅林 php mysql_k3梅林7.7!完美安装onmp!!!K3架设php网站,博客,云盘,数据库!!!...

本帖最后由 chengmeiqq 于 2018-3-19 16:16 编辑 k3梅林7.7!完美安装onmp!!!phpMyAdmin-Owncloud-Kodexplo... 固件: K3_Melin_11.16_X7.7.trx 刷机我就不说了 -------------------------------------- 以下都架设下K3路由器上面梅…

如果ChatGPT有1%的风险伤害你,你还会用它吗?超级智能值得恐惧吗

文|Gary Marcus 源|学术头条 “超级智能可能会即将到来,也可能不会。但无论如何,都有很多值得担心的事情。” 近日,人工智能领域内的 “叛逆者”、纽约大学心理学和神经科学荣誉教授 Gary Marcus 发文称,“…

“ChatGPT的问题、风险与机遇”会议综述

来源:清华大学智能法治研究院 本文约7900字,建议阅读10分钟 本文为王博老师于2023年3月26日在“天津大学数字法学系列论坛”讲座的综述。 主讲人:天津大学智算学部王博副教授。王博老师担任天津大学智算学部语言与心理计算研究组负责人。曾先…

用 Python 写了一个自动弹钢琴脚本,轻松弹奏出各种钢琴曲!

(永久免费,扫码加入) 来源丨网络 事情是这样的,女神马上要毕业了,前两天跟我彻夜长谈,还说自己一直有个钢琴家的梦想。 这不为了帮女神圆梦,在我经过一番苦思冥想之后,终于用Python写…

近期微软重大论文----《通用人工智能的火花:GPT-4的早期实验》

这篇论文是最近讨论度极高的一篇论文,推特上几乎被这篇论文刷屏,作者Sebastien Bubeck是微软机器学习基础组的研究经理。他本人之前的研究主要集中在机器学习理论,凸优化,对抗鲁棒性方法,下面是该大佬的个人主页&#…