内容发布更新时间 : 2024/12/22 9:16:34星期一 下面是文章的全部内容请认真阅读。
同步通信是指不仅字符内部位与位之间的传送是同步的,字符与字符之间的传送也是同步的。因为,同步通信是以数据块为单位进行传送的,而1个数据块包含了若干个字符,它作为1个整体,一旦传送开始,要求数据块内的每一位的传送都必须是同步的。也就是说,“同步”主要体现在数据块内字符与字符之间和字符内位与位自荐的传送都必须是同步的。
10.6 答:RS-232C总线是为了电话网络进行数据通信而制定的标准。该标准属于异步通信总线,主要用于主机与CRT或调制解调器之间的通信,以及某些多机通信的情况。RS-232C总线的逻辑电平是负逻辑,以+3~+25之间的任意电压表示逻辑“0”,以-3~-25V之间的任意电压表示逻辑“1”,在实际使用中,电平常为 12V或 15V。
10.7 答:RS-232C标准与TTL之间要进行逻辑关系(正逻辑 负逻辑)及逻辑电平(低电平/低摆幅 高电压/高摆幅)的转换。这种转换可通过专用芯片如MC1488/MC1489,MAX232/MAX233等接口电路实现。
10.8 答:RS-485是一种多发送器/多接收器的串行接口标准。RS-485采用共线电路结构,在一对平衡传输线的两端配置终端电阻,其发送器、接收器、组合收发器可刮在平衡传输线的任何位置,实现多个驱动器和多个接收器共用同一传输线的多点通信。它也是RS-232C的改进型标准,并且也是一种平衡传输方式的接口标准。因此,它的直接传输距离、传输速率以及可靠性都比单线传输方式的RS-232C标准要高得多。
10.9 答:串行通信接口电路的基本功能有 : (1)实现数据格式化; (2)进行并-串转换; (3)进行错误检验;
(4)提供符合RS-232C标准所定义的接口信号线;
(5)进行TTL与RS-232C标准的逻辑关系及逻辑电平转换; (6)进行数据传输速率控制。
10.10 答:8251A是一个通用的串行输入/输出接口芯片,可用来将CPU传送给外设的信息以串行方式向外发送,或将外设输入给CPU的信息以串行方式接收并转换为并行数据传送给CPU。其内部结构包括发送器和接收器,数据总线缓冲器,读/写控制电路,调制解调控制等几个部分。 发送器和接收器是8251与外设交换信息的通道。 发送器的工作过程是:
(1) 接收到来自CPU的数据存入发送缓冲器。
(2) 发送缓冲器存有待发送的数据后,使引脚TXRDY变为低电平,表示
发送缓冲器满。
(3) 当调制解调器作好接收数据的准备后,向8251A输入一个低电平信号,
引脚有效。
(4) 在编写初始化命令时,使操作命令控制字的TXEN位为高,让发送器
处于允许发送的状态下。
(5) 满足以上(2)、(3)、(4)条件时,若采用同步方式,发送器将
根据程序的设定自动送一个(单同步)或两个(双同步)同步字符,然后由移位寄存器从数据输出线TXD串行输出数据块;若采用异步方式,由发送控制器在其首尾加上起始位及停止位,然后从起始位开始,
使
经移位寄存器从数据输出线TXD串行输出。
(6) 待数据发送完毕,使TXENPTY有效。
(7) CPU可向8251A发送缓冲器写入下一个数据。 与发送器有关引脚信号如下:
TXD: 数据发送端,输出串行数据送往外部设备。
TXRDY: 发送器准备好信号。TXRDY=1,发送缓冲器空;TXRDY=0发送缓冲器满。当TXRDY=1、TXEN=1、CTS=0时,8251A已作好发送准备,CPU可以往8251A传输下一个数据。当用查询方式时,CPU可从状态寄存器的D0位检测这个信号,判断发送缓冲器所处状态。当用中断方式时,此信号作为中断请求信号。 TXEMPTY: 发送移位寄存器空闲信号。TXEMPTY=0,发送移位寄存器满;TXEMPTY=1,发送移位寄存器空,CPU可向8251A的发送缓冲器写入数据。在同步方式时,若CPU来不及输出新字符,则TXEMPTY=1,同时发送器在输出线上插入同步字符,以填充传送间隙。
TXC: 发送时钟信号,外部输入。对于同步方式,TXC的时钟频率应等于发送数据的波特率。对于异步方式,由软件定义的发送时钟可是发送波特率的1倍(×1)、16倍(×16)或64倍(×64)。
接收器包括接收缓冲器、接收移位寄存器及接收控制器三部分。 工作过程:
(1) 当控制命令字的“允许接收”位RXE和“准备好接收数据”位DTR有效时,接收控制器开始监视RXD线。
(2) 外设数据从RXD端逐位进入接收移位寄存器中,接收中对同步和异步两种方式采用不同的处理过程。
异步方式时,当发现RXD线上的电平由高电平变为低电平时,认为是起始位到来,然后接收器开始接收一帧信息。接收到的信息经过删除起始位和停止位,把已转换成的并行数据置入接收数据缓冲器。
同步方式时,每出现一个数据位移位寄存器就把它移一位,把移位寄存器数据与程序设定的存于同步字符寄存器中的同步字符相比较,若不相等重复上述过程,直到与同步字符相等后,则使SYNDET=1,表示已达到同步。这时在接收时钟RXC的同步下,开始接收数据。RXD线上的数据送入移位寄存器,按规定的位数将它组装成并行数据,再把它送至接收数据缓冲器中。 (3) 当接收数据缓冲器接收到由外设传送来的数据后,发出“接收准备就绪”RXRDY信号,通知CPU取走数据。 与接收器有关的引脚信号如下:
RXD: 数据接收端,接收由外设输入的串行数据。
RXRDY: 接收器准备好信号。RXRDY=1表示接收缓冲器已装有输入的数据,通知CPU取走数据。若用查询方式,可从状态寄存器D1位检测这个信号。若用中断方式,可用该信号作为中断申请信号,通知CPU输入数据。RXRDY=0表示输入缓冲器空。
SYNDET/BRKDET: 双功能检测信号,高电平有效。
对于同步方式,SYNDET是同步检测信号,该信号既可工作在输入状态也可工作在输出状态。内同步工作时,该信号为输出信号。当SYNDET=1,表示8251A已经监测到所要求的同步字符。若为双同步,此信号在传送第二个同步字符的最后一位的中间变高,表明已经达到同步。外同步工作时,该
信号为输入信号。当从SYNDET端输入一个高电平信号,接收控制电路会立即脱离对同步字符的搜索过程,开始接收数据。
对于异步方式,BRKDET为间断检出信号,用来表示RXD端处于工作状态还是接收到断缺字符。BRKDET=1表示接收到对方发来的间断码。 RXC: 接收时钟信号,输入。在同步方式时,RXC等于波特率;在异步方式时,可是波特率的1倍、16倍或64倍。
10.11 答:8251A的方式命令、工作命令和状态字的作用如下:
(1) 工作方式控制字是用来设置通信方式及该方式下的数据格式,因为
8251A支持同步和异步两种通信方式,所以工作方式控制字的各位在不同的通信方式下,其功能有所不同。
(2) 操作命令控制字是用来控制串行接口的内部复位、发送、接收、清如果是异 联络信号有效的。 、
步方式,且不使用MODEM,则工作命令字8位中,只有4个关键位需要使用。
(3) 状态控制字的作用是向CPU提供何时才能开始接收或发送1个字符,
以及接收数据中有无错误的信息。如果是异步方式,且不使用MODEM,则只使用5个关键位。
10.12 答:异步方式下,8251A的初始化内容包括按顺序先写内部命令,并根据设计要求再写工作方式控制字,最后,写操作命令控制字。这个顺序不能改变。为了提高可靠性,往往还在写内部复位命令之前,向命令口写一长串0,作为空操作。
10.13 答:初始化程序如下: MOV DX , 0C2H
MOV AL, 11001111 B ; 8位数字,不带校验,2位停止位,波特率系数为64 OUT DX , AL
MOV AL , 00010101B ; 允许发送也允许接受 OUT DX , AL
10.14 答:设8251A数据口地址为0C0H,控制口地址为0C2H。
MOV DX,0C2H
MOV AL,01111110B ;工作方式控制字 OUT DX,AL
MOV AL,14H ;写操作命令控制字 OUT DX,AL
WAIT∶IN AL,DX ;读入状态控制字 AND AL,02H
JZ WAIT ;检查RXRDY是否为1 MOV DX,0C0H
IN AL,DX ;输入数据
10.15 答:设8251A数据口地址为0C0H,控制口地址为0C2H。
MOV DX,0C2H
MOV AL,01111111B ;写工作方式控制字 OUT DX,AL
MOV AL,31H ;写操作命令控制字
除错误标志等操作以及设置
OUT DX,AL
WAIT∶ IN AL,DX
AND AL,01H ;检查TXRDY是否为1 JZ WAIT
MOV DX,0C0H
MOV AL,36H ;输出的数据送AL OUT DX,AL
10.16 答:设8251A数据口地址为0C0H,控制口地址为0C2H。
MOV DX,0C2H ;控制口地址送DX
MOV AL,01011100B ;写工作方式控制字 MOV DX,AL
MOV AL,16H ;同步字符送AL OUT DX,AL
OUT DX,AL ;输入两个同步字符 MOV AL,96H ;写操作命令控制字 OUT DX,AL
10.17 答:程序如下:
INT514: MOV DX , 04A2H ;初始化 MOV AL , 0EEH ;写工作方式控制字 OUT DX , AL
MOV AL , 15H ;写操作命令控制字 OUT DX , AL
CHKRX: MOV DX , 04A2H ;查接收状态 IN AL , DX ROR AL , 1H
ROR AL , 1H ;接收是否准备好? JNC CHKRX ;未,等待
MOV DX , 04A0H ;已,接收1个字符 IN AL , DX
NOT AL ;接收的字符求反
MOV BL , AL ;暂存接收的字符
CHKTX: MOV DX , 04A2H ;查发送状态 IN AL , DX
ROR AL , 01H ;发送是否准备好? JNC CHKTX ;未,等待
MOV DX , 04A0H ;已,发送已经求反的字符 MOV AL , BL OUT DX, AL
JMP CHKRX ;重发上述过程
习题11
11.1、什么是总线?简述微机总线的分类。
11.2、简要说明PC总线和ISA总线的区别与联系。