单片微型计算机徐春辉,单片微机原理及应用 徐春辉第12章 习题答案

本文详细介绍了单片机与I/O接口的关系,包括I/O端口与I/O接口的区别、I/O接口的主要功能。同时,讲解了I/O数据的四种传送方式:同步、查询、中断和DMA。以82C55和81C55为例,阐述了它们的工作原理、配置方式以及在不同情况下的适用性。文中还给出了针对82C55和81C55的具体编程实例,如82C55的C口控制字设置、81C55的定时器应用等。
摘要由CSDN通过智能技术生成

第12章习题解答

1.I/O接口和I/O端口有什么区别?I/O接口的功能是什么?

解:I/O端口简称I/O口,常指I/O接口电路中具有端口地址的寄存器或缓冲器。I/O接口是指单片机与外设间的I/O接口芯片。

I/O接口的主要功能:一.实现和不同外设的速度匹配;二.输出数据缓存;三.输入数据三态缓冲。除此之外,还可能有信号转换、提供状态和控制信息及时序协调等功能。

2.常用的I/O接口编址有哪两种方式?它们各有什么特点?AT89S51的I/O端口编址采用的是哪种方式? 解:一.独立编址方式:独立编址方式就是I/O地址空间和存储器地址空间分开编址。独立编址的优点是I/O地址空间和存储器地址空间相互独立,界限分明。但是,却需要设置一套专门的读写I/O的指令和控制信号。二.统一编址方式:这种编址方式是把I/O端口的寄存器与数据存储器单元同等对待,统一进行编址。统一编址的优点是不需要专门的I/O指令,直接使用访问数据存储器的指令进行I/O操作,简单、方便且功能强大。AT89S51单片机使用的是I/O和外部数据存储器RAM统一编址的方式。

3.I/O数据传送有哪几种传送方式?分别在哪些场合下使用?

解:一.同步传送方式:同步传送又称为有条件传送。当外设速度可与单片机速度相比拟时,常常采用同步传送方式,最典型的同步传送就是单片机和外部数据存储器之间的数据传送。二.查询传送方式:查询传送方式又称为有条件传送,也称异步传送。单片机通过查询得知外设准备好后,再进行数据传送。异步传送的优点是通用性好,硬件连线和查询程序十分简单,但是效率不高。为了提高单片机的工作效率,通常采用中断方式。三.中断传送方式:中断传送方式是利用AT89S51本身的中断功能和I/O接口的中断功能来实现I./O数据的传送。单片机只有在外设准备好后,发出数据传送请求,才中断主程序,而进入与外设进行数据传送的中断服务程序,进行数据的传送。中断服务完成后又返回主程序继续执行。因此,采用中断方式可以大大提高单片机的工作效率。四.直接存储器存取方式:是一种采用专用硬件电路执行输入/输出的传送方式,它使I/O设备直接与内存进行高速的数据传送,而不必经过CPU传送程序。适用于高速的输入/输出设备成批交换数据的情况。

4.编写程序,采用82C55的C口按位置位/复位控制字,将PC7置0,PC4置1,(已知82C55各端口的地址为7FFCH-7FFFH)。

解:本题主要练习对82C55的C口的操作。其控制字的高位为0时,低四位对C口进行置位。由题目我们得到了控制口的地址为7FFFH。程序如下: ORG 0000H MAIN: MOV DPTR,#7FFFH ;控制字寄存器地址送DPTR MOV A,#0EH ;将PC7置0 MOVX @DPTR,A MOV A,#09H ;将PC4置1 MOVX @DPTR,A SJMP $

END

5.82C55的方式控制字和C口按位置位/复位控制字都可以写入82C55的同一控制寄存器,82C55是如何区分这两个控制字的?

解:82C55通过它们的最高位来进行判断,最高位为1时,这时82C55认为这是方式控制字,否则认为是C口按位置位/复位控制字

6.以图12-8为例,说明82C55的A口在方式1的选通输入方式下的工作过程。 解:

说明:当外设输入一个数据并送到PA7~PA0上时,输入设备自动在选通输入线

STBA向

