670 likes | 872 Views
微机原理 ---- 串并行通信和接口技术. 本章要点. 串行通信的几种方式 8251A 的编程结构和功能结构 8251A 和 CPU 的信号连接以及和外设的信号连接 低档接口芯片和高档数据总线的连接 8251A 的模式寄存器、控制寄存器和状态寄存器的格式. 8251A 的初始化流程 8251A 的使用 8255A 和 CPU 的信号连接以及和外设的信号连接 8255A 的三种工作方式和设置方法 8255A 的 C 端口置 0/ 置 1. 6.1 串行接口和串行通信. 串行接口 串行通信涉及的几个问题. 6.1.1 串行通信涉及的几个问题.
E N D
本章要点 • 串行通信的几种方式 • 8251A的编程结构和功能结构 • 8251A和CPU的信号连接以及和外设的信号连接 • 低档接口芯片和高档数据总线的连接 • 8251A的模式寄存器、控制寄存器和状态寄存器的格式 微机原理串并行通信和接口技术(2)
8251A的初始化流程 8251A的使用 8255A和CPU的信号连接以及和外设的信号连接 8255A的三种工作方式和设置方法 8255A的C端口置0/置1 微机原理串并行通信和接口技术(3)
6.1串行接口和串行通信 • 串行接口 • 串行通信涉及的几个问题 微机原理串并行通信和接口技术(4)
6.1.1串行通信涉及的几个问题 • 全双工方式和半双工方式 • 同步方式和异步方式 • 传输率 微机原理串并行通信和接口技术(5)
1. 全双工方式、半双工方式和单工方式 • 全双工方式:接收和发送用不同的通路。 • 半双工方式:输入和输出使用同一通路。 • 单工方式:系统只能在一个方向传输信息。 全双工方式 微机原理串并行通信和接口技术(6) 半双工方式
2. 同步方式和异步方式 • 传输方式: • 同步通信:收发双方采用同一个时钟信号来定时。一个信息帧可含有多个字符。 • 异步通信:每个字符的前后都要用若干位作为分隔位来进行识别。一个信息帧只含一个字符。 • 同步方式和异步方式比较: • 同步方式的信息有效率高。 • 同步方式需传输时钟信号。 微机原理串并行通信和接口技术(7)
2. 同步方式和异步方式 字符 起始位 数据位 校验位 停止位 空闲位 … 1 0 1 1 1 低位 高位 0/1 0/1 0/1 0/1 • 异步串行通信格式 • 起始位——每个字符开始传送的标志,起始位采用逻辑0电平 数据位——数据位紧跟着起始位传送。由5~8个二进制位组成,低位先传送 校验位——用于校验是否传送正确;可选择奇检验、偶校验或不传送校验位 停止位——表示该字符传送结束。停止位采用逻辑1电平,可选择1、1.5或2位 空闲位——传送字符之间的逻辑1电平,表示没有进行传送 微机原理串并行通信和接口技术(8)
3.串行通信的传输率 • 数据传输速率=比特率(Bit Rate) • 每秒传输的二进制位数bps • 字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数 • 进行二进制数码传输,每位时间长度相等: 比特率=波特率(Baud Rate) 微机原理串并行通信和接口技术(9)
3. 串行通信的传输率 • 例1.异步传输过程:设每个字符对应1个起始位、7个信息位、1个奇偶校验位和1个停止位,如果波特率为1 200bps,那么,每秒钟能传输的最大字符数为1 200/10=120个。 • 例2.同步传输:用1 200bps的波特率工作,用4个同步字符作为信息帧头部,但不用奇偶校验,那么,传输100个字符所用的时间为7×(100+4)/1 200=0.606 7s,这就是说,每秒钟能传输的字符数可达到100/0.606 7=165个。 在同样的传输率下,同步传输时实际字符传输率要比异步传输时高。 微机原理串并行通信和接口技术(10)
6.1.2串行接口 微机原理串并行通信和接口技术(11)
6.2可编程串行通信接口8251A • 8251A的基本性能 • 8251A的基本工作原理 • 8251A的对外信号 • 8251A的编程 • 8251A编程举例 • 8251A的使用实例 微机原理串并行通信和接口技术(12)
6.2.1 8251A的基本性能 • 可以工作在同步或异步方式。 • 在同步方式时, • 能用5、6、7或8位代表字符 • 能自动检测同步字符 • 允许奇偶校验。 • 在异步方式下 • 能用5、6、7或8位代表字符,用1位作为奇偶校验。 • 能增加1个启动位 • 能增加1个、1.5个或2个停止位。 微机原理串并行通信和接口技术(13)
6.2.2 8251A的基本工作原理 • 8251A的功能结构 • 8251A的功能结构 • 8251A的发送和接收 微机原理串并行通信和接口技术(14)
锁存CPU输出的数据,把数据由并行变串行,从TxD引脚串行发送出去。锁存CPU输出的数据,把数据由并行变串行,从TxD引脚串行发送出去。 接收来自RxD引脚上的串行数据,并按设定的格式将其转换为并行数据,存放在I/O缓冲器的接收数据缓冲器中。 接收来自CPU的控制信号和控制字,译码后向8251A各功能部件发出有关的控制信号,因此它实际上是8251A的内部控制器 控制825lA与调制解调器之间的信息传送。 8251A的内部工作原理 微机原理串并行通信和接口技术(15)
2. 8251A的发送和接收 (1) 异步接收方式 微机原理串并行通信和接口技术(16)
2. 8251A的发送和接收 (2) 异步发送方式 微机原理串并行通信和接口技术(17)
2. 8251A的发送和接收 (3) 同步接收方式 (4) 同步发送方式 微机原理串并行通信和接口技术(18)
6.2.3 8251A的对外信号 • 8251A和CPU之间的连接信号 • 8251A与外部设备之间的连接信号 微机原理串并行通信和接口技术(20)
8251A和CPU之间的连接信号 微机原理串并行通信和接口技术(21)
2. 8251A与外部设备之间的连接信号 微机原理串并行通信和接口技术(22)
6.2.4 8251A的编程 • 8251A的初始化 • 模式寄存器的格式 • 控制寄存器的格式 • 状态寄存器的格式 微机原理串并行通信和接口技术(23)
1. 8251A的初始化 • 复位后,用奇地址写入的值送模式寄存器。 • 若为同步模式,接着往奇地址端口输出的字节为同步字符。 • 此后,除复位命令,往奇地址写入的值将送到控制寄存器,往偶地址端口写入的值送到数据输出寄存器。 • 偶地址端口:数据输入寄存器和数据输出寄存器 • 奇地址端口:状态寄存器、模式寄存器、控制寄存器和同步字符寄存器 微机原理串并行通信和接口技术(24)
8251A的初始化流程图 微机原理串并行通信和接口技术(25)
3. 8251A模式寄存器的格式 • 异步模式 微机原理串并行通信和接口技术(26)
3. 8251A模式寄存器的格式 • 同步模式 微机原理串并行通信和接口技术(27)
4. 控制寄存器的格式 微机原理串并行通信和接口技术(28)
5. 状态寄存器的格式 微机原理串并行通信和接口技术(29)
6.2.5 8251A编程举例 • 异步模式下的初始化程序举例 • 同步模式下的初始化程序举例 • 利用状态字进行编程的举例 微机原理串并行通信和接口技术(30)
1. 异步模式下的初始化程序举例 MOV AL,0FAH OUT 42H,AL ;设置模式字,为异步模式,波特率因子为16 ;用7个数据位,偶校验,2个停止位 MOV AL,37H OUT 42H,AL ;设置控制字,使发送启动、接收启动 ;并设置有关信号 微机原理串并行通信和接口技术(31)
2. 同步模式下的初始化程序举例 MOV AL,38H OUT 42H,AL ;设置模式字为同步模式 ;2个同步字符,7个数据位,偶校验 MOV AL,16H OUT 42H,AL OUT 42H,AL ;两个同步字符均为16H MOV AL,97H OUT 42H,AL ;设置控制字,并启动 微机原理串并行通信和接口技术(32)
3. 利用状态字进行编程的举例 MOV AL,0FAH OUT 42H,AL ;设置模式字,异步模式,波特率因子为16 ;7个数据位,2个停止位,偶校验 MOV AL,35H OUT 42H,AL ;设置控制字,并启动 MOV DI,0 ;变址寄存器初始化 MOV CX,80 ;共收取80个字符 BEGIN:IN AL,42H TEST AL,02H JZ BEGIN ;读状态字并测试 微机原理串并行通信和接口技术(33)
3. 利用状态字进行编程的举例 IN AL,40H ;读取字符 MOV DX,OFFSET BUFFER MOV [DX+DI],AL ;传输字符 INC DI ;修改缓冲区指针 IN AL,42H ;读取状态字 TEST AL,38H ;测试有无错误 JNZ ERROR LOOP BEGIN ;如没有错,则接收下1个字符 JMP EXIT ;如满8个字符,则结束 ERROR: CALL ERR_OUT;调用出错处理程序 EXIT: … 微机原理串并行通信和接口技术(34)
6.3.6 8251A的使用实例 下图为用8251A作为CRT接口的实际例子 微机原理串并行通信和接口技术(35)
8251A的初始化程序段 INIT: XOR AX,AX ;AX清零 MOV CX,0003 MOV DX,00DAH OUT1: CALL KKK LOOP OUT1 ;往控制端口DAH送3个0 MOV AL,40H CALL KKK ;往控制端口送40H复位 MOV AL,4EH CALL KKK ;设置模式字, 异步模式,波特率因子为16;8位数据,1位停止位 MOV AL,27H CALL KKK ;往设置命令字启动 ┆ 微机原理串并行通信和接口技术(36)
KKK:OUT DX,AL ;将数据输出到指定端口 PUSH CX MOV CX,0002 ABC:LOOP ABC ;等待输出动作完成 POP CX ;恢复CX内容 RET 微机原理串并行通信和接口技术(37)
往CRT输出一个字符的程序段 CHAROUT:MOV DX,0DAH STATE: IN AL,DX ;输入状态字 TEST AL,01 JZ STATE ;不断测试状态位 MOV DX,0D8H ;数据端口地址送DX POP AX ;AX中为要输出的字符 OUT DX,AL ;往端口中输出一个字符 微机原理串并行通信和接口技术(38)
6.3并行通信和并行接口 • 特点: • 传输速度快 • 信息率高 • 用电缆多 微机原理串并行通信和接口技术(39)
6.4 可编程并行通信接口8255A • 可编程 • 通过软件工作方式 • 连接外部设备时,通常不需外部电路 微机原理串并行通信和接口技术(41)
6.4.1 8255A的内部结构 A组 端口A A组 控制 PA0~PA7 A组 端口C 上部 数据 总线 缓冲器 内部数据线 PC4~PC7 D0~D7 B组 端口B B组 控制 读写 控制 逻辑 RD WR A0 A1 CS RESET PB0~PB7 B组 端口C 下部 内部控制线 PC0~PC3 通常使用方法: • 端口A、B作为独立的输入或者输出端口 • 端口C配合端口A、B • A组,支持工作方式0、1、2 • 常作数据端口,功能最强大 • 仅支持工作方式0,分两个4位,每位可独立操作 • A组控制高4位PC4~PC7,B组控制低4位PC0~PC3 • 可作数据、状态和控制端口 • 控制最灵活,最难掌握 • B组,支持工作方式0、1 • 常作数据端口 控制端口A和端口C的高4位的工作方式和读写操作。 控制端口B和端口C的低4位的工作方式和读写操作。 管理数据传输过程。 微机原理串并行通信和接口技术(42)
6.4.2 8255A的芯片引脚信号 1. 和外设一边相连的信号 • PA7~PA0——A组数据信号; • PB7~PB0——B组数据信号; • PC7~PC0——C组数据信号。 2. 和CPU一边相连的信号 • RESET 复位信号,高电平有效 。 • D7~D0 数据线 。 • CS# 片选信号。 • RD# 读出信号。 • WR# 写入信号。 • A1、A0 端口选择信号。 微机原理串并行通信和接口技术(43)
6.4.3 8255A的控制字 • 控制字分为两类: • 各端口的方式选择控制字; • C端口按位置1/置0控制字。 微机原理串并行通信和接口技术(44)
1. 方式选择控制字 • 有三种基本工作方式: • 方式0——基本的输入输出方式 • 方式1——选通的输入输出方式 • 方式2——双向传输方式 • 只有端口A能工作在方式2 • 同一组的两端口可分别工作在输入和输出方式 微机原理串并行通信和接口技术(45)
2. 端口C置1/置0控制字 置1/置0控制字注意: • 必须写入控制口 • D0位决定置1或置0 • D3、D2、D1位决定了对哪一位操作 • D7位必须为0 微机原理串并行通信和接口技术(46)
6.4.4 8255A的工作方式 • 方式0 • 方式1 • 方式2 微机原理串并行通信和接口技术(47)
1.方式0 (1) 方式0的工作特点 • 端口可作为输入口,也可作为输出口。 • 可以有16种不同的组合 (2) 方式0的输入输出时序 • 在方式0读取数据条件: • 先发出地址信号 • 数据要领先于读信号 • 输入时序要求: • 读出期间地址保持有效 • 数据必须保持到结束 • 读脉冲宽度至少为300ns 微机原理串并行通信和接口技术(48)
1.方式0 (3) 方式0的使用场合 同步传送 查询式传送 微机原理串并行通信和接口技术(49)
1.方式0 方式0输出时序要求: • 地址信号必须提前有效且滞后消失 • 写脉冲宽度至少有400ns • 数据必须提前并保持tWD时间 方式0的输出时序 微机原理串并行通信和接口技术(50)