07级电子单片机试题B答案
试题B答案
一、填空题(共20分,每空1分)
1、PSW是。
2、MCS-51最多可以有 4 个并行输入输出口,最少也可以有1个并行口,即 P1 。P3常需复用作 串行通信、外部中断、外部计数脉冲 和读写控制信号。
3、MCS-51复位后,PC= 00 H。若希望从片内存储器开始执行,EA脚应接 高 电平,PC值超过 0FFF H时,MCS-51会自动转向片外存储器继续取指令执行,利用ALE信号锁存来自P0口的低8位地址信号。
4、增强型51单片机有 6 个中断源,可分为 4 个中断优先级。上电复位时 外部中断0 中断源的最高。
5、指令LCALL 37B0H,首地址在2000H,所完成的操作是2003H入栈,37B0送入PC。 6、8051的定时器/计数器方式2是8位自动重装载方式,经常用作串行口的波特率发生器。
7、RS232C是 串行通信 总线标准。
二、简答题(共25分)
1.下面是P0口的内部结构图,试分析P0作为输入时的工作原理(4分) P0作为输入口时,与P1口类似,也必须先执行写端口指令,如:SETB P0.X或MOV P0,#0FFH将P0口锁存器置“1”,端输出低电平,使V2管截止(这时V1、V2均截止,P0.X引脚悬空),否则P0.X引脚也有可能被钳位在低电平状态。在读引脚信号作用下,输入信息经P0.X引脚→读引脚三态门电路到内部总线。
2.一条指令包含哪两个部分?各部分的作用是什么?(4分)
指令包含操作码和操作数两个部分,操作码用来表示执行什么样的操作,操作数用以指出参加操作的数据或数据的存储地址。
3.系统复位后SP初值为07H,在堆栈操作前,为什么还要重新将SP属值为30H~7FH.(5分)
系统复位后,PSW的b4、b3位为00,即选择了工作寄存器区中的0区作为
当前工作寄存器区,SP寄存器的初值为07H,当有数据进入堆栈时,将从08H单元开始存放,这一般是不允许的,因为08H~1FH属于工作寄存器区,不宜占用;20H~2FH是位地址区,也需要部分或全部保留。因此,必须通过数据传送指令重新设置SP的初值,将堆栈底部设在30H~7FH.
4、增强型MCS-51系列单片机复位时PSW及各中断服务程序的入口地址分别是多少。(7分)
程序状态子PSW: 程序状态字初值 00H
外部中断0: 服务程序入口地址 0003H
定时器0中断: 服务程序入口地址 000BH
外部中断1: 服务程序入口地址 0013H
定时器1中断: 服务程序入口地址 001BH
串行口中断: 服务程序入口地址 0023H
定时器2中断: 服务程序入口地址 002BH
5、在综合扩展系统中,MCS-51是如何区分地址互相重叠的RAM和ROM的?而片内存储器和片外存储器是用什么区分的?(5分)
由于访问不同的存储器时MCS-51提供不同的选通信号,即访问程序存储器时MCS-51提供PSED信号,而访问数据存储器时,由P3.7或P3.6提供WR或RD信号。片外,由EA控制,当EA为1时,CPU执行过程中,涉及前4K 时,将从片内ROM读取。涉及其他空间时,则从片外读取。EA为0时,则认为所有程序都在片外ROM中。
三、程序阅读(共20分,每空1分)
1.已知(31H)=21H,(32H)=04H,(SP)=3EH,(46H)=33H,(47)=35H,执行下列指令后(46H)=_ 04H ;(47H)=__21H _;(SP)= 3EH ;源操作数是 直接 寻址。
PUSH 31H
PUSH 32H
POP 46H
POP 47H
2.执行下列指令后,(A)=_63H ;状态标志(OV)=__1_ ;(AC)= 0 ;(P)=__0_。
MOV A,#0B4H
ADD A,#01H
SUBB A,#51H
3.已知(PSW)=00H,执行下列指令组后,累加器(A)=__F9H ,(R1)= 87H ,(SP)= 40H ,(3EH)= 01H ,(3FH)= 79H ,(A)与(R1)的关系是(R1)是
(A)的补码,涉及到的寻址方式有 立即寻址 、 寄存器寻址 、 直接寻址 、 位寻址 。
MOV SP,#3EH
MOV R1,#87H
MOV A,R1
CPL A
INC A
PUSH PSW
PUSH ACC
SETB ACC.7
4.下列伪指令汇编后,存放25H的单元及LOOP的值分别是(0106H_)=25H,LOOP=__2100H_。
ORG 0100H
TAB: DB‘ABC’
MOON:DS 03H
BUF: DB 25H
LOOP EQU 2100H
四、作图题(10分)
1.试画出用两片6264(8KB) 数据存储器给80C52单片机扩展16KB的数据存储器的原理图,且第一片的地址为2000H~3FFFH,第二片的地址为4000H~5FFFH,画出必要的引脚和连线.
五、编程题(25分)
1.在3500H为首址的片外RAM区中,有20个补码表示的数,编写实现把其中正数
传到20H为首址的片内RAM区中,负数不传送的程序。(10分)
ORG 0000H
AJMP MAIN
MAIN:MOV DPTR,#3500H
MOV R2,#14H
MOV R0,#20H
LOOP:MOVX A,@DPTR
JB ACC.7,COM
MOV @RO,A
INC RO
COM: INC DPTR
DJNZ R2,LOOP
HERE:SJMP HERE
END
2.用一个中断源可以显示故障的发生,如图所示。当系统正常工作时,4个故障的输入均为低电平,作为指示灯使用的发光二极管全不亮。当有某部分出现故障时,输入出现高电平,相应的发光二极管亮,并可同时指示多个故障的发生。编写程序实现该功能. (15分)
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INT0
ORG 0100H
MAIN: ANL P1,#55H
SETB IT0 SETB EA SETB EX0 SJMP $
ORG 0400H
INT0: JNB P1.0, L1 ;P1.0=0, SETB P1.1 ;L1: JNB P1.2, L2 SETB P1.3 L2: JNB P1.4, L3 SETB P1.5 L3: JNB P1.6, L4 SETB P1.7 L4: RETI
END
;P1口奇数脚为输出,偶数脚为输入;边沿触发 ;CPU开中断 ;允许外部0中断 转L1 若故障1,则相应的二极管亮
…… 此处隐藏:937字,全部文档内容请下载后查看。喜欢就下载吧 ……
- 基于PLC控制的航空电镀生产线自动输送
- 中考预测课内外文言文对比阅读2
- 2018-2023年中国商业智能(BI)产业市场
- 中国金融体制改革研究2011new
- 外窗淋水试验方案
- 精益生产(Lean Production)
- 学校安全事故处置和信息报送制度
- Chapter 5 Human Resources Management
- 【小学数学】人教版小学六年级上册数学
- 初中数学解题方法与技巧
- 山东省创伤中心建设与管理指导原则(试
- 函数与数列的极限的强化练习题答案
- 10分钟淋巴按摩消脂
- 网络应急演练预案
- 服装设计入门基础知识
- 初二数学分式计算题练习
- (人教新课标)高二数学必修5第二章 数列
- 最新自主创业项目
- 北京大学 无机化学课件 4第4章 配合物
- 贸易公司业务管理制度




