微型计算机技术及应用第6章_第1页
微型计算机技术及应用第6章_第2页
微型计算机技术及应用第6章_第3页
微型计算机技术及应用第6章_第4页
微型计算机技术及应用第6章_第5页
已阅读5页,还剩108页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第6章章 串并行通信和接口技术串并行通信和接口技术本章要点本章要点串行通信的几种方式8251A的编程结构和功能结构8251A和CPU的信号连接以及和外设的信号连接低档接口芯片和高档数据总线的连接8251A的模式寄存器、控制寄存器和状态寄存器的格式8251A的初始化流程8251A的使用8255A和CPU的信号连接以及和外设的信号连接8255A的三种工作方式和设置方法8255A的C端口置0/置1 教学建议教学建议以8251A和8255A的使用为目标。6.1接口的功能以及在系统中的连接接口的功能以及在系统中的连接 接口的功能 接口与系统的连接 6.1.1接口的功能接口的功能 基本功能:在系统和I/

2、O设备之间传输信号提供缓冲作用 1. 寻址功能寻址功能 识别区别存储器和I/O的信号 识别片选信号 选择接口中的寄存器 2. 输入输出功能输入输出功能 根据读写信号判断传输方向 传输数据、控制和状态信息3. 数据转换功能数据转换功能 把CPU的并行数据转换成一些外设所需的串行数据;把外设的串行信息转换成并行数据送往CPU。 4. 联络功能联络功能 当数据传送完后,能通知CPU。 5. 中断管理功能中断管理功能 发送中断请求和接收中断响应 发送中断类型号 优先级管理功能。 6. 复位功能复位功能 接收复位信号7. 可编程功能可编程功能 可以用软件使其工作于不同的方式 用软件来设置控制信号 8.

3、错误检测功能错误检测功能 当前多数可编程接口芯片能检测下列两类错误: 传输错误 覆盖错误 6.1.2接口与系统的连接接口与系统的连接 接口可分为两个部分 和I/O设备相连和系统总线相连 和外部连接典型的I/O接口6.2串行接口和串行通信串行接口和串行通信 串行接口 串行通信涉及的几个问题 6.2.1串行接口串行接口 串行接口部件有4个主要寄存器,即:控制寄存器状态寄存器数据输入寄存器数据输出寄存器。6.2.2串行通信涉及的几个问题串行通信涉及的几个问题 全双工方式和半双工方式 同步方式和异步方式 传输率 1. 全双工方式和半双工方式全双工方式和半双工方式 全双工方式:接收和发送用不同的通路。

4、半双工方式:输入和输出使用同一通路。全双工方式和半双工方式(a) 全双工方式(b) 半双工方式 2. 同步方式和异步方式同步方式和异步方式 传输方式:同步通信异步通信同步方式和异步方式比较:同步方式的信息有效率高。同步方式需传输时钟信号。标准的异步通信数据格式 3. 串行通信的传输率串行通信的传输率 例、异步传输过程:设每个字符对应1个起始位、7个信息位、1个奇偶校验位和1个停止位,如果波特率为1 200bps,那么,每秒钟能传输的最大字符数为1 200/10120个。 例二.同步传输:用1 200bps的波特率工作,用4个同步字符作为信息帧头部,但不用奇偶校验,那么,传输100个字符所用的时

5、间为7(100+4)/1 2000.606 7s,这就是说,每秒钟能传输的字符数可达到100/0.606 7165个。可见,在同样的传输率下,同步传输时实际字符传输率要比异步传输时高。 6.3可编程串行通信接口可编程串行通信接口8251A 8251A的基本性能 8251A的基本工作原理 8251A的对外信号 8251A的编程 8251A编程举例 8251A的使用实例 6.3.1 8251A的基本性能的基本性能 可以工作在同步或异步方式。 在同步方式时,能用5、6、7或8位代表字符能自动检测同步字符允许奇偶校验。在异步方式下能用5、6、7或8位代表字符,用1位作为奇偶校验。能增加1个启动位能增加

6、1个、1.5个或2个停止位。 6.3.2 8251A的基本工作原理的基本工作原理 8251A的编程结构 8251A的功能结构 8251A的发送和接收 1. 8251A的编程结构的编程结构 具体编程结构和外部连接如下图28251A的功能结构的功能结构 接收控制电路的功能: 复位后寻找启动位。消除假启动干扰。对接收到的信息进行奇偶校验。检测停止位。 发送控制电路功能:在异步方式下,为数据加上起始位、校验位和停止位。在同步方式下,插入同步字符和校验位。 读写控制逻辑电路功能:接收WR,写入数据和控制字接收RD,读取数据或状态字接收C/D。接收CLK,完成内部定时。接收RESET。8251A的内部工作

