单片机作业习题(2)

2019-04-21 18:19

4指出下列每条指令的寻址方式和功能。 ①MOV A,#50H ②MOV A,50H ③MOV 50H,R3 ④MOVX A,@R0 ⑤MOV C,50H ⑥MOVX A,@DPTR

5 写出下列指令的机器码,并指出执行下列程序段后累加器A的内容是什么? ① MOV A,#20H ② MOV A,#F1H

MOV R0,#30H MOV 30H,#8AH MOV @R0,A MOV R0,30H MOV 40H,R0 ADD A,#20H XCH A,R0 ADDC A,@R0 ③ CLR C ④ MOV A,#78H

MOV 30H,#6BH MOV 30H,#89H MOV A,#83H ADD A,30H MOV R0,#30H DA A SUBB A,@R0 SWAP A 6 写出能完成下列数据传送的指令: ① R1中内容送到R0

②内部RAM40H单元中的内容送到50H单元中

③内部RAM40H单元中的内容送到外部RAM50H单元中 ④内部RAM40H单元中的内容送到外部RAM2500H单元中 ⑤外部RAM50H单元中的内容送到内部40H单元中

⑥外部RAM2500H单元中的内容送到内部RAM40H单元中 ⑦外部ROM4000H单元中的内容送到外部RAM50H单元中 ⑧外部ROM4000H单元中的内容送到内部RAM2500H单元中 7 试利用堆栈操作实现40H与50H单元中的数据交换。

8试编出把外部RAM2500H单元中的内容和2600H单元中的内容相交换的程序。 9试编程求92H+A4H,并分析对PSW相关标志位的影响。

10已知:A=7BH,R0=40H,(40H)=A5H,PSW=80H,试问如下指令执行后的结果是什么? ① ADDC A,40H ②SUBB A,40H

INC 40H INC A ③ SUBB A,#40H ④SUBB A,R0

DEC R0 DEC 40H

11 试编程求 4A75H+6459H,并把结果的高8位放在内部RAM的41H单元中,把结果的低8

位放在40H单元中。

12试编程求5E5DH-24A3H,并把结果存入内部RAM的50H和51H单元中,50H单元存放差的

低8位。

13 已知被乘数是16位无符号数,低8位在M1单元,高8位在M1+1单元,乘数为8位无符

号数存放在M2单元中,试编程将它们相乘,并把结果存入R2、R3、R4中,其中R2中为高8位,R4中为低8位。 14试写出完成如下操作的程序:

①使内部RAM30H单元中的低4位变“1”,其余位不变 ②使内部RAM30H单元中的高3位变反,其余位不变 ③使内部RAM30H单元中的低2位变“0”,其余位不变 ④使内部RAM30H单元中的所有位变反

⑤使外部2000H单元中的低4位变“1”,其余位不变

15 编程完成以RAM20H为首地址的10个数据传送,目的地址为外部RAM以2000H为首地址

的区域。

16 试编程,当寄存器R0的内容分别满足下列条件时,转移到LOOP处执行程序,条件不满

足时停机。

①R0?15 ②R0<15 ③ R0?10 ④R0>20 17 已知SP=50H,PC=378EH,执行ACALL 3A00H后堆栈指令SP,堆栈内容以及程序计数器PC

中的内容是什么?

第9章 习题与思考题

1 程序设计语言有哪三种?各有什么异同?汇编语言有哪两类语句?各有什么特点? 2 在汇编语言程序设计中,为什么要采用标号来表示地址?标号的构成原则是什么?使用

标号有什么限制?注释段起什么作用?

3 MCS-51汇编语言有哪几条常用伪指令?各起什么作用?

4 试编程将内部RAM单元20H~2FH全部清0,而后将30H~3FH单元全置为1。

5 已知:内部RAM BLOCK单元开始存放有一组带符号数,数的个数已在LONG单元,

请编出可以统计其中正数和负数个数并分别存入NUM和NUM+1单元的程序。 6 设:自变量x为一无符号数,存放在内部RAM的VAX单元,函数y存放在FUNC单元,

请编出如下关系满足的程序:

?x?y??5x?2x?x?5050?x?20 x?207 外部RAM的SOUCE(二进制8位)开始有一数块,该数块以“$”字符结尾。请编一

程序,把它们传送到内部RAM的DIST为始址的区域(“$”字符也要传送)。 8 在上例中,若SOUCE为二进制16位,则程序又该如何编?

9 外部RAM从2000H到2100H有一数据块,请编出将它们传送到3000H到3100H区域

的程序。

10 设有一始址为FIRST+1的数据块,存放在内部RAM单元,数据块长度在FIRST单元

而且不为0,要求统计该数据块中正偶数和负偶数的个数,并将它们分别存放在PAPE单元和NAOE单元,试画出能实现上述要求的程序流程和编出相应程序。