82C55发送一个低电平选通信号。82C55收到选通信号后:首先把PA7~

PA0上输入的数据存入A口的输入数据缓冲/锁存器;然后使输入缓冲器输出线IBFA变成高电平,以通知输入设备,82C55的A口已收到它送来的输入数据。82C55检测到联络线 STBA由低电平变成了高电平、IBFA为1状态和中断允许触发器INTEA为1时,使输出线INTRA(PC3)变成高电平,向AT89S51发出中断请求。(INTEA的状态可由用户通过对PC4的置位/复位来控制。AT89S51相应中断后,可以通过中断服务程序从A口的输入数据缓冲/锁存器读取外设发来的输入数据。当输入数据被CPU读走后,82C55撤销INTRA上的中断请求,并使IBFA变为低电平,以通知输入外设可以送下一个输入数据。 7.判断下列说法是否正确,为什么?

A.由于81C55不具有地址锁存功能,因此在与AT89S51的接口电路中必须加地址锁存器。

B.在81C55芯片中,决定端口和RAM单元编址的信号线是AD7~AD0和

C.82C55具有三态缓冲器,因此可以直接挂在系统的数据总线上。 D.82C55的B口可以设置成方式2。

解:A.错,81C55具有地址锁存功能,因此在与AT89S51的接口电路中不必加地址锁存器;

B.错,引脚IO/、A2、A1、A0决定端口地址和RAM单元编址; C. 错,82C55不具有三态缓冲器;

D. 错,82C55的B口只可以设置成方式0和方式1。

8.假设81C55的TIMERIN引脚输入的频率为4MHz?问81C55的最大定时时间是多少?

解:81C55记数器的初值范围是:3FFFH-2H。当频率为4MHz,初值为3FFFH时,最大定时时间为:16383/4E+6=0.00409575S

9.AT89S51的并行接口的扩展有多种方式,在什么情况下,采用扩展81C55比较合适?什么情况下,采用扩展82C55比较适合?

解:82C55具有3个8位的并行I/O口,3种工作方式,可通过编程改变其功能,因而使用灵活方便,通用性强,可作为单片机与多种外围设备连接时的中间接口电路。81C55芯片内包含有256B的RAM存储器(静态),2个可编程的八位并行口PA和PB,1个可编程的6位并行口PC,以及1个14位减法定时器/计数器。所以它经常用于单片机的外围接口芯片。

10.假设81C55的TIMERIN引脚输入的脉冲频率为1MHz,请编写出在81C55的

引脚上输出周期为10ms的方波的程序。

解:将1MHz的脉冲改变为10ms的方波,这就让我们想到了在数字电路里面学到的分频器。计算得出分频前后频率之比为10000:1,这样我们只要将定时器初值设置为64H就可以了。(假设I/O口地址为7F00H-7F05H) START: MOV DPTR,#7F04H ;指针指向定时器低8位 MOV A,#64H ;送初值给A MOVX @DPTR,A ;初值送给低8位 INC DPTR ;指向高8位 MOV A,#40H ;定时器方波输出 MOVX @DPTE,A MOV DPTR,#7F00H ;指向命令/状态口 MOV A,#0C2H ;设定控制字 MOVX @DPTE,A ;启动定时器 END

11.根据图12-21所示的电路,编程完成对81C55的操作:

A. 读81C55的80H单元。

B. 将立即数88H写入81C55的30H单元。 解:A.

MOV DPTR,#7E80H MOVX A,@DPTR B.

MOV A,#88H

MOV DPTR,#7E30H MOVX A,@DPTR

12.根据图12-21所示的电路,欲将81C55内部40H单元中的内容传送到A口输出,试编程实现之。

解:首先对81C55进行初始化设置,设置A口为基本输出方式,由此可得控制字为:00H。 根据图12-21知控制字寄存器地址为:7F00H,A口地址为:7F01H,81C55内部RAM40H单元的地址为:7E40H,由此得程序如下:

MOV DPTR,#7F00H MOV A, #00H

MOVX @DPTR,A MOV DPTR, #7E40H

MOVX A,@DPTR MOV DPTR, #7F01H MOVX @DPTR, A

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值