文档库

最新最全的文档下载
当前位置:文档库 > 《单片机原理及应用》模拟试卷四及答案

《单片机原理及应用》模拟试卷四及答案

《单片机原理及应用》模拟试卷四

一、填空题(35%)

1、MCS-51的复位条件是。复位后,CPU从单元开始执行程序,PC= ,SP= ,PSW= 。

2、在下列情况EA引脚应接何种电平?

(1)只有片内ROM,EA= ;(2)只有片外ROM,EA= ;

(3)有片内、片外ROM,EA= ;(4)有片内ROM但不用,而用片外ROM,EA= 。

3、若PSW的内容为18H,则工作寄存器R0的地址是H。

4、10根地址线可选个存储单元,32KB存储单元需要根地址线。

5、若8031单片机的晶振频率fosc=12MHz,则时钟周期为,状态周期为,机器周期为,执行MUL AB指令需要时间为。

6、8031单片机指令MOV是访问,最大范围为,MOVX是访问,最大范围为,MOVC是访问,最大范围为。

7、指令POP B的源操作数是,是寻址方式,目的操作数是,是

寻址方式。

8、已知SP=25H,PC=4345H,(24H)=12H,(25H)=34H,(26H)=56H,当执行RET指令后,SP=

,PC= 。

9、当定时/计数器选定为定时器方式时,是对进行计数,选定为计数器方式时,是对进行计数。

10、MCS-51单片机的串行口有种工作方式,其中方式0是方式,它的波特率为,用引脚传送数据,用引脚输出同步时钟信号。

二、80C51能扩展多少ROM、RAM容量? 并行扩展存储器,片选方式有哪几种?各有什么特点?

(8%)

三、用查表程序求0~9之间整数的平方,数存放在x中,结果存放在y中。(7%)

四、已知负跳边脉冲从8031的P3.3(/INT1)引脚输入,且该脉冲个数少于65536,试编程统计输入的脉冲个数,结果存放在31h30h中。(15%)

五、试编制程序,使T0每计满500个外部输入脉冲后,由T1定时,在P1.0输出一个脉宽10ms的正脉冲(假设在10ms内外部输入脉冲少于500个),fosc=12MHz。(15%)

六、如下图示,甲乙两机进行通信,要求甲机能读取8个按键的状态(0或1)并将读到的状态发送给乙机,乙机接收到后将数据通过8个发光二极管显示,要求编写甲乙两机的通信程序。(20%)

P1.0

P1.1

P1.2

P1.3

P1.4 P1.5 P1.6 P1.7RXD

TXD

TXD

RXD P1.2

P1.4

P1.5

P1.6

P1.7

P1.1

P1.0

P1.3

89C5189C51

K1

K2

K3

K4

10K

K5

K6

K7

K8

300

《单片机原理及应用》模拟试卷四参考答案

一、填空题(35%)

1、在RST端保持至少2个机器周期的高电平,0000H,0000H,07H,00H

2、1,0,1,0

3、18H

4、1024,15

5、1/12us,1/6us,1us,4us

6、内RAM及FSR,256B,外RAM,64KB,ROM,64KB

7、SP,寄存器间接寻址,B,寄存器

8、23H,3412H

9、片内机器周期脉冲,片外脉冲

10、4,同步移位输入输出,fosc/12,RXD,TXD

二、

答:80C51能扩展64KB ROM(包括片内ROM)和64KB外RAM(包括扩展I/O口)。

并行扩展存储器,产生片选信号的方式有线选法和译码法两种。

线选法是将高位地址线直接连到存储器芯片的片选端。其优点是连接简单,缺点是芯片的地址空间相互之间可能不连续,存储空间得不到充分利用,存在地址重叠现象。线选法适用于扩展存储容量较小的场合。

译码法是通过译码器将高位地址线转换为片选信号,2条地址线能译成4种片选信号,3条地址线能译成8种片选信号,4条地址线能译成16种片选信号。译码法与线选法比较,硬件电路稍微复杂,需要使用译码器,但可充分利用存储空间,全译码还可避免地址重叠现象,局部译码因还有部分高位地址线未参与译码,因此仍存在地址重叠现象。译码法的另一个优点是若译码器输出端留有剩余端线未用时,便于继续扩展存储器或I/O口接口电路。

三、x equ 30h

y equ 31h

MOV DPTR,#TAB

MOV A,x

MOVC A,@A+DPTR

MOV y,A

SJMP $

TAB: DB 0,1,4,9,16,25,36,49,64,81

四、

ORG 000H

LJMP MAIN

ORG 013H

LJMP I_INT1

ORG 030H

MAIN: MOV TCON,#00000100B

MOV IE,#10000100B

MOV 30H,#0

MOV 31H,#0

SJMP $

I_INT1: MOV A,30H

ADD A,#!

MOV 30H,A

MOV A,31H

ADDC A,#0

MOV 31H,A

RETI

五、

(216-x1)*1us=10000us → x1=b8f0h

216-x0=500us → x0=fe0ch

org 000h

ljmp main

org 00bh

ljmp t0_int

org 01bh

ljmp t1_int

org 100h

main: mov sp,#60h

mov tmod,#00010101b

mov ie,#10001010b

mov th0,0feh

mov tl0,0ch

clr p1.0

setb tr0

sjmp $

t0_int: mov th0,0feh

mov tl0,0ch

mov th1,#0b8h

mov tl1,#0f0h

setb p1.0 setb tr1

reti

t1_int: clr p1.0 clr tr1

reti

六、

T1工作在方式2: 波特率=T x s ?-?)256(322mod

=12

)256(322mod ?-??x f osc s =1200

T1初值: H F x 3243==

甲机:

MAIN: MOV TMOD,#00100000B MOV SCON,#01000000B MOV PCON,#00H MOV TH1,#0F3H MOV TL1,#0F3H CLR ES SETB TR1 MOV P1,#0FFH LOOP: MOV

A,P1 MOV SBUF,A JNB TI,$ CLR TI

SJMP LOOP

乙机: ORG 000H LJMP MAIN ORG 0023H LJMP I_ES ORG 050H

MAIN: MOV

TMOD,#00100000B MOV SCON,#01010000B MOV PCON,#00H MOV TH1,#0F3H MOV TL1,#0F3H CLR ES

SETB

TR1

SJMP $

I_ES: MOV A,SBUF

CLR RI

MOV P1,A

RETI