广东海洋大学《单片机原理与应用含答案》.docx

上传人:b****6 文档编号:6987308 上传时间:2023-01-15 格式:DOCX 页数:15 大小:340.14KB
下载 相关 举报
广东海洋大学《单片机原理与应用含答案》.docx_第1页
第1页 / 共15页
广东海洋大学《单片机原理与应用含答案》.docx_第2页
第2页 / 共15页
广东海洋大学《单片机原理与应用含答案》.docx_第3页
第3页 / 共15页
广东海洋大学《单片机原理与应用含答案》.docx_第4页
第4页 / 共15页
广东海洋大学《单片机原理与应用含答案》.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

广东海洋大学《单片机原理与应用含答案》.docx

《广东海洋大学《单片机原理与应用含答案》.docx》由会员分享,可在线阅读,更多相关《广东海洋大学《单片机原理与应用含答案》.docx(15页珍藏版)》请在冰豆网上搜索。

广东海洋大学《单片机原理与应用含答案》.docx

广东海洋大学《单片机原理与应用含答案》

广东海洋大学2008-2009《单片机原理与应用》

课程试卷

一、填空题(每题1.5分,共24分)

1.当CPU访问片外的存储器时,其低8位地址由____P0____口提供,高八位地址由___P2___口提供。

2.ALE信号的作用是_地址锁存和输入输出脉冲___________,EA接高电平表示__允许单片机使用片内rom_________。

3.PSW中RS1RS0=10H时,R2的地址是___00H____。

4.8051的中断向量表在___03H___、_____0BH___H和13H、1BH、23H。

5.ANLA.#0F0H是将A的高四位保持不变,而低四位_____0000_____。

6.数据指针DPTR是一个_____16_____位的特殊功能寄存器。

7.设DPTR=2000H,(A)=A0H,则MOVCA,@A+DPTR操作数的实际操作地址为____FFH____。

8.指针LCALL37B0H,首地址在2000H,完成的操作是__2003___H入栈,PC=___37B0H____。

9.8051单片机定时器/计时器作定时和计数用时,其计数脉冲分别由______单片机内部____和____T0T1____提供。

10. 单片机89C51中的串行通信共有___4__种方式,其中方式___0___是用作同步移位寄存器来扩展I/O口的。

二、选择题(每题2分,共20分)

1、边沿触发方式的外部中断信号时(  )有效。

A.下降沿       B.上升沿     C.高电平      D.低电平

2、若MCS-51单片机使用晶振频率为6MHz时,其复位持续时间最少应超过(  )。

A.2us           B.4us         C.8us         D.1ms

3、以下哪个是属于单片机系统前向通道的器件?

(  )

A.MOV DPTR,#3F98H          (B)MOV R0,#0FEH

C.  MOV 50H,#0FC3DH         (D)INC R0

5、以下哪一条是位操作指令(  ) 

(A)MOVP0,#0FFH(B)CLRP1.O

(C)CPL.A(D)POPPSW

6,若MCS-51中断源都编程为同级,当他们同时申请中断时,CPU首先响应()

(A)INT1(B)INT0

(C)T1(D)T0

7,定时器若工作在循环定时或者循环计数场合,应选用()

(A)工作方式0(B)工作方式1

(C)工作方式2(D)工作方式3

8,确定定时器/计数器工作方式的寄存器是()

(A)TCON(B)TMOD

(C)SCON(D)PCON

9,若单片机的振荡频率为6MHz,设定时器工作在方式1需要定时1ms,则定时器初值应为()

(A)500(B)1000

(C)2^16-500(D)2^16-1000

10,串行口的控制寄存器SCON中,REN的作用是()

(A)接受中断请求标志位(B)发送中断请求标志位

(C)串行口允许接受位(D)地址/数据位

三、判断题(错误的叙述进行校正,每题1.5,共15分)

1、PC存放的是当前正在执行的指令的地址。

(F)

2、DPTR只能当作一个16位的特殊功能寄存器来使用。

(F)

3、工作寄存器区不允许做普通的RAM单元来使用。

()

4、执行LCALL指令时,栈指针SP的能容不会发生变化。

(F)

5、在51系列单片机的指令系统中,其加法减法和除法必须有累加器A的参与才能完成。

(F)

6、在51系列单片机的指令中,既有带借位的减法指令,又有不带借位的减法指令。

(T)

7、在51单片机中,中断服务程序从矢量地址开始执行,一直到返回指令RETI为止(F)

