一、引言

首先感谢天津科技大学董舰老师以及创驿社各位学长们对我们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又进了一步。加油吧骚年!

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

  1. 南方科技大学-计算智能与先进制造方向-博士-博士后-研究助理招聘

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:知社,南方科技大学 AI博士笔记系列推荐 周志华<机器 ...

  2. 天津科技大学计算机科学与技术专业怎么样,2021年天津科技大学重点专业排名有哪些,招生优势专业排行榜...

    1.天津科技大学王牌专业名单 国家级特色专业:食品科学与工程.包装工程.生物工程.轻化工程 天津重点建设学科 国家重点学科(二级学科):发酵工程 天津市重点学科:轻工技术与工程.食品科学与工程.化学工 ...

  3. 【工业大数据】发展工业大数据,助力天津市先进制造研发基地建设

    工业大数据对先进制造业发展的促进作用 工业大数据是指在工业领域,从客户需求到产品研发设计.工艺设计.采购供应.生产制造.成本核算.销售服务等产品全生命周期各个环节产生的数据及相关技术和应用的总称.工业 ...

  4. DaoCloud道客客户都有哪些?DaoCloud客户案例覆盖金融科技、网联汽车、先进制造、能源、制造、政府、教育、零售等行业

    互联网放大了传统企业的困境,数字化浪潮吞噬了一半的财富 500 强公司,42% 的传统企业已经开始实施数字化转型战略.DaoCloud 道客助力金融科技.网联汽车.制造工厂.能源企业和政府单位快速构建 ...

  5. 工业软件研究框架_聚焦十四五!先进制造急先锋——工业软件

    十四五规划酝酿正当时. 据新华社,"十四五"规划编制工作自16日起开展网上意见征求. 预计十四五将更注重提高发展质量,更注重内需,更注重发展均衡,更注重创新升级,更注重系统性应对世 ...

  6. 近期活动盘点:三创对接会——先进制造专场

    想知道近期有什么最新活动?大数点为你整理的近期活动信息在此: 三创对接会--先进制造专场 2019年7月24日 "清华正芳华,创新当自强"!第68期三创对接会将举办先进制造专场,为 ...

  7. 天津科技大学计算机科学与信息工程学院,天津科技大学人工智能学院欢迎您!...

    为加强学院实验室安全管理,实现实验室管理工作的科学化.规范化.制度化,进一步确定安全检查与督查相关人员职责,提高实验安全管理水平,确保学院教学科研工作顺利进展.特制定实验室安全检查与督查办法. (一) ...

  8. 天津科技大学计算机学院复试分数线,2021天津科技大学研究生复试分数线

    2021天津科技大学研究生复试分数线已经公布,包含学术学位.专业学位.专项计划复试分数线,供大家参考,如意了在此祝广大考研学子都能顺利上岸. 一.2021年天津科技大学研究生分数线 1.专业分数线 各 ...

  9. 天津科技大学计算机基础,天津科技大学大学计算机基础样卷

    天津科技大学大学计算机基础样卷 (8页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 说明:说明:本试卷仅用于帮助学生了解期末考试题型.了 ...

最新文章

  1. BZOJ2002: [Hnoi2010]Bounce 弹飞绵羊
  2. UA MATH563 概率论的数学基础 中心极限定理5 Renyi定理
  3. 模块计算机型x86yu,ldd3学习之九:与硬件通信
  4. python中函数和类的区别_Python中函数和方法的区别
  5. 知识越分享,收获越多。
  6. 关于button不响应事件
  7. 滴滴开源基于 React 的移动端开发组件库-Pile.js
  8. Camera 花屏、分屏、卡屏,黑屏问题分析
  9. 计算机专业考研复试经验【最终版本】(来自一位上岸又退学的二战dog)
  10. 一文带你了解华为私有云
  11. 常见的总线通信方式及其特点
  12. 修改bounds属性后的效果
  13. winform去掉laber背景色
  14. 南怀瑾:家教与母教_huadingjin_新浪博客
  15. GB、Gb、MB、Mb知识扫盲
  16. 旋转矩阵中6保6_双色球旋转矩阵(9-12)个号中6保5公式
  17. 在计算机上怎么搜共享打印机,如何共享电脑中的打印机?共享电脑打印机步骤...
  18. 乐融致新不再纳入乐视网合并报表范围 融创已是最大股东
  19. Python利用正则表达式提取var自定义变量的值
  20. 韩信点兵算法——c语言实现

热门文章

  1. 手机访问HbuilderX移动网页步骤
  2. 基于STM32与ATT7022E多功能电力监测仪设计
  3. 房产装修源码 php,房屋装修方案网站模板
  4. 机会,大部分时候,并不是留给有准备的人!!!
  5. neo4j Repository 查询关键字
  6. 学习并发编程的好网站
  7. AI小冰:如果虚拟人有“灵魂”,它将如何融入社会?
  8. 利用DW制作简单的LOGO / 以及对CSS选择器的了解
  9. UniVAE:基于Transformer的单模型、多尺度的VAE模型
  10. 主治医师考计算机考试报名时间,【医疗热点】2020卫生资格考试各科考试时间汇总!...