7、原理 3. 8251A的发送和接收的发送和接收 (1) 异步接收方式 (2) 异步发送方式下图为8251A工作在异步方式时的数据传输格式 (3) 同步接收方式 (4) 同步发送方式 下图为8251A工作在同步方式时的数据传输格式 6.3.3 8251A的对外信号的对外信号 8251A和CPU之间的连接信号 8251A与外部设备之间的连接信号 1. 8251A和和CPU之间的连接信号之间的连接信号 (1) 片选信号 CS#为低电平时,8251A被选中(2) 数据信号 D7D0与系统的数据总线相连 (3) 读写控制信号 RD#为读信号。WR#为写信号。C/D#为控制/数据信号。 (4) 收发联络信

8、号TXRDY为发送器准备好信号TXE 发送器空信号RXRDY 接收器准备好信号SYNDET 同步检测信号2. 8251A与外部设备之间的连接信号与外部设备之间的连接信号 (1) 收发联络信号 DTR# 数据终端准备好信号 DSR# 数据设备准备好信号 RTS# 请求发送信号 CTS# 清除请求发送信号 (2) 数据信号 TXD 发送器数据信号端 RXD 接收器数据信号端 6.3.4 8251A的编程的编程 8位接口和16位数据总线的连接问题 8251A的初始化 模式寄存器的格式 控制寄存器的格式 状态寄存器的格式 1. 关于关于8位接口芯片和位接口芯片和16位数据总线的连接问题位数据总线的连接

9、问题 解决方法:硬件上,将总线的A1与芯片的A0相连软件上,用连续的偶地址代替奇偶地址2. 8251A的初始化的初始化 8251A初始化的约定 :复位后,用奇地址写入的值送模式寄存器。 若为同步模式,接着往奇地址端口输出的字节为同步字符。此后,除复位命令,往奇地址写入的值将送到控制寄存器,往偶地址端口写入的值送到数据输出寄存器。 8251A的初始化流程图 3. 模式寄存器的格式模式寄存器的格式 下图为8251A模式寄存器的格式(a) 异步模式;(b) 同步模式 4. 控制寄存器的格式控制寄存器的格式 5. 状态寄存器的格式状态寄存器的格式 6.3.5 8251A编程举例编程举例 异步模式下的初

10、始化程序举例 同步模式下的初始化程序举例 利用状态字进行编程的举例 1. 异步模式下的初始化程序举例异步模式下的初始化程序举例 MOV AL,0FAHOUT 42H,AL;设置模式字,为异步模式; 波特率因子为16;用7个数 据位,偶校验,2个停止位MOVAL,37HOUT42H,AL;设置控制字,使发送启动、 接收启动,并设置有关信号 2. 同步模式下的初始化程序举例同步模式下的初始化程序举例 MOVAL,38HOUT42H,AL;设置模式字为同步模式,2 个同步字符,7个数据位, 偶校验MOVAL,16HOUT42H,ALOUT42H,AL;两个同步字符均为16HMOV AL,97HOUT

11、 42H,AL;设置控制字,并启动3. 利用状态字进行编程的举例利用状态字进行编程的举例 MOV AL,0FAHOUT 42H,AL;设置模式字,异步模式,波 特率因子为16,7个数据 位,2个停止位,偶校验MOV AL,35HOUT 42H,AL;设置控制字,并启动 MOV DI,0 ;变址寄存器初始化 MOV CX,80 ;共收取80个字符BEGIN: IN AL,42H TEST AL,02H JZ BEGIN;读状态字并测试IN AL,40H ;读取字符MOV DX,OFFSET BUFFERMOV DX+DI,AL ;传输字符INC DI ;修改缓冲区指针IN AL,42H ;读取状

12、态字TEST AL,38H ;测试有无错误 JNZ ERROR LOOP BEGIN ;如没有错,则接收 下1个字符 JMP EXIT ;如满8个字符,则结束ERROR: CALL ERR_OUT;调用出错处理程序EXIT: 6.3.6 8251A的使用实例的使用实例 下图为用8251A作为CRT接口的实际例子 8251A的初始化程序段的初始化程序段 INIT: XOR AX,AX;AX清零MOV CX,0003MOV DX,00DAHOUT1:CALL KKKLOOP OUT1;往控制端口DAH送3个0 MOV AL,40H CALL KKK ;往控制端口送40H复位MOV AL,4EH C

