英文不行,stm8官网只有英文版的,没有中文。花了半下午,用谷歌网页翻译了大部分。没怎么润色,看不懂的可能需要对照英文原版
STM8家族HCMOS微控制器设计和围绕一个增强
行业标准8位核心和外围模块的库,包括罗,Flash,
内存,eepm、I / O、串行接口(SPI、USART I2C,…),16位定时器,A / D转换器,
比较器、电力监管等等这些块可能在各种组装
特定于应用程序的产品组合,以提供具有成本效益的解决方案。
STM8家庭形成一个8位单片机意法半导体生产线的一部分,发现
在各种各样的应用,如汽车系统、远程控制,
视频监控、汽车收音机和无数其他消费,工业、电信、多媒体产品。
3个STM8内核描述
3.1引言
CPU具有完整的8位架构,在索引寄存器(对于地址)上有16位操作计算)。六个内部寄存器允许高效的8位数据操作。 CPU能够执行80条基本指令。它具有20种寻址模式,可以寻址6个内部寄存器和16 Mb的存储器/外设寄存器。
3.2 CPU寄存器
图1中的编程模型中显示了6个CPU寄存器中断,寄存器上下文被保存。通过将寄存器推送到上下文来保存上下文
按照图2所示的顺序堆叠。它们以相反的顺序从堆栈弹出。
累加器(A)
累加器是一个8位通用寄存器,用于保存操作数和结果
算术和逻辑计算以及数据操作。
索引寄存器(X和Y)
这些16位寄存器用于创建有效地址或作为临时存储区域
用于数据操作。在大多数情况下,交叉汇编器会生成一个PRECODE指令(PRE)指示下面的指令涉及Y寄存器。 X和Y被自动保存在中断例程分支上。
程序计数器(PC)
程序计数器是一个24位寄存器,用于存储下一条指令的地址由CPU执行。它在每个处理后的指令后自动刷新。作为一个结果,STM8内核可以访问高达16MB的内存。
堆栈指针(SP)
堆栈指针是一个16位寄存器。它包含下一个空闲位置的地址叠加。取决于产品,最高有效位可以强制为预设值。
堆栈用于保存子程序调用或中断的CPU上下文。用户可以也可以通过POP和PUSH指令直接使用它。
MCU复位后,堆栈指针被设置为其上限值。然后递减
数据被压入堆栈并在数据从弹出窗口中递增之后叠加。当超过下限时,堆栈指针将环绕到堆栈顶部限制。之前存储的信息将被覆盖,从而丢失。子程序调用占用两个或三个位置。
发生中断时,CPU寄存器(CC,X,Y,A,PC)被压入堆栈。该操作需要9个CPU周期并在RAM中使用9个字节。
注意:WFI / HALT指令提前保存上下文。如果在CPU发生中断时处于这些模式之一时,延迟会降低。
完整的pdf格式文档51黑下载地址(共162页):
stm8内核手册.zip
(1.57 MB, 下载次数: 45)
|