11 请编出一个能在内部RAM的BLOCK为始址的100个无符号数中找出最小值和把它送

入MIN单元的程序。

12 已知在内部RAM中,共有六组无符号四字节被加数和加数分别存放在FIRST和

SECOND为始址的区域(低字节在前,高字节在后)。请编程求和(设和也为四字节),并把和存于SUM开始的区域。

13 在内部RAM中,有一个以BLOCK为始址的数块,块长在LEN单元。请用查表指令编

一程序,先检查它们是否是16进制数,若是16进制数,则把它们变为ASCII码,若不是16进制数,则把它们变为00H。

14 在内部RAM中,BLOCK开始的存储区有10个单字节十进制数(每字节有两个BCD

数),请编程求BCD数之和(和为三位BCD数),并把它们存于SUM和SUM+1单元(低字节在SUM单元)。

15 在上例中,若改为10个双字节十进制数求和(和为4位BCD数),结果仍存于SUM

开始的连续单元(低字节在前)。请修改相应程序。

16 已知MNA和MNB内分别存有两个小于10的整数,请用查表子程序实现C=a2+2ab

+b2,并把和存于MNC和MNC+1单元(MNC中放低字节)。

17 已知外部RAM始址为STR数块中有一回车符CR结束的ASCII码。请编一程序,把

它们的二进制代码放在始址为BDATA的内部RAM存储区。 18 设晶振频率为6MHz,试编一能延时20ms的子程序。

19 已知内部RAM的MA(被减数)和MB(减数)中分别有两个带符号数(16位)。请

编一减法子程序,并把差存入RESULT和RESULT+1(低8为在RESULT单元)中。 20 设8031单片机外部RAM从1000H单元开始存放100个无符号8位二进制数。要求编

一子程序能把它们从大到小依次存入内部RAM从10H开始的存储区,请画出程序流程图。

第10章 习题与思考题

1 I/O数据有哪四种传送方式?各在什么场合下使用?

2 什么叫中断?中断通常可以分为哪几类?计算机采用中断有什么好处? 3 什么叫中断源?8031有几个中断源?各有什么特点?

4 什么叫中断嵌套?什么叫中断系统?中断系统的功能是什么?

5 8031有几个中断源,各中断标志是如何产生的?又如何清“0”的?CPU响应中断时,

对应的中断服务程序入口地址各是什么?

6 中断允许寄存器IE各位定义是什么?请写出允许定时器/计数器T1溢出中断的指令。 7 试写出设定INT0和INT1上中断请求为高优先级和它们中断的程序。此时,若INT0和

INT1引脚上同时有中断请求信号输入,试问MCS-51先响应哪个引脚上中断请求?为

什么?

8 MCS-51响应中断的条件是什么?中断响应的全过程如何?

9 试写出INT0为边沿触发方式的中断初始化程序。

第11章 选题与思考题

1 定时器/计数器的作用是什么?有什么特点?

2 MCS-51单片机有几个定时器/计数器?各是多少位?计数脉冲的来源有哪些? 3 MCS-51单片机的定时器/计数器有哪几种工作方式?各有什么特点?

4 定时器/计数器用作定时器时,定时时间与哪些因素有关?定时器/计数器用作计数时,

对输入信号频率有哪些限制?

5 以定时器/计数器1对外部事件计数。每计数1000各脉冲后,定时器/计数器1转为定时工作方式。定时10ms后,又转为计数方式,如此循环不止。假定单片机晶振频率为6MHz,请使用模式1编程实现。

6 一个定时器的定时时间有限,如何计算某种工作方式下的最大定时时间?如何实现两个定时器的串行定时,以满足较长定时时间的要求?

7 使用一个定时器,如何通过软、硬件结合的方法,实现较长时间的定时? 8 8051定时器的门控信号GATE设置为1时,定时器如何启动?

9 已知8051单片机的fosc=6MHz,请利用T0和P1.0输出矩形波。矩形波高电平宽50μs,

低电平宽度300μs。

10 已知8051单片机的fosc=12MHz,用T1定时,试编程由P1.0和P1.1引脚分别输出周期为2ms和500μs的方波。

第12章 练习与思考题

1 存储器扩展时,8051的ALE线的作用是什么?不执行MOVX指令时,ALE的输出频

率是多少?执行MOVX指令时,ALE信号有何变化? 2 请简述外部程序存储器的操作时序。

3 设有2片1K×4SRAM存储芯片(2114),请设计一个位扩展存储系统(1K×8);要求

用138译码器片选;首地址为1000H。

4 已知有1片2732,2片6116,请设计一个字扩展存储系统,要求用138译码器片选;2732