13、ALL KKK ;设置模式字, 异步模式, 波特率因子为16,8位数据, 1位停止位 MOVAL,27H CALLKKK;往设置命令字启动 .KKK:OUT DX,AL;将数据输出到指定端口 PUSH CX MOV CX,0002 ABC:LOOP ABC ;等待输出动作完成 POP CX ;恢复CX内容RET往往CRT输出一个字符的程序段输出一个字符的程序段 CHAROUT: MOV DX,0DAHSTATE:IN AL,DX;输入状态字 TEST AL,01 JZ STATE;不断测试状态位MOV DX,0D8H ;数据端口地址送DXPOPAX;AX中为要输出的字符OUTDX,AL;往端口

14、中输出一个字符6.4并行通信和并行接口并行通信和并行接口 特点:传输速度快信息率高用电缆多下图为典型的并行接口和外设连接的示意图 6.5 可编程并行通信接口可编程并行通信接口8255A 可编程通过软件工作方式连接外部设备时,通常不需外部电路 6.5.1 8255A的内部结构的内部结构 8255A的内部结构图1. 数据端口数据端口A、B、C (1)端口A对应1个8位数据输入锁存器1个8位输出锁存器/缓冲器。(2)端口B对应1个8位数据输入缓冲器1个8位输出锁存器/缓冲器。 (3)端口C对应1个8位数据输入缓冲器1个8位输出锁存器/缓冲器。 通常使用方法:端口A、B作为独立的输入或者输出端口端口C

15、配合端口A、B 2. A组控制和组控制和B组控制组控制 (1)A组控制电路 控制端口A和端口C的高4位的工作方式和读写操作。(2)B组控制电路 控制端口B和端口C的低4位的工作方式和读写操作。 3. 读写控制逻辑电路读写控制逻辑电路 功能: 管理数据传输过程。4. 数据总线缓冲器数据总线缓冲器 功能:通过它与系统数据总线相连。 6.5.2 8255A的芯片引脚信号的芯片引脚信号 1. 和外设一边相连的信号和外设一边相连的信号 PA7PA0A组数据信号; PB7PB0B组数据信号; PC7PC0C组数据信号。2. 和和CPU一边相连的信号一边相连的信号 RESET复位信号,高电平有效 。D7D0

16、 数据线 。CS# 片选信号。RD# 读出信号。WR# 写入信号。A1、A0端口选择信号。 6.5.3 8255A的控制字的控制字 控制字分为两类:各端口的方式选择控制字;C端口按位置1/置0控制字。 1. 方式选择控制字方式选择控制字 8255A方式选择注意:有三种基本工作方式: 方式0基本的输入输出方式 方式1选通的输入输出方式 方式2双向传输方式 只有端口A能工作在方式2 同一组的两端口可分别工作在输入和输出方式 2. 端口端口C置置1/置置0控制字控制字 置1/置0控制字注意:必须写入控制口 D0位决定置1或置0 D3、D2、D1位决定了对哪一位操作 D7位必须为0 6.5.4 825

17、5A的工作方式的工作方式 方式0 方式1方式2方式方式0(1) 方式0的工作特点 端口可作为输入口,也可作为输出口。可以有16种不同的组合 (2) 方式0的输入输出时序 在方式0读取数据条件: 先发出地址信号数据要领先于读信号 输入时序要求:读出期间地址保持有效 数据必须保持到结束 读脉冲宽度至少为300ns 方式0输出时序要求:地址信号必须提前有效且滞后消失 写脉冲宽度至少有400ns 数据必须提前并保持tWD时间 方式0的输出时序(3) 方式0的使用场合 同步传送 查询式传送 2. 方式方式1 方式1的特点端口A、B可分别工作在方式1。端口C配合方式1(2) 方式1输入时序 下图是端口A、

18、B工作于方式1输入时,各信号的示意图 上图控制信号说明: STB# 选通信号IBF 缓冲器满信号 INTR 送往CPU的中断请求信号INTE 中断允许信号下图为方式1的输入时序 (3) 方式1输出时序 OBF# 输出缓冲器满信号ACK# 外设响应信号INTR 中断请求信号INTE 中断允许信号 方式1时输出端口对应的控制信号和状态信号 方式1的输出时序 3. 方式方式2 (1) 方式2的特点 只适用于端口A。端口C用5个数位提供控制和状态信号。 (2) 方式2信号 INTRA 中断请求信号 STBA# 选通信号IBFA 状态信息 OBFA# 输出缓冲器满信号 ACKA# 对OBFA的响应信号 INTE1 中断允许信号 INTE2 中断允许信号 方式2的控制信号 (3)方式2的时序 (4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论