当前位置:首页 > 数字化语音存储与回放系统
XTAL2:来自反向振荡器的输出。 3. 主要性能指标 a.与MCS-51兼容
b.8K字节可编程闪烁存储器
c.寿命:1000写/擦循环数据保留时间:10年 d.全静态工作:0Hz-40MHz e.三级程序存储器锁定 f.256*8位内部RAM g.32个可编程I/O口
h.两个16位可编成定时器/计数器 i.8个中断源 j.可编程串行通道
k.低功耗的闲置和掉电模式
l.片内振荡器和时钟电路,时钟频率1.2—12MHz;可有时钟输出 m.有强的位寻址\\位处理能力 4. 89s51单片机的主要组成部分
(1) CPU
CPU是单片机的核心部分,他的作用是读入和分析每条指令,根据每条指令的功能要求,控制各个部件执行相应的操作。89s51单片机内部有一个8位的CPU,它是由运算器和控制器组成。
运算器 运算器主要包括算术、逻辑运算部件ALU、累加器ACC、寄存器B、暂存器YMP1、YMP2、程序状态寄存器PSW、布尔处理器及十进制调整电路等。运算器主要用来实现数据的传送、数据的算术运算、逻辑运算和位变量处理等。
控制器 控制器包括时钟发生器、定时控制逻辑、指令寄存器指令译码器、程序计数器PC、程序地址寄存器、数据指针寄存器DPTR和堆栈指针SP等。控制器是用来统一指挥和控制计算机进行工作的部件。它的功能是从程序存储器中提取指令,送到指令寄存器,再进入指令译码器进行译码,并通过定时和控制电路,在规定的时刻发出各种操作所需要的全部内部控制信息及CPU外部所需要的控制信号,如ALE、PSEN、RD、WR等,使各部分协调工作,完成指令所规定的各种操作。
(2)存储器
程序存储器 程序存储器用于存放编好的程序、表格和常数。程序存储器的寻址范围可以有64KB与此相应, 程序存储器的编址自0000H开始,最大可至FFFFH。程序存储器的编址规律为;先片内、后片外,片内、片外连续,两者一
17
般不作重叠。对于片内有程序存储器的芯片,CPU的控制器专门提供一个控制信号EA来区分,当EA为高电平时,复位后单片机先执行片内有程序存储器中程序,当程序计数器的内容超过OFFFH时,将自动转去执行片外程序存储器的程序而当指令,当EA为低电平时,将强行执行片外程序存储器中的程序。此时多在片外程序存储器中存放调试程序,使计算机工作在调试状态。这里应该注意的是,片外程序存储器存放调试程序的部分,其编址与片内程序存储器的编址是可以重叠的,就借EA的换接可实现分别访问。
在程序存储器中,有7个单元具有特殊用途。
0000H—0002H:是所有执行程序的入口地址,89C51单片机复位后,CPU总是从0000H单元开始执行程序。16位单片机、ARM等微控制器一般也是如此。
0003H:外部中断0入口。
000BH:定时/计数器0溢出中断入口。 0013H:外部中断1入口。
001BH:定时/计数器1溢出中断入口。 0023H:串行口中断入口。
002BH:定时器/计数器2溢出或T2EX端负跳变。
使用时,通常在这些入口地址处存放一条绝对跳转指令,使程序跳转到用户安排的中断程序起始地址,或者从0000H起始地址跳转到用户设计的初始程序上。
数据存储器 片内数据存储器有16位,寻址范围也可达64KB。故片外数据存储器的容量可大到与程序存储器一样,其编址自0000H开始,最大可至FFFFH。89s52单片机数据存储器有片内数据存储器RAM和特殊功能寄存器SFR:前者有128个字节,其编址为00H—FFH,可以读、写任何数据;后者也占128个字节,其编址位80H—FFH;两者连续而不重叠。片内数据存储器的容量很小,常需扩展片外数据存储器。如扩展少量片外数据存储器,容量不超过256个单元,则也可按8位二进制数编址,自00H开始,最大可至FFH。
表4.2 不同存储器与所用指令及其寻址方式的对应关系
存储器 ROM 依次取指执行程序 程序转移 用户访问 片内RAM 访问整 个字节 18
根据PC值自动访问 程序转移类指令 MOVC指令 主要为MOV指令,借工作寄存器间接寻址 访问性质 所用指令及寻址方式 访问20H~2FH单元中的某位 SFR 访问整个字节 访问SFR中的可寻址位 片外RAM 如容量不大于256单元 如容量大于256单元
位操作类指令, 借位地址寻址 主要为MOV类指令,直能借直接寻址字节寻址 位操作类指令, 借位地址寻址 MONX指令,借工作寄存器间接寻址 MONX指令,借数据指针寄存器间接寻址 片内数据存储器又可分为工作寄存区、位寻址区、数据缓冲器区三个区域。 ①工作寄存器区
在低128B的内部RAM中,前32个单元(地址为00H—1FH)为通用工作寄存器区,共分为四组(寄存器0组、1组、2组、3组),每组8个工作寄存器由R0—R7组成,共占32个单元。选用哪一组由程序状态字PSW中的RS1、RS0这两位的设置决定,若程序并不需要四个4组工作寄存器,那么剩下的工作寄存器可作一般的存储器来使用。
②位寻址区
20H—2FH的16个单元为位寻址区,该区的每个单元都被赋予了一个位地址,每个单元8位,共128位。其位寻址范围为00H—7FH。位寻址区的每一位都可当作软件触发器,由程序直接进行处理。程序中通常把各种程序状态标志、位控变量设在位寻址区。同样,位寻址区的RAM单元也可作为一般的数据存储器按字节单元使用。
③数据缓冲区
30H~7FH是数据缓冲区,用户RAM区,共80个单元。 (3)特殊功能寄存器
累加器A 累加器A是一个最常用的8位特殊功能寄存器,它既可用于存放操作数,也可用于存放运算的中间结果。大部分单操作数指令的操作数就取自累加器。用ACC表示A的符号地址。
寄存器B 寄存器B是一个8位寄存器,主要用于乘法和除法的运算。乘法运算时,B中存放乘法,乘法操作后,乘积的高8位又存于B中;除法运算时,B中存放除数,出发操作后,B中又存放余数。在其他指令中,寄存器B可作为一般的寄存器使用,用于暂存数据。 5. 定时器/计数器
错误!未找到引用源。主要特性
a.89s52单片机有3个可编程的定时器/计数器——定时器/计数器0、定时器/计数
19
器1和定时/计数器2,可有程序选择作为定时器用或作为计数器用,定时时间或记数值也可由程序设定。
b.每一个定时器/计数器具有4种工作方式,可用程序选择。
c.任一定时器/计数器在定时时间到或记数值到时,可有程序安排产生中断请求信号或不产生中断请求信号。
②定时/计数器0和1的控制和状态寄存器
特殊功能寄存器TMOD和TCON分别是定时/计数器0和1的控制和状态寄存器,用于控制和确定各定时/计数器的功能和工作模式。 ③模式控制寄存器TMOD
TMOD用于控制T0和T1的工作方式和4种工作模式。其中低4位用于控制T0,高4位用于控制T1。其值可用程序决定,其格式如下: GATE C/T M1 M0 GATE M1 M0 C/T GATE位:门控位。
当GATE=1时,只有INTO或INT1引脚为高电平且TR0或TR1置1时,相应的定时/计数器才被选通工作;当GATE=0,则只要TR0和TR1置1,定时/计数器就被选通,而不管INT0或INT1的电平是高还是低
位:计数/定时功能选择位。
=0,设置为定时器方式,计数器的输入是内部时钟脉冲,其周期等=1,设置为计数器方式,计数器的输入来自T0(P3.4)或T1(P3.5)
于机器周期。
端的外部脉冲。
M1、M0位:工作模式选择位。2位可形成4种编码,对应4种工作模式,见下表:
表4.3 M1、M0工作模式
M1 M0 00 01 10 11 功 能 描 述 方式0:13位定时器/计数器 方式1:16位定时器/计数器 方式2:具有自动重装初值的8位定时器/计数器 方式3:定时/计数器0分为两个8位定时/计数器,定时/计数器1在此方式无实用意义 ④控制寄存器TCON
TCON用来控制T0和T1的启、停,并给出相应的控制状态,高4位用于控制定时器0、1的运行;低4位用于控制外部中断。格式如下:
20
共分享92篇相关文档