单片机原理章习题.docx

上传人:b****5 文档编号:8539366 上传时间:2023-01-31 格式:DOCX 页数:18 大小:88.53KB
下载 相关 举报
单片机原理章习题.docx_第1页
第1页 / 共18页
单片机原理章习题.docx_第2页
第2页 / 共18页
单片机原理章习题.docx_第3页
第3页 / 共18页
单片机原理章习题.docx_第4页
第4页 / 共18页
单片机原理章习题.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

单片机原理章习题.docx

《单片机原理章习题.docx》由会员分享,可在线阅读,更多相关《单片机原理章习题.docx(18页珍藏版)》请在冰豆网上搜索。

单片机原理章习题.docx

单片机原理章习题

 

1.AT89S51单片机为8位单片机

2.MCS-51系列单片机的典型芯片分别为8031、8051、8751。

3.AT89S51的异步通信口为全双工(单工/半双工/全双工)

4.AT89S51有2级中断,5个中断源

5.AT89S51内部数据存储器的地址范围是00H~7FH,位地址空间的字节地址范围是20H~2FH,对应的位地址范围是00H~7FH,外部数据存储器的最大可扩展容量是64K。

6.AT89S51单片机指令系统的寻址方式有__寄存器寻址__、____直接寻址____、___寄存器间接寻址_____、_立即寻址____、基址寄存器加变址寄存器寻址。

7.如果(A)=34H,(R7)=0ABH,执行XCHA,R7;结果(A)=0ABH,

(R7)=34H。

8.82C55可以扩展3个并行口,其中8条口线具有位操作功能;

9.当单片机复位时PSW=00H,这时当前的工作寄存器区是0区,R4所对应的存储单元地址为04H。

10.若A中的内容为67H,那么,P标志位为1。

11.74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中8片芯片。

