使用环境(蓝色粗体字为特别注意内容)
1、硬件环境:STM8S003F3P6、ST-LINK stlink V2
2、软件环境:Embedded Workbench 6.5(IarIdePm)、ST Visual Programmer(STVP)

STM8以其超高的性价比,在低端单片机领域占领了很大的市场,市面上很多单片机产品都能够看到STM8的身影,下面对STM8和89C51来做简单的对比:

1、对“89C51”而言:
对“89C51”而言,其能满足大部分需求,但最初代的“89C51”不具有“ADC”、“PWM”等外设功能;而且单就“ADC芯片”而言,列举一下4点:
i)、   “价格方面”:以“STC89C52”(DIP-40)为例,工作电压为“+5.0V”,其“某宝”价格多 在“4.5RMB/PCS”以 上;以“ADC0804”(8bit-ADC)为例,其“某宝”价格多在“5.5RMB/PCS”以上, 过于便宜的芯片,无法保 证;
ii)、 “应用方面”:以“ADC0804”(8bit-ADC)为例,即便是单片“贴片-SOP20封装”,其芯片在PCB板上所占面 积亦不可忽略,由此带来的“电源”、“GND”、“通信线路布线难度”等问题,在后续开发中,会随着“开发 规模增加”而越发困难;
iii)、“开发方面”:最新的“stc系列单片机”也引入了“ADC”、“PWM”等功能,“指令集”采用“CISC”,开发级别 为“寄存器”;
iv)、 “基本电路”:在“基本电路”的4部分中,其“晶振电路”不能省略,“外部晶振”多采用“11.0592MHz”; 其“下载方式”多采用“串口下载”,因此其“下载电路”与“串口电路”共用同一线路;“代码下载完 成”后,需“热重启”方可运行代码;2、对“STM8”而言:
对“STM8”而言,其具有“ADC”、“PWM”等外设功能;而且单就“STM8芯片”而言,列举一下4点:
i)、  “价格方面”:以“STM8s003f3p6”(集成:10bit-ADC)为例,工作电压为“+5.0V”/“+3.3V”(推荐), 其“某宝”价格多在“1.35RMB/PCS”以上,过于便宜的芯片,无法保证;
ii)、 “应用方面”:以“STM8s003f3p6”,对“贴片-TSSOP20封装”,其芯片在PCB板上可省略“ADC芯片”所占面 积,由此带来的“电源”、“GND”、“通信线路布线难度”等问题也将迎刃而解;
iii)、“开发方面”:以“STM8s003f3p6”,现已有“专用Lib库”,开发级别可为“寄存器”或“库开发”,可有效提 高“开发效率”;
iv)、 “基本电路”:在“基本电路”的4部分中,其“晶振电路”而言,“STM8”默认使用“芯片内部”自带的“16MHz频 率”,因此,若无特殊要求,“外部晶振”可省略,可进一步减小“PCB板面积”、“简化PCB布线”;其“下载 方式”多采用“SWD下载”,因此其“下载电路”与“串口电路”不为同一线路,且“代码下载完成”后,无需“热 重启”即可运行代码;
可见,STM8还是很有优势的,但是在稳定性方面STM8却比不上51单片机,原因很显然。

关于STM8程序的烧写、编译过程,网上很多资料有介绍,但是都比较乱,不成体系,对于刚刚接触STM8的读者来说可能比较费劲,会遇到很多坑,笔者亦是如此,故在此记录一下,供后来者学习借鉴。在进入正题之前,先来认识几个软件,这几个软件可能对于经常使用Keil来编译和ISP烧录的朋友来说可能就比较陌生,毕竟,STM8和STM32的开发环境区别还是蛮大的,Keil只能用来开发STM32/C51而无法开发STM8.

①Embedded Workbench 6.5(IarIdePm)
软件图标如下图

IAR的工程文件格式为*.eww,安装完IAR之后双击即可打开工程。这里点一下IAR的常用功能。

1)IDE主要设置(Tools->Options),在这里可以进行一些IDE系统设置,比如字体大小、配色、显示行号等

2)工程右键->Options,工程配置界面,

这里可以配置一些工程相关的设置,比如编译链接等选项。

3)编译按钮

工具栏中最常用的是两个按钮,第一个是编译(compile)、第二个是编译链接生成可执行文件(make),其中最常用的是第二个,毕竟一步到位嘛。总体来说IAR这个软件还是很友好的,Keil有的功能它可以做的更好,Keil没有的功能它也有,而且还能自定义注释模板(详见我的另外一篇文章https://blog.csdn.net/pang9998/article/details/90726280),可以自动插入漂亮的注释模板:

相信熟悉Keil IDE的朋友能够很快上手!好了开发环境介绍完了,下面来介绍一下烧录软件,STM8一般用STVP工具下载(笔者使用IAR自带的下载调试功能总是出错,不知如何配置,希望了解的朋友能够给些建议~)

②ST Visual Programmer(STVP)

1)软件图标为:主要界面如下图所示:

