单片微型计算机原理与接口技术答案(第二版)高峰(3)
发布时间:2021-06-11
发布时间:2021-06-11
【答】80C51单片机的EA信号被称为“片外程序存储器访问允许信号”。CPU访问片内还是片外程序存储器,可由EA引脚所接的电平来确定:
EA引脚接高电平时,程序从片内程序存储器地址为0000H开始执行,即访问片内
存储器;当PC值超出片内ROM容量时,程序会自动转向片外程序存储器空间执
行。片内和片外的程序存储器地址空间是连续的。
EA引脚接低电平时,迫使系统全部执行片外程序存储器0000H开始存放的程序。
对于有片内ROM的80C51/87C51单片机,应将EA引脚接高电平。在使用80C31
单片机时,EA信号引脚应接低电平,即此时程序存储器全部为外部扩展。
【2—6】80C51单片机片内RAM低128个存储单元划分为哪3个主要部分?各部分主要功能是什么?
【答】80C51片内RAM的低128个存储单元划分为3个主要部分:
·寄存器区。共4组寄存器,每组8个存储单元,各组以R0~R7作为单元编号。常用于保存操作数及中间结果等。:R0~R7也称为“通用工作寄存器”,占用00H~1FH共32个单元地址。
·位寻址区。单元地址为20H~2FH,既可作为一般RAM单元使用,按字节进行操作,也可对单元中的每一位进行位操作。因此,称为“位寻址区”。寻址区共有16个RAM单元,共计128位,位地址为OOH~7FH。
·用户RAM区。在内部RAM低128单元中,除去前面两个区,剩下80个单元,单元地址为30H~7FH。在用户RAM区内可以设置堆栈区。
【2—7】程序存储器的哪些单元被保留用于特定场合?
【答】80C51单片机复位后,程序计数器PC的地址为0000H,所以系统从0000H单元开 始取指,并执行程序。0000H是系统的启动地址,一般在该单元设置一条绝对转移指令,使之转向用户主程序处执行。
0003H~002DH单元被保留用于6个中断源的中断服务程序的入口地址,故有以下7个特定地址被保留:
复位 0000H
外部中断O 0003H
计时器TO溢出 000BH
外部中断1 0013H
计时器T1溢出 001BH
串行口中断 0023H
计时器T2/T2EX 002BH(仅对80C52单片机)
由于每个中断入口之间的间隔仅为8个地址单元,所以在程序设计时,通常在这些中断入口处设置一条无条件转移指令,使之转向对应的中断服务子程序处执行。
【2—8】80C51单片机设有4个通用工作寄存器组,有什么特点?如何选用?如何实现工作寄存器的现场保护?
【答】片内数据RAM区的O~31(OOH~1FH),共32个单元,是4个通用工作寄存器组,每个组包含8个8位寄存器,编号为R0~R7,工作寄存器组如表2-l所列。在某一时刻,只能选用一个寄存器组。可以通过软件对程序状态字PSW中:RS0、RSl两
位的设置来实现。设置RS0,RSl时,可以对PSW采用字节寻址方式,也可以采用位寻址方 式,间接或直接修改RS0、RSl的内容。例如,若.RS0、RSl均为1,则选用工作寄存器3组为当前工作寄存器。若需要选用工作寄存器2组,则只需将RS0改成0.可用位寻址方式 (即“CLR PSW.3”;其中:PSW.3为RS0位的符号地址)来实现。特别是在中断嵌套时,只要通过软件对程 序状态字PSW中的RS0、RSl两位进行设置,切换工作寄存器组,就可以极
上一篇:最全的三叶罗茨鼓风机选型