slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
? ? ?????????? PowerPoint Presentation
Download Presentation
? ? ??????????

Loading in 2 Seconds...

play fullscreen
1 / 100

? ? ?????????? - PowerPoint PPT Presentation


  • 129 Views
  • Uploaded on

第 章 串并行通信与接口技术. 内容 串行通信 8251A 并行通信 8255. 串行通信与接口技术. 串行接口与通信的基本概念 串行通信控制器8251 A 原理和编程 16550、16450 及兼容接口. 计算机中的串行接口. CPU. 总线 (AB, DB, CB). 串行通信控制器(8251 A). 存储器. 收发器. 机械接口(插座). 串行通信与并行通信. 什么是串行通信 串行端口、 SATA 硬盘 什么是并行通信 打印机、 PATA 硬盘 问题? 串行通信和并行通信的速度比较. 5.1 串行通信的基本概念. 串行通信的特点:

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '? ? ??????????' - jenis


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1
第 章 串并行通信与接口技术
  • 内容
  • 串行通信 8251A
  • 并行通信 8255

97

slide2
串行通信与接口技术
  • 串行接口与通信的基本概念
  • 串行通信控制器8251A原理和编程
    • 16550、16450 及兼容接口

97

slide3
计算机中的串行接口

CPU

总线(AB, DB, CB)

串行通信控制器(8251A)

存储器

收发器

机械接口(插座)

97

slide4
串行通信与并行通信
  • 什么是串行通信
    • 串行端口、SATA硬盘
  • 什么是并行通信
    • 打印机、PATA硬盘
  • 问题?
    • 串行通信和并行通信的速度比较

97

slide5
5.1 串行通信的基本概念
  • 串行通信的特点:

数据在单条1位宽的传输线上按时间先后一位一位地传送;

  • 优点:节省传输线;主要适用于长距离的通信中。
  • 缺点:同等条件下(位速率相同时)数据传输率较低。

97

slide6
2.串行通信设计的常用术语

设备A

发送器

设备B

接收器

Data flow

  • 单工、半双工和全双工

(1)单工(Simplex)

特点:仅能进行一个方向的数据传送

例子:电台、mouse

97

slide7

设备A

发送器/

接收器

设备B

接收器/

发送器

Data flow

(2)半双工(Half Duplex)

特点:数据可以在两个方向上进行传送,但是这种传送绝不能同时进行。【双向,但不同时】

例子:对讲机

97

slide8

设备A

发送器/

接收器

设备B

接收器/

发送器

(3)全双工(Full Duplex)

特点:能够在两个方向同时进行数据传送。

例子:电话,RS232

97