其中程序下载步骤分为三步:①打开可执行文件,②选择单片机型号,③下载程序 (Program->All tabs),打开可执行文件*hex/*.s19的时候STVP会进行校验,如果校验成功则会提示 File successfully loaded. File Checksum 0xAF11A。

②烧录器,STM8S003资源有限,因超低的成本不可能有太多冗余的资源,故芯片本身不带ISP BootLoader的(有几款同系列高级一点的可能带BootLoader,但是在产品中就没必要带BootLoader了,完全没有必要!),因而无法通过TTL串口下载程序,而需要专门硬件来烧录,这个硬件就是ST-LINK stlink V2,好用不贵,十几元一个!

③接线方式(四根线)

ST-LINK stlink V2              STM8

3.3V                                     VCC
RST                                     NRST
SWIM                                  SWIM
GND                                    GND

注意程序烧录之后,需要拔掉RST连接线,这时候,程序才能开始运行。

STM8入门以及程序编译、烧录、IAR使用方法(扫盲篇)相关推荐

  1. iar烧录程序步骤_STM8入门以及程序编译、烧录、IAR使用方法(扫盲篇...

    使用环境(蓝色粗体字为特别注意内容) 1.硬件环境:STM8S003F3P6.ST-LINK stlink V2 2.软件环境:Embedded Workbench 6.5(IarIdePm).ST ...

  2. iar烧录程序步骤_STM8入门以及程序编译、烧录、IAR使用方法(扫盲篇)

    1.硬件环境:STM8S003F3P6.ST-LINK stlink V2 2.软件环境:Embedded Workbench 6.5(IarIdePm).ST Visual Programmer(S ...

  3. Java程序编译的几个方法(编辑器Notepad++)

    Java程序编译的几个方法 以写好的HelloWorld.java文件为例: 我将这个HelloWorld.java文件放在了: HelloWorld.java文件的内容: 编译的原理就不多说了:(画 ...

  4. 实现微信小程序编译和运行环境系列(初始篇)

    实现微信小程序编译和运行环境系列(初始篇) 前言 最近一段时间在研究实现微信小程序和小游戏编译打包和运行环境平台开发 目前基本可以支持微信基础库2.8.2功能迭代了 所以想通过记录分享一下自己的认知过 ...

  5. 实现微信小程序编译和运行环境系列 (进阶篇)

    动手实现微信小程序和小游戏编译打包和运行环境平台 (进阶篇) # 前言 距离上一篇初始篇过了一段时间,在初始篇里面主要分享了微信小程序工具 和微信小程序的文件组成,以及小程序架构的基本大纲和描述,看了 ...

  6. c语言烧录芯片,入门扫盲!芯片程序的烧录过程,没想象那么难跟着走就行!...

    大家好!之前就说过从上个月起,创客e工坊在原本讲解电路知识的基础上会逐渐加入单片机的教程. 并且也如约出了三期的单片机视频:什么是单片机:C语言如何控制单片机:单片机小制作自动加湿器: 那么,今天我们 ...

  7. STM8系列单片机程序的下载方式

    STM8系列单片机程序的下载方式 一.概述 二.SWIM硬件接口下载方式 三.UART硬件接口下载方式 四.总结 原文链接:https://www.yourcee.com/newsinfo/29285 ...

  8. 泰凌微ble mesh蓝牙模组天猫精灵学习之旅 ① 小白也痴迷,如何在 Linux环境搭建编译烧录 安信可TB02,点亮一盏LED灯;

    本<泰凌微ble mesh蓝牙模组天猫精灵学习之旅>系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1.小 ...

  9. BizTalk 2006 简单入门示例程序(附源项目文件下载)

    BizTalk 2006 简单入门示例程序(附源项目文件下载) 为初学BizTalk Server 2006的开发人员,提供一个简单入门的示例程序,包括一个Receive Port.Send Port ...

  10. 报表引擎API开发入门— EJB程序数据源

    2019独角兽企业重金招聘Python工程师标准>>> 我们前面讲了几个数据源,今天我们来讲一下EJB数据源,这篇讲完我们数据源这部分就讲完了.数据连接不需要直接访问数据库,而是使用 ...

最新文章

  1. JavaScript初学者编程题(23)
  2. 文献记录(part75)--基于最大平均熵率的大数据关联聚类算法
  3. java 反射api_Java的反射API
  4. linux 终端调用MATLAB程序
  5. 团体程序设计天梯赛-练习集-L1-036. A乘以B
  6. 图片居中裁剪_魔镜,魔镜,谁最美丽!利用PS图层混合模式打造图片幻觉效果
  7. docker 容器启动后立马退出的解决方法
  8. php安全性怎么样,PHP网站安全性浅谈
  9. iOS.数据持久化.PersistenceLayer.属性列表
  10. Linux 使用 ffmpeg 开发
  11. unity下载网页所有图片
  12. mujoco安装教程
  13. 抖音怎么上热门?这样发视频点赞过万!
  14. 利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队。如果该年没有举办世界杯,则输出:没有举办世界杯。
  15. QT手动添加Q_OBJECT报错解决方法记录
  16. 2-6年“iOS开发”,跳槽简历思路(必备)
  17. 华为测试心率软件,华为手环3的心率健康监测真的好用么?我实测了下
  18. @Value为啥取不到值
  19. C语言学习之路——程序设计概述
  20. 用C#输出99乘法表

热门文章

  1. 猫游记之游武夷逛茶博
  2. Excise_day03
  3. R3Det: Refined Single-Stage Detector with Feature Refinement for Rotating Object
  4. PDF添加页码(itext)
  5. 苹果CMS网站awd复现
  6. Java获取网络图片转化为输入流
  7. 3.破解百度翻译 输入keyWord返回对应翻译的数据
  8. Pytorch:训练中断再恢复时的注意事项
  9. 六年如逆旅,我亦是行人 ——一个顾问的六年安全从业经历
  10. SpringCloud版本选择