习题作业

第七章习题

7.2 问答思考题

(1)串行通信与并行通信有何不同?它们各有什么特点? 提示
一条信息的各位数据被同时传送的通信方式称为并行通信。并行通信的特点是:各数据位同时传送,传送速度快、效率高,但有多少数据位就需多少根数据线,因此传送成本高,且只适用于近距离(相距数米)的通信。一条信息的各位数据被逐位按顺序传送的通信方式称为串行通信。串行通信的特点是:数据位传送,传按位顺序进行,最少只需一根传输线即可完成,成本低但送速度慢。串行通信的距离可以从几米到几千米。
(2)按照数据传送方向,串行通信可分为哪几种制式?它们各有什么特点? 提示
串行通信可分为单工、半双工和全双工3种制式。其中,在单工制式下,通信线的一端为发送器,一端为接收器,数据只能按照一个固定的方向传送;在半双工制式下,系统的每个通信设备都由一个发送器和一个接收器组成,因而数据能从A站传送到B站,也可以从B站传送到A站,但是不能同时在两个方向上传送;在全双工方式下,系统的每端都有发送器和接收器,可以同时发送和接收,即数据可以在两个方向上同时传送。
(3)何为异步串行通信?一帧数据串由哪些格式位组成? 提示
一帧信息中各位数据被逐位按顺序传送,且靠插入的起始位和停止位进行同步的通信方式称为异步串行通信。一帧数据串可以包括起始位、数据位、可编程校验位和停止位,具体组成取决于采用的串行通信工作方式,如方式1等。
(4)51单片机内置UART的全称是什么?有哪些基本用途? 提示
UART是Universal Asychronous Receiver/Transmitter的缩写,称为通用异步接收器/发送器。其基本用途是异步串行通信的接收与发送,此外也可配合移位寄存器用于单片机I/O口扩展。
(5)51单片机的两个发送数据和接收数据的缓冲器,为何只有一个公用地址却不会产生冲突? 提示
两个数据缓冲器SBUF在物理上是相互独立的,一个用于发送数据,一个用于接收数据,但前者只能写入数据,不能读出数据,后者只能读出数据,不能写入数据。所以两个SBUF可公用一个地址(99H),通过读/写指令区别是对哪个SBUF的操作。
(6)51单片机使用哪个定时器作为通信时钟发生器?时钟脉冲与接收和发送的数据有何对应关系? 提示
使用定时器T1作为通信时钟发生器。发送数据时,时钟脉冲的下降沿对应于数据移位输出;接收数据时,时钟脉冲的上升沿对应于数据位采样
(7)异步串行通信的数据帧中,自动插入或过滤起始位、可编程位、停止位的工作是如何实现的? 提示
数据帧中上述附加位的插入或过滤是在发送控制器和接收控制器的管理下完成的,即在门电路和定时器T1的配合下,发送控制器使待发送的并行数据转为串行数据,并自动添加上附加位信息;在接收移位寄存器和定时器T1的配合下,接收控制器使来自RXD引脚的串行数据转为并行数据,并自动过滤掉附加位信息。
(8)在中断允许的前提下,一帧异步串行数据被发送或接收完成后,哪些位寄存器将由硬件自动置1? 提示
发送或接收完成后,串行发送中断请求标志位TI和串行接收中断请求标志位RI都可由硬件自动置1。
(9)在单片机晶振频率一定后,异步串行通信波特率大小取决于哪些参数? 提示
晶振频率一定后,波特率的大小取决于定时器T1的工作方式n和计数初值a,也取决于波特率选择位SMOD的值。
(10)异步串行通信中断响应后,中断请求标志的撤销需要采用什么方法? 提示
中断响应后,中断请求标志TI和RI不能由硬件自动清0,需要通过软件方法使TI和RI清0。
(11)51单片机串行工作方式0为何不是严格意义上的异步串行通信?其主要用途是什么? 提示
方式0是为了配合外部移位寄存器的串并转换用途设计的一种特殊串行通信方式。通信过程中收发双方使用同一时钟信号(fosc / 12)控制通信节奏,故被传送的数据帧中只有8位数据,没有异步串行通信中为保证严格时序(收发双方时钟是独立的)而添加的附加位信息。方式0又称为同步移位寄存器方式,主要用于扩展单片机I/O接口。
(12)集成芯片74LS164的移位原理是什么?利用其扩展并行输出口的软硬件做法是什么? 提示
移位原理是:每出现一次时钟脉冲信号,前级D触发器锁存的电平便会被后级D触发器锁存起来。如此经过8个时钟脉冲后,最先接收到的数据位将被最高位D触发器锁存,并到达Q7端。其次接收到的数据位将被次高位D触发器锁存,并到达Q6端,以此类推。最终,逐位输入的串行数据将同时出现在Q0~Q7端,从而实现了串行数据转为并行数据的功能。 用于扩展并行输出口时,将74LS164的A与B端并接在单片机RXD端(串行方式0的数据发送/接收端);CP端接在单片机TXD端(串行方式0的时钟输出端);Q0~Q7端接发光二极管并行电路。编程初始化后,被发送的字节数据只需传给发送缓冲器SBUF,其余工作都将由硬件自动完成。最终74LS164的输出端得到了一组并行的转换数据,单片机也由此实现了I/O口的扩展。
(13)点对点串行通信的双方需要共同遵守哪些约定?程序初始化时需要完成哪些设置? 提示
需要遵守的约定包括:1、波特率约定;2、数据帧约定(如数据帧长度,校验方式);3、应答约定(如应答方式);4、通信电平约定(如TTL);5、接线约定(如采用TXD、RXD、GND三线式)。初始化设置包括,串口工作方式、定时器工作方式、装载计数初值、波特率加倍值、启动定时器、允许中断、允许接收等。
(14)根据实例7.3,简述点对点通信时进行奇偶校验的编程原理。 提示
编程原理:将欲发送数据的奇偶校验值送入SCON寄存器中的TB8位并连同数据一起发出。接收端接收数据时,将该数值取出放入SCON寄存器中的RB8位。待计算出接收数据的实际奇偶校验值后与RB8进行比较,即可判断收发过程是否有误
(15)51单片机主从式异步通信过程中,主机是如何与多个从机进行点对点通信的? 提示
当主机向所有从机发送地址信息时,从机收到的第9位信息都是1,所有从机都可激活中断请求标志RI。在各自的中断服务程序中,对比主机发来的地址与本机地址,若相符则使本机的SM2为0,若不相符则保持本机的SM2为1。接着主机发送数据或命令信息,各从机收到的RB8都为0,此时只有目标从机(SM2为0)可激活RI,转入中断服务程序,接收主机的数据或命令;其他从机(SM2为1)不能激活RI,所接收的数据或命令信息被丢弃,从而实现主机和从机的一对一通信。
浏览次数:

版权所有 ©中国石油大学(北京) 京公网安备110402430032号

地址:北京市昌平区府学路18号(邮编:102249)