如果(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后:

POPDPH;

POPDPL;

POPSP;

则:

(DPH)=___3CH___;(DPL)=___5FH___;(SP)=___50H___;(6分)

3.串行口方式3发送的第9位数据要事先写入(SCON)寄存器的(TB8)位。

4.串行口的方式0的波特率为(fOSC/12)。

6.在内部RAM中可位寻址区中,位地址为40H的位,该位所在字节的字节地址为(28H)。

7.如果(A)=58H,(R1)=49H,(49H)=79H,执行指令XCHA,@R1后;结果(A)=(79H),(49H)=(58H)。

8.利用81C55可以扩展(3)个并行口,(256)个RAM单元。

9.当单片机复位时PSW=(00)H,SP=(07H),P0~P3口均为(高)电平。

10.若A中的内容为88H,那么,P标志位为(0)。

11.当AT89S51执行MOVCA,@A+DPTR指令时,伴随着(PSEN*)控制信号有效。

12.AT89S51访问片外存储器时,利用(ALE)信号锁存来自(P0口)发出的低8位地址信号。

13.已知fosc=12MHz,T0作为定时器使用时,其定时时间间隔为(1us)。

14.若AT89S51外扩8KB程序存储器的首地址若为1000H,则末地址为(2FFF)H。

2.串行口方式2接收到的第9位数据送(SCON)寄存器的(RB8)位中保存。

3.当单片机复位时PSW=(00)H,这时当前的工作寄存器区是(0)区,R6所对应的存储单元地址为(06)H。

5.AT89S51访问片外存储器时,利用(ALE)信号锁存来自(P0口)发出的低8位地址信号。

6.若AT89S51外扩32KB数据存储器的首地址若为4000H,则末地址为(BFFF)H。

8.若A中的内容为67H,那么,P标志位为

(1)。

9.AT89S51单片机的通讯接口有(串行)和(并行)两种形式。

在串行通讯中,发送时要把(并行)数据转换成(串行)数据。

接收时又需把(串行)数据转换成(并行)数据。

10.AT89S51内部数据存储器的地址范围是(00-7FH),位地址空间的字节地址范围是(00-2FH),对应的位地址范围是(00-7FH),外部数据存储器的最大可扩展容量是(64KB)。

12.AT89S51内部提供

(2)个可编程的(16)位定时/计数器,定时器有(4)种工作方式。

1.AT89S51单片机芯片共有40个引脚,MCS-51系列单片机为8位单片机。

6.当单片机复位时PSW=00H,这时当前的工作寄存器区是0区,R4所对应的存储单元地址为04H。

8.51系列单片机的典型芯片分别为AT89S51、8031、AT89C51。

9.AT89S51的P3口为双功能口;

10.由AT89S51组成的单片机系统在工作时,EA*引脚应该接地(或0);

11.AT89S51外部程序存储器的最大可扩展容量是64K,其地址范围是0000H-FFFFH。

ROM芯片2764的容量是8KB,若其首地址为0000H,则其末地址1FFFH。

12.AT89S51的中断源有外中断0,T0,外中断1,T1,串行口,有2个中断优先级。

13.AT89S51唯一的一条16位数据传送指令为MOVDPTR,data16。

14.LJMP的跳转范围是64K,AJMP的跳转范围是2KB,SJMP的跳转范围是±128B(或256B)。

15.若A中的内容为68H,那么P标志位为1。

1.如果(A)=45H,(R1)=20H,(20H)=12H,执行XCHDA,@R1;结果(A)=42H,(20H)=15H

2.AT89S51的异步通信口为全双工(单工/半双工/全双工),若传送速率为每秒120帧,每帧10位,则波特率为1200bit/s

3.AT89S51内部数据存储器的位地址空间的字节地址范围是20H-2FH,对应的位地址范围是00H-FFH。

4.单片机也可称为微控制器或嵌入式控制器

5.当MCS-51执行MOVXA,@R1指令时,伴随着RD控制信号有效。

6.当单片机的PSW=01H时,这时当前的工作寄存器区是0区,R4所对应的存储单元地址为04H

7.AT89S51的P0口为高8位地址总线口。

8.设计一个以AT89C51单片机为核心的系统,如果不外扩程序存储器,使其内部4KB闪烁程序存储器有效,则其EA*引脚应该接+5V

9.在R7初值为00H的情况下,DJNZR7,rel指令将循环执行256次。

10.欲使P1口的低4位输出0,高4位不变,应执行一条ANLP1,#0F0H命令。

11.单片机外部三大总线分别为数据总线、地址总线和控制总线。

12.数据指针DPTR有16位,程序计数器PC有16位

13.74LS138是具有3个输入的译码器芯片,用其输出作片选信号,最多可在8块芯片中选中其中任一块。

14.MCS-51指令系统中,ADD与ADDC指令的区别是进位位Cy是否参与加法运算

15.特殊功能寄存器中,单元地址低位为0或8的特殊功能寄存器,可以位寻址。

16.开机复位后,CPU使用的是寄存器第0组,地址范围是00H-07H

17.若某存储器芯片地址线为12根,那么它的存储容量为4kB

18.关于定时器,若振荡频率为12MHz,在方式0下最大定时时间为8.192ms

19.AT89S51复位后,PC与SP的值为分别为0000H和07H

 20.LJMP跳转空间最大可达到64K

1、AT89S51有(111)条指令。

2、晶振的频率为6MHz时,一个机器周期为

(2)μS。

3、51单片机是把中央处理器,(存储器)、(定时器/计数器)、(中断系统)、(系统时钟)(系统总线)以及I/O接口电路等主要计算机部件集成在一块集成电路芯片上的微型计算机。

4、单片机复位时P0的值为(FFH)。

5、当PSW.4=0,PSW.3=1时,当前工作寄存器Rn,工作在第

(1)区。

6、在R7初值为00H的情况下,DJNZR7,rel指令将循环执行(256)次。

7、欲使P1口的低4位输出0,高4位不变,应执行一条(ANLP1,#OFOH)指令。

8、AT89S51系列单片机有(5)个中断源,可分为

(2)个优先级。

上电复位时(外部中断0)中断源的优先级别最高。

9、计算机三大总线分别为(数据总线)、(地址总线)和控制总线。

10、74LS138是具有3个输入的译码器芯片,用其输出作片选信号,最多可在(8)块芯片中选中其中任一块。

11、MCS-51指令系统中,ADD与ADDC指令的区别是(进位位Cy是否参与加法运算)。

12、AT89S51单片机有

(2)个16位定时/计数器。

13、特殊功能寄存器中,单元地址(末位为0或8)的特殊功能寄存器,可以位寻址。

1.PSW中的RS0、RS1=01B,此时R2的字节地址为(0AH)。

2.假定DPTR的内容1000H,A中的内容为40H,执行指令:

2000H:

MOVCA,@A+DPTR

后,送入A的是程序存储器(1040H)单元的内容。

3.假定A中的内容为79H,R5中的内容为78H,执行指令:

ADDA,R5

DAA

后,累加器A的内容为(57)H,CY的内容为

(1)。

4.当AT89S51单片机响应中断后,必须用软件清除的中断请求标志是(TI和RI)。

5.TMOD中的GATEx=1时,表示由两个信号TRx和(中断引脚上的电平)控制定时器的启停。

6.在AT89S51单片机的RESET端出现(大于2个机器周期)的高电平后,便可以可靠复位,复位后的PC中的内容为(0000)H。

8.DA转换器的两个最重要的技术指标为(分辨率)和(建立时间)。

9.在存储器扩展中,无论是线选法还是译码法,最终都是为扩展芯片的(CE*)端提供(片选)信号。

10.波特率定义为(串行口每秒发送的的位数)。

串行通信对波特率的基本要求是互相通信的甲乙双方必须具有(相同)的波特率。

11.若串行通信按方式1传送,每分钟传送3000个字符(8位/每字符),其波特率是(400bit/s)。

12.AT89S51片内(20H~2FH)地址范围内的数据存储器,既可以字节寻址又可以位寻址。

13.8KBRAM存储器的首地址若为1000H,则末地址为(2FFF)H。

15.已知8段共阴极LED显示器显示字符“H”的段码为76H,则8段共阳极LED显示器显示字符“H”的段码为(89H)。

16.当键盘的按键数目少于8个时,应采用(独立)式键盘。

当键盘的按键数目为64个时,应采用(矩阵)式键盘。

17.当BCD码拨盘的A端接地时,当BCD码拨盘拨到“6”时,此时拨盘的8、4、2、1接点的输出为(1、0、0、1)。

18.使用双缓冲方式的D/A转换器,可实现多路模拟信号的(同步)输出。

19.AT89S51单片机扩展并行I/O口时,对扩展的I/O口芯片的基本要求是:

输出应具有(锁存)功能;输入应具有(三态缓冲或锁存选通)功能;

1、单片机也可称为微控制器或嵌入式控制器。

2、串行口方式2接收到的第9位数据送SCON寄存器的RB8位中保存。

3、AT89S51内部数据存储器的地址范围是00H~7FH,位地址空间的字节地址范围是20H~2FH,对应的位地址范围是00H~7FH,外部数据存储器的最大可扩展容量是64KB。

4、内部RAM中,位地址为50H的位,该位所在字节的字节地址为2AH。

5、如果(A)=65H,(50H)=50H,(R1)=50H,执行指令XCHDA,@R1;结果为:

(A)=50H,(50H)=65H。

6、当AT89S51执行MOVCA,@A+PC指令时,伴随着PSEN*控制信号有效。

7、AT89S51访问片外存储器时,利用ALE信号锁存来自P0发出的低8位地址信号。

8、定时器/计数器T0作为计数器使用时,其计数频率不能超过晶振频率fosc的1/24。

14、74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中8片芯片。

15、利用82C55可以扩展3个并行口,其中8条口线具有位操作功能。

16、若AT89S51外扩32KB数据存储器的首地址为0000H,则末地址为7FFFH。

17、由8031组成的单片机系统在工作时,

引脚应该接0。

18、AT89S51唯一的一条16位数据传送指令为MOVDPTR,#data16。

1.相对寻址是以PC的当前值为基准,加上指令中给出的相对偏移量形成目标地址的方式。

2.AT89S51单片机的1个机器周期含有12个晶振周期或6状态周期。

3.AT89S51单片机进行扩展时,用P0口作为地址/数据总线,用P2口作为地址总线高8位。

4.假定累加器A的内容30H,执行指令:

1000H:

MOVCA,@A+PC后,把

程序存储器1031H单元的内容送累加器A中

5.指令格式是由操作码和操作数部分组成。

6.AT89S51单片机的串行口控制寄存器中有2个中断标志位,它们是TI和RI

7.在进行BCD码加法运算时,紧跟ADD或ADDC指令后的指令必须是DAA指令

8.JNCrel指令执行时,当CY位为0时程序发生跳转。

9.单片机位寻址区的单元地址是从20H单元到2FH单元,若某位地址是10H,它所在单元的地址应该是22H。

10.外部中断0的中断入口地址为0003H,定时/记数器T1的中断入口地址为001BH。

11.串行口工作方式2为9位异步通信,若SMOD=0,fOSC=6MHZ,则其相应波特率为6×106/64b/s

12.堆栈应遵循先进后出规律,堆栈指针的符号为SP

1.如果(DPTR)=5678H,(SP)=42H,(3FH)=12H,(40H)=34H,(41H)=50H,(42H)=80H,则执行下列指令后:

POPDPH

POPDPL

RET

则:

(PCH)=_34H_;(PCL)=_12H__;(DPH)=__80H__;(DPL)=__50H__;(4分)

2.AT89S51采用6MHz的晶振,定时2ms,如用定时器方式1时的初值(16进制数)应为多少?

(写出计算过程)(6分)

答:

机器周期6×106=2×10-6s=2uS

又方式1为16进制定时器.故

(216—X)×2×10-6=2×10-3=>216-X=1000

=>X=65536-1000=64536即初值=FC18H

3.AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?

(6分)

答:

不发生数据冲突的原因是:

AT89S51中访问程序存储器和数据存储器的指令不一样。

选通信号也就不一样,前者为PSEN,后者为WR与RD。

程序存储器访问指令为MOVCA,@DPTR;MOVCA,@A+pc。

数据存储器访问指令为:

movxA,@DPTR;MOVXA,@Ri;MOVX@DPTR,A。

4.说明AT89S51的外部引脚EA*的作用?

(4分)

答:

当EA*为高电平时,AT89S51访问内部程序存储器,但当地址大于0FFF时,自动转到外部程序存储器;当EA*为低电平时,AT89S51只读取外部程序存储器。

5.写出AT89S51的所有中断源,并说明说明哪些中断源在响应中断时,由硬件自动清除,哪些中断源必须用软件清除,为什么?

(6分)

答:

外部中断INT0*

定时器/计数器中断T0

外部中断INT1*

定时器/计数器中断T1

串行口中断

其中串行口中断TI与RI必须用软件清“0”,因为串口中断的输出中断为TI,输入中断为RI,故用软件清“0”。

1.AT89S51采用12MHz的晶振,定时1ms,如用定时器方式1时的初值(16进制数)应为多少?

(写出计算过程)(6分)

解:

采用12MHZ的晶振,Tcy=1/fosc×12=1/12×10-6×12=1us

采用定时器方式1(为16位)

定时1ms,设初值为X,则:

(216-X)×1×10-6=1×10-3

则=>X=64536将其转换成二进的为:

1111110000011000

再将其转化为16进制数为:

FC18

初值为TXH=FCHTXL=18H

2.中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别?

(4分)

答:

RETI除了将压栈的内容出栈外(即现场恢复),还清除在中断响应时被置1的AT89S51内部中断优先级寄存器的优先级状态。

3.AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?

(6分)

答:

AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突。

这是因为它们的控制信号不同:

(1)外扩程序存储器是PSEN*信号为其控制信号

外扩数据存储器是RD*与WR*信号为其控制信号

(2)指令不同,程序存储器用MOVC读取,数据存储器用MOVX存取

1.采用6MHz的晶振,定时2ms,用定时器方式1时的初值应为多少?

(请给出计算过程)

答:

(1)Ts=2us

(216-X)×2us=2ms

从而X=64536……………4分

(2)64536=FC18H……………2分

2.AT89S51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?

(4分)

答:

因为访问外扩的程序存储器和数据存储器执行的指令不同,所发出的控制信号也就不同。

(2分)

读外部数据存储器时,RD*信号有效。

写外部数据存储器时,WR*信号有效。

而读外部程序存储器时,PSEN*信号有效。

由于发出的控制信号不同,且只能有一种信号有效,因此,即使MCS-51外扩的程序存储器和数据存储器有相同的地址空间,也不会发生数据冲突。

(2分)

3.说明AT89S51的外部引脚EA*的作用?

(3分)

答:

EA*是内外程序存储器选择控制信号。

(1分)

当EA*=0时,只选择外部程序存储器。

(1分)

当EA*=1时,当PC指针≤0FFFH时,只访问片内程序存储器;当PC指针>0FFFH时,则访问外部程序存储器(1分)

21.执行如下三条指令后,30H单元的内容是#0EH

M O V           R 1,#30H    

M O V          40H,#0 E H   

M O V         ﹫R 1,40H      

1、采用6MHz的晶振,定时5ms,用定时器方式1时的初值应为多少?

(请给出计算过程)(5分)

答:

(1)(216-X)×2us=5ms65536–2500=63036

从而X=63036………………………..4分

(2)64536=F63CH………………………1分

2、MCS-51单片机片内256B的数据存储器可分为几个区?

分别作什么用?

(8分)

答:

(1)通用工作寄存器区,00H–1FH,共4组,R0-R7,在程序中直接使用

(2)可位寻址区,20H-2FH,可进行位操作,也可字节寻址

(3)用户RAM区,30H-7FH,只可字节寻址,用于数据缓冲及堆栈区

(4)特殊功能寄存器区,80H-FFH,21个特殊功能寄存器离散地分布在该区内,用于实现各种控制功能

1.写出执行下列程序段后相关存储单元或寄存器的值。

(本题每空2分,共4分)

ORG0200H

MOVR1,#37H

MOVA,R1

MOV37H,#55H

CJNE@R1,#37H,DONE

MOVA,37H

SJMPEXIT

DONE:

MOV37H,#0AAH

EXIT:

SJMP$

执行完毕(A)=___37H____,(37H)=____0AAH___。

2.已知:

(A)=73H,(R1)=30H,片内RAM(30H)=34H,片外RAM(30H)=A0H,

(C)=1。

请写出单片机执行下列指令后的结果。

以下语句不是程序段,互不相关。

(每空1分,共6分。

(a)CPLA;(A)=__6CH____

(b)MOVXA,@R1;(A)=___A0H___

(c)ADDCA,@R1;(A)=__0A8H____

(d)RLCA;(A)=____27H__

(e)XCHA,@R1;片内(30H)=__73H____

(f)ORLA,#0FH;(A)=___7FH___

1、将80H单元中的内容与数据4FH相比较,相等返回,不相等将80H单元置FFH返回。

(5分)

MOVA,80H

CJNEA,#4FH,BD

SJMPL1

BD:

MOV80H,#0FFH

L1:

RET

2、外部RAM单元2000H的内容传送到内部RAM单元70H;(5分)

MOVDPTR,#2000H

MOVXA,@DPTR

MOV70H,A

3、将32H单元中内容的第7位取反后送给50H。

(5分)

MOVA,32H

CPLACC.7

MOVC,ACC.7

MOV50H,C

4、若(50H)=40H,试写出执行以下程序段后累加器A、寄存器R0及内部RAM的40H、41H、42H单元中的内容各为多少?

(5分)

MOVA,50H;(A)=40H

MOVR0,A;(R0)=40H

MOVA,#00H;(A)=0

MOV@R0,A;(40H)=0

MOVA,#3BH;(A)=3BH

MOV41H,A;(41H)=3BH

MOV42H,41H;(42H)=3BH

(A)=3BH;(R0)=40H;

(40H)=0;(41H)=3BH;(42H)=3BH

5、将外部数据存储器3000H开始100个存储单元的内容存入3070开始的存储单

元(9分)

MOVDPTR#3000H

MOVP2,#30H

MOVR1,#70H

MOVR5,#100

L1:

MOVXA,@DPTR

MOVX@R1,A

INCR1

INCDPTR

DJNZR5,L1

RET

四、读程序填空(本大题共4小题,共19分)

1.CLRC

MOVA,4DH

SUBBA,,4EH

MOV30H,A

MOVA,7FH

SUBBA,2BH

MOV31H,A

SJMP$

(1)该程序的功能是:

两个16位数的减法:

(7F4DH)-(2B4EH),结果存入内部RAM的30H和31H单元,31H单元存差的高8位,30H单元存差的低8位(3分)

(2)若(4DH)=06H,(4EH)=05H,(7FH)=0AH,(2BH)=01H

则执行上述程序后(30H)=01H。

(31H)=09H。

(2分)

2.START:

MOVR0,#40H

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

当前位置:首页 > 高等教育 > 工学

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

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