8、定时/计数器工作于定时方式时,是通过89C51片内的振荡器输出经12分频后的脉冲进行计数,直至溢出为止。

(T)

9、在89C51的串行通信中,串行口的发送和接收都是对特殊功能寄存器SBUF进行读/写而实现的。

(T)

10、串行口的发送中断与接收中断各自有自己的终端入口地址。

(T)

4、简答题(每题4分,共20分)

1、简述寄存器间接寻址方式及其寻址范围;

寄存器间接寻址:

以指令中给出的寄存器中的数据为地址,从该地址的单元取得操作数

寻址范围:

低8位,00H-FFH;DPTR访问片外RAM时,最大为0000H-FFFFH

 

2、设在MCS-51单片机片内RAM中:

(20H)=40H;(40H)=22H;(22H)=10H;P1=0CFH;当下列程序执行完毕后,各单元的内容分别为多少?

MOVR0,#20H

MOVA,@R0

MOVR1,A

MOVB,@R1

MOV10H,R1

MOV@R1,10H

MOVP3,P1

(A)=(B)=(R0)=(R1)=

(P1)=(P3)=(20H)=(22H)=

 

3、51系列单片机具有几个中断源,分别是如何定义的?

其中哪些中断源可以被定义为高优先级中断,如何定义?

5个中断源:

1,外部中断源(INT0,INT1);2,定时器、计数器溢出中断(T0,T1);2,串行口中断源(RI或TI)

外部中断源0,定时器、计数器溢出中断0,可以被定义为高级优先级中断

 

4、简单叙述8051的C/T0的工作模式。

 

5、简述LED数码管动态扫描原理既实现方式。

单片机的主程序调用显示子程序时,单片机通过先后输出字形码和字位码,以控制当前的LED数码管的点亮。

 

五、下面是一个行列式键盘连接图,请回答下列问题:

(10分)

(1)采用的是逐行扫描方式还是逐列扫描方式?

逐行

(2)输出口和输入口分别怎样构成?

(3)请简述键盘设计的步骤。

 

六、编程题(11分)

设有200个有符号数,连续存放在以2000H为首地址的存储区中,编程统计其中正数、负数和零的个数,分别存放在30H,31H和32H单元中。

 

实验一发光二极管流水灯实验

一、实验目的:

1.通过AT89C51单片机控制8个发光二极管,八个发光二极管分别接在单片机的P0.0-P0.7接口上,输出“0”时,发光二极管亮。

开始时P0.0→P0.1→P0.7→P0.6→┅→P0.0,实现亮点以1HZ频率循环移动。

二、PROTEUS电路设计:

 

实验三外中断优先级实验

一、实验目的:

1.理解单片机中断优先级和优先权。

2.用PROTEUS设计,仿真基于AT89C51单片机的中断优先级实验。

3.掌握中断编程方法。

单片机主程序控制P0口数码管循环显示0~8;外中断0、外中断1发生时分别在P2口、P1口依次显示0~8。

通过实验可演示高优先级可中断低优先级,但低优先级的中断请求不能中断高优先级。

二、PROTEUS电路设计:

 

实验二开关控制LED数码管实验

PROTEUS电路设计:

实验四

一、实验目的:

1.通过AT89C51的定时器实现60S倒计时,显示采用两位数码管动态显示。

2.用PROTEUS设计,仿真基于AT89C51单片机的60S倒计时实验。

二、PROTEUS电路设计:

实验五A/D转换实验

一、实验目的:

1.掌握转换器ADC0809的使用。

2.用PROTEUS设计,仿真基于AT89C51单片机的A/D转换实验。

3.通过改变电位器的值改变模拟量的输入,经转换为数字量在LED上显示,比对模拟量和数字量的关系。

二、PROTEUS电路设计:

实验1

ORG0000H

AJMPSTART

ORG0030H

START:

MOVP0,#0FFH

MOVA,#0FEH

AAA:

MOVP0,A

LCALLDELAY

JNBP0.7,BBB

RLA

AJMPAAA

BBB:

MOVA,#7FH

CCC:

MOVP0,A

LCALLDELAY

JNBP0.0,START

RRA

AJMPCCC

DELAY:

MOVR2,#123

DL3:

MOVR1,#200

DL2:

MOVR0,#20

DL1:

DJNZR0,DL1

DJNZR1,DL2

DJNZR2,DL3

RET

END

实验2

CLRP1.0

MOVDPTR,#TABLE

START:

CLRA

JNBP2.0,D1

INCA

D1:

JNBP2.1,D2

ADDA,#2

D2:

JNBP2.2,D3