slide9
2.概念:数据传输率
  • 每秒传输的二进制位数,单位为bps(bit per second )也称比特率。
  • 波特率―――每秒传输的“符号”(也称离散状态)的个数。
  • 【例如,每秒传送1个符号,则波特率为1波特】
    • 标准 波特率系列:50,75,110,150,300,600,1200,……
  • 在计算机中,一个“符号”的含义为高、低两种电平,分别代表逻辑值“1”和“0”,所以每个符号的信息量为1比特,此时波特率与比特率刚好一致。
  • 但在其他一些场合(例如通信中采用的“相一幅”复合调制技术一个“符号”的信息含量就不是一个比特,此时,波特率就不等于比特率。
  • 本书-二进制传输

97

slide10
3.发送时钟和接收时钟

CLK(主时钟)

数据输入寄存器

系统总线

(串行数据输入)

输入移位寄存器

输入移位脉冲

÷1,÷16,÷32

接收时钟

数据输出寄存器

输出移位寄存器

(串行数据输出)

÷1,÷16,÷32

输出移位脉冲

发送时钟

97

slide11
输入移位寄存器

并行数据

移位寄存器(8bit)

串行数据输入

移位时钟

串入-并出

97

slide12
输出移位寄存器

并行数据输出

移位寄存器(8bit)

串行数据输出

移位时钟

并入-串出

97

slide13
4.概念:波特率因子
  • F(时钟频率)=波特率因子*波特率
  • 波特率因子:数据传输率(波特率)与时钟频率之间的比例系数
  • 给定时钟频率,选择不同的波特率因子可得到不同的波特率。
  • 例如:f = 19.2 kHz,若选波特率因子为16,则波特率为1200 bps。
  • 若选定波特率因子和波特率,则相应的确定了对时钟频率的要求。
  • 1200*16=19200(时钟频率)→若外部时钟电路的频率F=1Mhz,需用8253分频,试计算分频系数(8253的计数初值)=?
  • 计数初值=时钟频率/(波特率*波特率因子)

97

slide14
一种串行通信时钟方案

8251

外部的

时钟电路

CLK

8253 OUT

1MHz

19.2KHz

÷1,÷16,…

N分频

移位脉冲

97

slide15
6.同步方式和异步方式

第n+1个字符

停止位或空闲位

第n个字符

空闲位

低位

高位

11…1

1/0

0

1/0

0

1… 1

5-8位数据位

起始位

奇偶校验

  • (1)异步方式(Asynchronous):也称“起止同步式”。
    • 串行异步传输数据格式:
    • 工作特点:1-5

97

slide16
异步通信的效率
  • 假设传输2048位,8位数据位,1个起始位,1个停止位
  • 共传输2048/8×10=2560bit
  • 传输效率=2048/2560=80%(最大)

97

slide17

(2)同步方式(Synchronous)

  • 串行同步通信信息格式
  • 同步方式的工作特点:(1)-(5),

同步字符(SYN1)

同步字符(SYN2)

数据(DATA)

8251A的同步方式

97

slide18

*同步通信的效率(协议开销)

  • 例:SDLC/HDLC帧格式:
  • 假定数据长度为2048位,
        • 通信效率为:2048/(2048+48)=97%
    • 协议开销仅为3%
  • 一般公式:SDLC/HDLC协议开销=1.0-N/(N+48),其中N为发送数据的比特数。

标志

01111110

地址

8位

控制

8位

数据场

CRC

8位

CRC

8位

标志

01111110

97

slide19
同步通信与异步通信效率比较
  • 同步通信高于异步通信
  • 计算机网络使用同步通信

97

slide20
7.差错校验

奇偶校验(Parity Check )

CRC校验(Cyclic Redundancy Check )

97

slide21
5.2 串行通信接口标准
  • EIA RS—232C,1969年,适合于DTE和DCE之间相互连接与通信的串行通信规程。(1987年11月,经修改正式命名为RS—232D)
  • DTE-Data Terminal Equipment
  • DCE-Data Communication Equipment。
  • 【Data Circuit-terminating Equipment】
  • PSTN-Public Switched Telephone Network

97

slide22
机械接口
  • DB-25连接器 国际标准ISO 2113 【EIA RS-232D为ISO 2110】
  • EIA规定:插座(female)应装在DCE上;插头(male)应插在DTE上。

97

slide23
电路功能特性
  • 25个功能引脚仅定义了22个,22个信号分成两个信道组——主信道组(第一信道)和辅信道组(第二信道)
  • 常用的RS-232C接口信号(表8-2)
  • 信号定时关系

97

slide24
电气信号特性

+15V

+15V

“0”

“0”

+5V

+3V

转换区

转换区

-5V

-3V

“1”

“1”

2V噪声容限

-15V

-15V

  • 采用负逻辑:+5V~+15V——逻辑0
  • -5V~-15V——逻辑1
  • RS-232C电平与TTL电平之间的转换(图8.8)
  • TTL电平→RS-232C电平:MC1488
  • RS-232C电平→TTL电平:MC1489

电平转换电路

97

rs 232c
常见的几种RS-232C电缆连接方式

全双向标准电缆

三线经济方式

具有多种“自环”的三线方式

零调制解调器(Null Modem)

*DB-9连接器

97

slide27

DB-9 and DB-25 RS-232 Pin Designations

  • The 9- and 25-Pin Connectors used by the PC’s serial ports are male connectors; the printer and video cards use female connectors.
  • 参见“Modem连线大全”P81

97

slide28

插脚号

CCITT

信号名

机壳地

101

103

104

105

106

107

102

109

108

125

1

2

3

4

5

6

7

8

20

22

发送数据

载波检测

接收数据

本 地 Modem

远 程 Modem

计 算 机

请求发送

终 端

允许发送

Modem就绪

信号地

电话线

呼叫指示

载波检测

终端就绪

呼叫指示

图3-5 V.24/RS-232C 信号连接与定时关系

a)信号线连接

