ST这个系列的微控制器对于很多工程师来说都不陌生,该系列主流8位微控制器适用于工业,消费类和计算机市场的各种应用,尤其是大批量应用。该微控制器基于STM8专有内核,采用意法半导体的130nm处理技术和先进的内核架构,主频率为24 MHz,处理能力高达20MIPS。除了内置的EEPROM和RC振荡器,其丰富的I / O和高性能的片上外设也是优势所在之处,上市以来为设计人员提供强大而可靠的解决方案。
虽然stm8s系列MCU包括四个具有不同特性的产品线,但保持了完全的兼容性和可升级性,也方便减少未来产品设计的变化。 该系列下的几个子产品,每个都有自己的优点所在:STM8S00x超值系列以极其优惠的价格提供了基本的功能,并且现在可提供8引脚SO8封装产品。STM8S103/105基本型提供了更多特性和封装选项。STM8S207增强型配有全套外设,满足中、高端应用的性能要求。 STM8S专用型提供了更多模拟特性和专用固件解决方案。
STM8S系列CPU寄存器说明 1.累加器(A)是一个8位通用寄存器,用于保存操作数以及算术和逻辑计算以及数据操作的结果。 2.索引寄存器(X和Y)这些是用于创建有效地址的16位寄存器。 它们还可以用作数据操作的临时存储区,并在某些指令(乘法/除法)中具有固有用途。 在大多数情况下,交叉汇编器会生成PRECODE指令(PRE),以指示以下指令引用了Y寄存器。 程序计数器(PC)是一个24位寄存器,用于存储CPU要执行的下一条指令的地址。在每个处理的指令之后,它将自动刷新。 结果,STM8内核最多可以访问16MB的内存。 3.堆栈指针(SP)是一个16位寄存器。它包含堆栈的下一个空闲位置的地址。根据产品,可以将最高有效位强制为预设值。堆栈用于在子例程调用或中断时保存CPU上下文。用户还可以通过POP和PUSH指令直接使用它。堆栈指针可以通过c编译器附带的启动函数进行初始化。对于用C语言编写的应用程序,则根据C用户的链接器文件中指定的地址执行初始化。如果您使用自己的链接器文件或启动文件,请确保正确初始化了堆栈指针(使用数据表中指定的地址)。对于用汇编器编写的应用程序,可以使用ST提供的启动功能,也可以通过使用正确的地址初始化堆栈指针来编写自己的应用程序。将数据压入堆栈后,堆栈指针递减;从堆栈中弹出数据后,堆栈指针递增。由应用程序来确保不超过下限。子例程调用占据两个或三个位置。 一个中断占用九个位置来存储所有内部寄存器(SP除外)。注意:WFI / HALT指令预先保存了上下文。 如果在CPU处于这些模式之一时发生中断,则可以减少等待时间。
|