ADDA,#4

D3:

JNBP2.3,D4

ADDA,#8

D4:

MOVCA,@A+DPTR

MOVP0,A

AJMPSTART

TABLE:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH

END

实验3

ORG0000H

LJMPMAIN

ORG0003H

LJMPINTER0

ORG0013H

LJMPINTER1

ORG0100H

MAIN:

MOVSP,#30H

SETBEX0

SETBIT0

SETBPX0

SETBEX1

SETBIT1

CLRPX1

SETBEA

START:

MOVR0,#00H

MOVA,R0

MOVR1,#9

AA:

PUSHACC

MOVDPTR,#TABLE

MOVCA,@A+DPTR

MOVP0,A

CALLDELAY

POPACC

INCA

DJNZR1,AA

LJMPSTART

INTER0:

PUSHPSW

PUSHACC

SETBRS0

MOVR0,#00H

MOVR1,#9

BB:

MOVDPTR,#TABLE

MOVA,R0

MOVCA,@A+DPTR

MOVP2,A

CALLDELAY

INCR0

DJNZR1,BB

POPACC

POPPSW

MOVP2,#0FFH

RETI

LJMPAA

INTER1:

PUSHPSW

PUSHACC

CLRRS0

SETBRS1

MOVR0,#00H

MOVR1,#9

CC:

MOVDPTR,#TABLE

MOVA,R0

MOVCA,@A+DPTR

MOVP1,A

CALLDELAY

INCR0

DJNZR1,CC

POPACC

POPPSW

MOVP1,#0FFH

RETI

LJMPAA

DELAY:

MOVR2,#50

D0:

MOVR3,#50

D1:

MOVR4,#50

D2:

DJNZR4,D2

DJNZR3,D1

DJNZR2,D0

RET

TABLE:

DB0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H

END

 

实验4

ORG0000H

AJMPMAIN

ORG000BH;T0中断入口

AJMPLOOP

ORG0030H

MAIN:

MOVTMOD,#01H;设置T0用于定时,模式1方式

MOVTH0,#3CH;装入定时初值

MOVTL0,#0B0H

MOVIP,#02H

MOVIE,#82H;T0中断允许

MOVDPTR,#TAB

MOVR0,#60

MOVR1,#16

SETBTR0

LOOP1:

MOVA,R0

MOVB,#10

DIVAB

MOVCA,@A+DPTR

MOVP2,#80H

MOVP0,A

ACALLDEL0

MOVA,B

MOVCA,@A+DPTR

MOVP2,#40H

MOVP0,A

ACALLDEL0

AJMPLOOP1

LOOP:

MOVTH0,#3CH

MOVTL0,#0B0H

DJNZR1,LOOP2

MOVR1,#16

DECR0

CJNER0,#0FFH,LOOP2

MOVR0,#60

LOOP2:

RETI

DELAY:

MOVR2,#20

DEL0:

MOVR3,#50

DJNZR3,$

DJNZR2,DEL0

RET

TAB:

DB3FH,06H,5BH,4FH,66H

DB6DH,7DH,07H,7FH,6FH

END

 

实验5

ORG0000H

AJMPSTART

ORG0003H;外部中断0入口地址

AJMPINT

ORG0100H

START:

MOVR0,#50H;通道地址

MOVX@R0,A;启动A/D转换

SETBIT0;外部中断0为边沿触发方式

SETBEX0;允许外部中断0中断

SETBEA;CPU开放中断

SETBF0

CLRP2.0;P2.0必须为0

MOVDPTR,#TAB

LOOP:

JBF0,LOOP1

SETBP3.4

CLRP3.5

MOVA,R6

MOVP1,A

ACALLDLY

CLRP3.4

AJMPLHD

LOOP1:

SETBP3.5

CLRP3.4

MOVA,R7

MOVP1,A

ACALLDLY

CLRP3.5

LHD:

CPLF0

AJMPLOOP

INT:

MOVXA,@R0

MOVR7,A

SWAPA

MOVR6,A

MOVA,R7

ANLA,#0FH;取低4位

MOVCA,@A+DPTR

MOVR7,A

MOVA,R6

ANLA,#0FH;取高4位

MOVCA,@A+DPTR

MOVR6,A

MOVX@R0,A;启动下一次

RETI

DLY:

MOVR4,#0FH

DL:

MOVR5,#045H

DL1:

DJNZR5,DL1

DJNZR4,DL

RET

TAB:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H

DB80H,90H,88H,83H,0C6H,0A1H,86H,8EHEND

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 工作计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1