97

5 3 8251 a
5.3 8251A通信控制器
  • 基本串行接口概述
  • 基本性能
  • 基本工作原理
  • 对外信号
  • 编程
  • 应用

97

5 3 0
5.3.0串行接口的基本结构与功能

第三节串行接口的基本结构与功能

典型的串行异步接口的基本结构如图8.10所示。

97

5 3 1 8251 a
5.3.1 8251A的基本性能
  • 同步0-64kbps,数据位5、6、7、8,内部自动检测同步字符
  • 异步方式0-19.2kbps,数据位5、6、7、8,奇偶校验。
  • 不提供全部RS232-C信号

97

3 8251 a
3. 8251A的发送和接收
  • 同步方式
    • (遵守RS232C的同步规范)
  • 异步方式
    • (与HDLC/SDLC不同)

97

5 3 3 8251 a
5.3.3 8251A对外信号
  • 8251A与CPU之间的连接
  • 8251A与外设之间的连接

97

1 8251 a cpu
1.8251A与CPU之间的连接
  • CS*
  • D7-D0
  • RD*
  • WR*
  • C/D*
  • TxRDY
  • TxE
  • SYNDET

97

2 8251 a
2. 8251A与外设之间的信号
  • DTR*
  • DSR*
  • RTS*
  • CTS*
  • TXD
  • RXD

97

5 3 4 8251 a
5.3.4 8251A的编程
  • 内容
    • 8位接口芯片与16位数据总线的连接
    • 8251A的初始化
    • 8251A的寄存器
      • 模式寄存器
      • 控制寄存器
      • 状态寄存器

97

2 8251 a1
2、8251A的初始化
  • 复位
  • 设置模式寄存器
    • 通信速率
    • 工作方式
      • 同步(同步字符及个数)
      • 异步(起始位、停止位、数据位等)
  • 设置控制寄存器
    • 控制收发

97

slide44
初始化约定
  • 可写的寄存器(4个)
    • 模式寄存器
    • 同步字符寄存器2个
    • 控制寄存器
  • C/D*=1时选中模式/控制端口

97

slide46
4. 控制寄存器格式

操作命令控制字直接让8251A实现某种操作或进入规定的工作状态,它只有在设定了方式选择控制字后,才能由CPU写入。

97

slide47
5.状态寄存器

CPU可在8251A工作过程中利用输入指令(IN指令)读取当前8251A的状态字,从而可以检测接口和数据传输的工作状态。

97

5 3 5 8251 a
5.3.5 8251A应用编程举例

图6.11 8251A和调制解调器的连接

(a) 异步模式; (b) 同步模式

97

slide49
1.异步方式初始化

MOV DX,52H

MOV AL,0FAH

OUT DX,AL

MOV AL,37H

OUT DX,AL

异步方式;波特率因子16;7个数据位;偶校验;2个停止位

设置控制字,发送启动。接收启动,并设置有关信号

97

slide50
异步方式发送字符

mov dx,52h ;状态端口

abc: in al,dx

test al,01h; 测试输出缓冲区是否空

jnz abc

mov dx,50h; 数据端口

mov al, xxh

out dx,al ;发送字节

97

slide51
2.同步方式初始化

MOV DX 52H

MOV AL,38H

OUT DX,AL; 模式

MOV AL,16H;2个同步字符

OUT DX,AL

OUT DX,AL

MOV AL,97H;控制字

OUT DX,AL

同步方式;2个同步字符;7数据位;偶校验

两个同步字符均为16H

两个同步字符不同,如何实现?

设置控制字,启动发送、接收,并设置其他信号

97

3 8251 a1
3.8251A的复位
  • 硬件复位
    • reset引脚
  • 向控制口送3个0和1个40H
    • 程序清单
  • 一般地,进行初始化之前,先进行复位(软件复位)

97

slide53
4.利用状态字进行编程举例

;初始化8251A,测试状态字。输入80个字符并存储到缓冲区BUFFER中。

;状态/控制端口42H,数据端口40H

MOV AL,0FAH; 设置模式字,异步方式,波特率因子16,7数据位,2停止位,偶校验