首地址为0000H;2片6116地址与2732地址重叠。

5 试用线选法画出8031对一片62128的连线图,要求基本地址范围为8000H~BFFFH;并

求出62128的重叠地址;若改用2片6264,地址范围不变,如何画出电路。

6 已知某计算机系统的数据总线16位(D15~D0);若有4片6116,请用2--4译码器,设计出字位全扩展存储系统,要求首地址为2000H。 什么是“哈佛”结构?

第13章 练习与思考题

1. 8051单片机的四个I/O端口的内部结构有什么不同?它们的功能有什么区别? 2. 对8051端口操作时,什么是“读—修改—写”操作?举例说明。 3. 8051和片外RAM/ROM连接时,为什么P0口需要采用片外地址锁存器? 4. 8031片内无ROM,在应用中,P0和P2口能否直接做输入/出口?为什么? 5. P1、P3口做输入口时的条件是什么?如何实现该条件?

6. 在实现并行接口扩展时,接口也需要地址译码,为什么?接口的地址译码对扩展的存储

器地址编码各有什么联系?

7. 用三态输出缓冲器(74LS244)和8D锁存器(74LS373)作简单的输入/出接口有什么

实际意义?用它们如何构成最简单的输入/出接口?并举例说明。

8. 当8255的A口工作于方式2时,能否使B口工作于选通方式的输入/出?为什么? 9. 设计一个电路,使8255与8031连接,使8255的A口做基本输入,与2位BCD拨码

盘连接,并用该数据控制B口的2位LED输出,请画出电路并编写出驱动程序,要求用线选法对8255片选,编码地址为8000H~8003H。

10. 用8155作扩展定时器使用时,若输入的时间常数为奇数,输出波形不对称,为什么? 11. 8155作200分频器,设命令字寄存器端口地址为20H,请编出8155的初始化程序。 12. 设计一个电路,使8155与8031连接,并编写一段程序,将8155中的RAM置成“FFH”,

要求用R0(或R1)寄存器间接寻址,8155用线选法片选,片内RAM编码地址为00H~FFH,并根据所画电路,求出各端口的地址。

13. 独立式键盘和行列式键盘各有什么特点?各使用于什么场合?

14. 用8031、74LS244、74LS373设计一个4×8的行列式键盘电路,用流程图描述键盘键

号的形成过程,并用程序实现。

15. 什么叫显示缓冲区?显示缓冲区一般设置在什么地方?请简述显示缓冲区的应用过程。 16. 简述LCD的驱动原理?什么是占空比?什么是偏压比?它们对驱动LCD有什么意义? 17. 请掌握LCD驱动芯片7211(AM)的使用方法,简述7211和7211AM在使用中有什么

区别?

18. 若用LCD显示图形或曲线,应选择什么显示方式的LCD显示模块?请自查资料,找出

能完成上述功能的显示模块,并举例实现。

第14章 练习与思考题

1. 异步通信和同步通信的主要区别是什么?

2. 什么是半双工、全双工方式?MCS-51单片机属于哪种传送方式? 3. 对于远距离传送,可借助于电话网络,要用MODEM,其作用是什么? 4. 简述MCS-51串行口发送和接受数据的过程。

5. 简述MCS-51串行口在四种工作方式下的字符格式及波特率计算。

6. 请用中断法编出串行口方式1下的发送程序。设单片机主频为6MHz,波特率为1200bps,

发送数据缓冲区在外部RAM,始址为Tblock,数据块长度为30,采用偶校验,放在发送数据第8位(数据块长度不发送)。

7. 请用查询法编出串行口方式1下的接受程序,主频为6MHz,波特率为1200bps,接受

数据缓冲区在外部RAM,始址为RBlock,接受数据区长度为30,采用奇校验(数据块长度不发送)。

8. 请用查询法编出串行口方式2下的接受程序,设波特率为fosc/64,发送数据缓冲区在

外部RAM,始址为Tblock,数据长度为30,采用奇校验,放在发送数据第9位上(数据块长度不发送)。

9. 请用中断法编出串行口方式2下的接受程序,设波特率为fosc/64,接受数据缓冲区在

外部RAM,始址为RBlock,数据长度为30,放在接受数据第9位上(数据块长度不发送)。

第15章 练习与思考题

1. 什么是D/A、A/D转换?它们的作用是什么?各用在什么场合?它们常用的性能指标是

什么?

2. D/A转换器为什么通常不采用权电阻解码网络,而多采用T型电阻网络?简述T型电

阻网络的特点。

3. DAC0832和51单片机连接时有哪三种工作方式?各有什么特色?各适合在什么场合下

使用?

4. 根据图15.3电路,请按如下要求编写程序:


单片机作业习题(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:维修电工技师理论复习资料

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: