深入解析 STM8S103F2/F3/K3 微控制器:特性、应用与设计要点

电子说

1.4w人已加入

描述

深入解析 STM8S103F2/F3/K3 微控制器:特性、应用与设计要点

引言

在电子设计领域,微控制器是众多项目的核心组件。STM8S103F2、STM8S103F3 和 STM8S103K3 这三款微控制器来自意法半导体(ST),属于 8 位微控制器系列,以其高性能、低功耗和丰富的外设功能,在工业控制、消费电子等领域得到了广泛应用。本文将对这三款微控制器进行详细解析,帮助电子工程师更好地了解和应用它们。

文件下载:STEVAL-IHM029V1.pdf

产品概述

整体特性

STM8S103F2/x3 系列微控制器具有 8K 字节的 Flash 程序存储器和集成的真数据 EEPROM,被归类为低密度设备。它们具备高性能、高可靠性和低成本的优势,这些优势得益于先进的内核和外设技术、16MHz 的时钟频率、强大的 I/O 接口、独立的看门狗定时器以及时钟安全系统。同时,集成的真数据 EEPROM 支持高达 300k 次的读写循环,以及内部时钟振荡器、看门狗和欠压复位等功能,有效降低了系统成本。

不同型号对比

设备 STM8S103K3 STM8S103F3 STM8S103F2
引脚数 32 20 20
最大 GPIO 数(I/O) 28 16 16
外部中断引脚数 27 16 16
定时器 CAPCOM 通道数 7 7 7
定时器互补输出数 3 2 2
A/D 转换器通道数 4 5 5
高灌电流 I/O 数 21 12 12
低密度 Flash 程序存储器(字节) 8K 8K 4K
数据 EEPROM(字节) 640 640 640
RAM(字节) 1K 1K 1K
外设集 多功能定时器(TIM1)、SPI、I²C、UART、窗口 WDG、独立 WDG、ADC、PWM 定时器(TIM2)、8 位定时器(TIM4)

从表格中可以看出,不同型号在引脚数、I/O 数量、存储器容量等方面存在差异,工程师可以根据具体的应用需求选择合适的型号。

核心组件分析

中央处理单元 STM8

  • 架构与寄存器:采用哈佛架构和 3 级流水线,具有 32 位宽的程序存储器总线,大多数指令可单周期取指。包含 6 个内部寄存器,20 种寻址模式,如索引间接寻址和相对寻址,以及 80 条指令。还拥有 16 位的 X 和 Y 索引寄存器、8 位累加器、24 位程序计数器和 16 位堆栈指针,提供了强大的数据处理能力。
  • 指令集:平均指令大小为 2 字节,具备标准的数据移动、逻辑/算术功能,支持 8 位乘 8 位、16 位乘 8 位和 16 位乘 16 位的运算,以及位操作和堆栈与累加器之间的数据传输。

单总线接口模块(SWIM)和调试模块(DM)

  • SWIM:通过单总线接口可直接访问调试模块和进行内存编程,在所有设备操作模式下均可激活,最大数据传输速度为 145 字节/毫秒。
  • DM:非侵入式调试模块,性能接近全功能仿真器。可实时监控 CPU 操作、读写 RAM 和外设寄存器,支持软件断点和高级断点功能。

中断控制器

支持嵌套中断,具有三个软件优先级级别和 32 个硬件优先级的中断向量,最多可处理 27 个外部中断,包括 TLI 中断,还具备陷阱和复位中断功能。

闪存程序和数据 EEPROM 存储器

  • 存储容量:拥有 8K 字节的单电压 Flash 程序存储器和 640 字节的真数据 EEPROM,以及用户选项字节区域。
  • 写保护:提供两级写保护,第一级 MASS 保护主 Flash 程序存储器、数据 EEPROM 和选项字节,可通过写入 MASS 密钥序列解除保护以进行应用内编程(IAP);第二级 UBC 保护特定的用户引导代码区域,在 IAP 过程中保持写保护。
  • 读保护:激活读保护后,试图更改其状态将触发程序和数据存储器的全局擦除,提供了较高的数据安全性。

时钟控制器

  • 时钟源:支持四种不同的主时钟源,包括 1 - 16MHz 的高速外部晶体(HSE)、高速用户外部时钟(HSE user - ext)、16MHz 的高速内部 RC 振荡器(HSI)和 128kHz 的低速内部 RC 振荡器(LSI)。
  • 功能特性:具有时钟预分频器,可调整 CPU 和外设的时钟频率;支持安全的时钟切换,确保无毛刺;可管理时钟门控以降低功耗;具备时钟安全系统(CSS),当 HSE 时钟故障时自动切换到内部 RC 振荡器,并可选择生成中断;还提供可配置的主时钟输出(CCO)。

电源管理

提供四种低功耗模式,包括等待模式、带调节器开启的活动暂停模式、带调节器关闭的活动暂停模式和暂停模式。工程师可以根据应用需求配置不同的模式,以实现最低功耗、最快启动时间和可用唤醒源之间的最佳平衡。

看门狗定时器

  • 窗口看门狗定时器:用于检测软件故障,应用程序必须在特定时间窗口内刷新计数器,否则将触发复位。在 16MHz CPU 时钟下,超时周期可在 75µs 至 64ms 之间调整。
  • 独立看门狗定时器:由 128kHz LSI 内部 RC 时钟源驱动,可解决硬件或软件故障导致的处理器故障,时间基范围从 60µs 到 1s。

定时器

  • TIM1 - 16 位高级控制定时器:适用于广泛的控制应用,如电机控制、照明和半桥驱动。具有 16 位的向上、向下和向上/向下自动重载计数器,四个独立的捕获/比较通道,可配置为输入捕获、输出比较、PWM 生成和单脉冲模式输出,还具备同步模块、制动输入和三个互补输出,可调节死区时间。
  • TIM2 - 16 位通用定时器:16 位自动重载向上计数器,15 位预分频器可调整为 2 的固定幂比值,具有三个可独立配置的捕获/比较通道和 PWM 模式。
  • TIM4 - 8 位基本定时器:8 位自动重载计数器,预分频器比值可调整为 2 的任意幂,从 1 到 128。

模数转换器(ADC1)

具有 10 位逐次逼近型 A/D 转换器,支持多达 5 个外部多路复用输入通道。输入电压范围为 0 至 VDD,转换时间为 14 个时钟周期,支持单、连续和缓冲连续转换模式,具备扫描模式和模拟看门狗功能,可设置可编程的上下阈值,并可产生模拟看门狗中断。

通信接口

  • UART1:全功能 UART,支持同步模式、SPI 主模式、智能卡模式、IrDA 模式、单总线模式和 LIN2.1 主模式,可编程的发送和接收波特率高达 1Mbit/s。
  • SPI:全双工和半双工通信,最大速度为 8Mbit/s,支持主/从操作,具备 CRC 计算功能。
  • I²C:支持高达 400kbit/s 的通信速度,具备主/从模式,可生成和检测 7 位/10 位寻址和通用调用。

引脚配置与说明

不同型号的微控制器具有不同的引脚配置,如 STM8S103K3 采用 32 引脚封装,而 STM8S103F2/F3 采用 20 引脚封装。每个引脚都有其特定的功能,包括输入、输出、电源供应等,部分引脚还支持替代功能重映射。在设计电路时,工程师需要根据具体的应用需求合理配置引脚,同时注意 I/O 引脚的电流能力和电气特性,避免超过绝对最大额定值。

电气特性

绝对最大额定值

包括电源电压、输入电压、电流等参数的最大允许值,超过这些值可能会对设备造成永久性损坏。在设计电路时,必须确保设备的工作条件在绝对最大额定值范围内。

工作条件

  • 时钟频率:内部 CPU 时钟频率范围为 0 至 16MHz。
  • 电源电压:标准工作电压范围为 2.95 至 5.5V。
  • 外部电容:连接到 VCAP 引脚的外部电容 CEXT 规格为 470 至 3300nF,同时需要注意电容的等效串联电阻(ESR)和等效电感(ESL)。

电流消耗特性

在不同的工作模式下,如运行模式、等待模式、活动暂停模式和暂停模式,微控制器的电流消耗不同。例如,在运行模式下,当 VDD = 5V 且 fCPU = 16MHz 时,使用 HSE 晶体振荡器的电流消耗典型值为 2.3mA(代码从 RAM 执行)或 4.5mA(代码从 Flash 执行)。了解这些电流消耗特性有助于工程师优化电源设计,降低系统功耗。

开发工具

仿真和在线调试工具

STice 仿真系统是一款功能强大的工具,提供了丰富的仿真和在线调试功能,如事件和时间分析、代码覆盖分析、高级断点设置、数据断点、程序和数据跟踪记录等。同时,它还支持通过 STM8 单总线接口模块(SWIM)进行非侵入式调试和编程,具有模块化设计,可根据开发需求定制配置。

软件工具

  • STM8 工具集:包括 ST Visual Develop(STVD)集成开发环境和 ST Visual Programmer(STVP)编程软件。STVD 提供了 C 和汇编工具链的无缝集成,支持项目管理、语法高亮编辑、全功能调试和高级仿真功能;STVP 则是一个易于使用的图形界面,可用于读写和验证 STM8 的 Flash 程序存储器、数据 EEPROM 和选项字节。
  • C 和汇编工具链:提供免费版本的 C 编译器,可输出高达 16K 字节的代码,同时还包含 STM8 汇编器链接器,用于汇编和链接用户应用程序的源代码。

编程工具

在开发过程中,可使用 STice 通过 SWIM 协议对 STM8 Flash 微控制器进行在线编程。此外,还有低成本的在线编程器和 ST 插座板可供选择。在生产环境中,第三方工具开发商提供了一系列的批量和自动化编程解决方案。

总结

STM8S103F2/F3/K3 微控制器以其丰富的功能和良好的性能,为电子工程师提供了一个强大的开发平台。在实际应用中,工程师需要根据具体的需求选择合适的型号,合理配置引脚和外设,注意电气特性和电源管理,同时充分利用开发工具进行高效的开发和调试。通过深入了解这些微控制器的特性和应用要点,工程师可以设计出更加稳定、可靠和高效的电子系统。

你在使用这些微控制器的过程中遇到过哪些问题?又是如何解决的呢?欢迎在评论区分享你的经验和见解。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分