OUT 42H,AL

MOV AL,35H; 接收器启动,并清除出错标志

OUT 42H,AL

MOV DI,0; 变址寄存器初始化

MOV CX,80; 接收80个字符

BEGIN: IN AL,42H

TEST AL,02H; 测试RxRDY

JZ BEGIN

IN AL,40H; 读取收到的字符

MOV DX,OFFSET BUFFER

MOV [DX+DI],AL ;存储到缓冲区中

INC DI;修改缓冲区指针

IN AL,42H

TEST AL,38H; 测试是否有帧格式错、奇/偶校验错、覆盖错等

JNZ ERROR ;如有,跳转到出错处理

LOOP BEGIN;输入不满80个字符,继续接收

JMP EXIT;输入满80个字符,结束

ERROR: CALL ERR_OUT ;出错处理子程序

EXIT: …-

97

8251 a1
8251A使用例

图6.12 用8251A作为CRT接口的实际例子

97

slide56
初始化程序段

INIT: XOR AX,AX

MOV CX,0003

MOV DX,00DAH;控制口

OUT1: CALL KKK

LOOP OUT1 ;向控制口送3个0

MOV AL,40H

CALL KKK ;向控制口送40H,复位8251A

MOV AL,4EH;模式,异步方式、波特率因子16、8数据位、1停止位

CALL KKK

MOV AL,27H ;命令字,启动发送和接收

CALL KKK

……

KKK: OUT DX,AL

PUSH CX

MOV CX,0002

ABC: LOOP ABC

POP CX

RET

97

slide57
输出一个字符程序段

CHAROUT:MOV DX,0DAH

STATE: IN AL,DX;读入状态字

TEST AL,01;TxRDY是否为1

JZ STATE

MOV DX,0D8H;数据端口

POP AX;要输出的字符事先放在堆栈中

OUT DX,AL;向数据端口输出1个字符

97

slide58
串行通信小结
  • 串行通信的基本概念和术语
  • 串行接口的组成和基本工作原理
  • 8251A
    • 硬件(电路)
    • 软件(编程)

97

slide59
6.3并行通信与并行接口
  • 并行接口
  • 8255A
  • 其它并行接口方式

97

slide60

CPU

总线

并行接口(8255A)

存储器

外部设备

97

slide61
并行通信特点

并行通信的主要特点:

数据在多条并行传输线上各位同时传送;和串行传送相比,在同样的时钟速率下,并行传送的信息传输率较高;但所用信号线数量较多。

适用于信息传输率要求较高,而传输距离较短的场合。

97

6 4 1 8255 a
6.4.1 8255A内部结构

1.数据端口A,B,C

2.A组控制、B组控制

3.读写控制逻辑电路

4.数据总线缓冲器

图6.17 8255A的内部结构框图

97

6 4 2
6.4.2引脚信号
  • 外设边
    • PA0-PA7
    • PB0-PB7
    • PC0-PC7
  • CPU边
    • RESET
    • D0-D7
    • CS*
    • RD*, WR*
    • A1, A0

97

5 5 3 8255 a
5.5.3 8255A控制字

两大类方式

  • 方式选择控制字(D7=1) (C配合)
    • 方式0(A,B)
    • 方式1(A,B)
    • 方式2(A)

2. C端口按位置位/复位控制字(D7=0)

97

slide71

MOV DX,00E6H

MOV AL,83H

OUT DX,AL

97

slide72

对J2进行方式设置

MOV DX,00EEH

MOV AL,83H

OUT DX,AL

97

slide73
2 端口C置位/复位控制字

D7=0

MOV DX, ctrl_port

MOV AL,0xxx0001B

;PC0置1

97

5 5 4 8255 a
5.5.4 8255A工作方式

3种工作方式

各个端口配合

  • 1、方式0:基本输入输出方式
    • 各个端口独立操作
    • 分别可作为输入或输出
  • 应用
    • 无条件传送
      • 驱动数码管,LED
      • 连接按键
    • 查询式传送
      • 一个端口作数据端口
      • 另一个端口作状态端口

97

slide75
方式0编程

;端口A输出

… …;8255A初始化

mov dx, porta

mov al,data

out dx,al

… …

; 端口A输入

… …;8255A初始化

mov dx, porta

in al,dx

… …

97

slide80
方式1:选通输入/输出方式
  • 特点说明
    • 端口A,B作输入/输出
    • 端口C作为应答信号(配合)
  • 应用
    • 计算机与外部设备之间通过程序查询方式工作
    • 输入或输出

97

slide81

port A / B

STB*

INTR

IBF*

利用方式1输入

8255A

外部设备

CPU

DB

1.外部设备通过STB*把数据送到8255的端口A/B

2.IBF*有效,指示输入缓冲区满

3.8255向CPU发出中断信号

4.CPU通过输入指令读取数据

5.IBF*变成无效

97

slide82

OBF*

DB

WR*

CS*,A0,A1

ACK*

INTR

利用方式1输出

8255A

外部设备

CPU

1.CPU向8255的端口A/B输出

2.OBF*指示数据有效

3.设备取走数据,并发出ACK*

97

4.8255向CPU发出中断

slide83

PC4

PC2

97

slide84

PC2

PC6

97

slide87
方式2
  • 特点
    • 双向传输
    • 适用于端口A
    • 端口C用作联络信号
    • PC0~2作I/O
    • 端口B工作于方式0,1
  • 应用
    • 计算机与外设之间进行双向通信

97

slide88
3.方式2

INTE1:PC6

INTE2:PC4

97

slide90
方式2与其它方式的组合
  • A端口工作于方式2,
    • B端口可工作于方式0,1
    • B端口可工作于输入/输出
  • 共四种组合方式
    • B工作于方式0输入
    • B工作于方式0输出
    • B工作于方式1输入
    • B工作于方式1输出

97

slide91

方式2和其他方式的组合(例子一)

图6.28 A端口工作于方式2,B端口工作于方式0输入情况

97

slide92

方式2和方式0输出的组合(例子二)

图6.29 A端口工作于方式2,B端口工作于方式0输出情况

97

slide93

方式2和方式1输出的组合(例子四)

图6.31 A端口工作于方式2,B端口工作于方式1输出情况

97

5 5 5 8255 a
5.5.5 8255A应用举例

图6.32 8255A作为打印机接口的示意图

例1:工作于方式0

读懂P233

97

8255a
8255A工作于方式0的例子

PP: MOV AL,81H

OUT 0D6H,AL; A,B,C方式0,A输出,PC7..4输出,PC3..0输入

MOV AL,0DH

OUT 0D6H,AL;PC6(STB*)为1

LPST: IN AL,0D4H;读取PC2(busy)

AND AL,04H

JNZLPST; 忙,继续查询

MOV AL,CL

OUT 0D0H,AL; 输出字符到A端口

MOV AL,0CH

OUT 0D6H,AL; STB*=0

INCAL

OUT 0D6H, AL;STB*=1 ,产生选通信号

97

slide96
主程序
  • 中断服务程序
  • 填写中断向量

图6.33 8255A作为中断方式打印机接口的示意图

端口地址

A: 00C0H B:00C2H

C: 00C4H D:00C6H

97

slide97

00

20

00

10

2CH

中断类型号0BH

中断向量:2CH,2DH,2EH,2FH

打印中断服务程序入口地址

1000H:2000H

中断

服务

程序

1000H:2000H

主程序

其它地址

97

slide98
主程序

MAIN:MOV AL,0A0H

OUT 0C6H,AL;设置控制字

MOV AL,01

OUT 0C6H,AL;STB*无效

XOR AX,AX;填写中断向量

MOV DS,AX

MOV AX,2000H

MOV WORD PTR 〔002CH〕,AX

MOV AX,1000H

MOV WORD PTR 〔002EH〕,AX

MOV AL,0DH;PC6=1,允许8255A中断

OUT 0C6H,AL

STI; 开放中断

97

slide99
中断服务程序

TINTR:

MOV AL,〔DI〕;打印字符缓冲区指针

OUT 0C0H,AL

MOV AL,00; 产生选通信号

OUT 0C6H,AL; PC0=0

INC AL

OUT 0C6H,AL; PC0=1

IRET

97

slide100
本章小结
  • 并行通信技术和并行接口
  • 并行接口8255A的工作方式
    • 方式0,1,2的意义和原理

97