微型计算机技术讲稿6.docx

上传人:b****2 文档编号:1149221 上传时间:2023-04-30 格式:DOCX 页数:32 大小:55.64KB
下载 相关 举报
微型计算机技术讲稿6.docx_第1页
第1页 / 共32页
微型计算机技术讲稿6.docx_第2页
第2页 / 共32页
微型计算机技术讲稿6.docx_第3页
第3页 / 共32页
微型计算机技术讲稿6.docx_第4页
第4页 / 共32页
微型计算机技术讲稿6.docx_第5页
第5页 / 共32页
微型计算机技术讲稿6.docx_第6页
第6页 / 共32页
微型计算机技术讲稿6.docx_第7页
第7页 / 共32页
微型计算机技术讲稿6.docx_第8页
第8页 / 共32页
微型计算机技术讲稿6.docx_第9页
第9页 / 共32页
微型计算机技术讲稿6.docx_第10页
第10页 / 共32页
微型计算机技术讲稿6.docx_第11页
第11页 / 共32页
微型计算机技术讲稿6.docx_第12页
第12页 / 共32页
微型计算机技术讲稿6.docx_第13页
第13页 / 共32页
微型计算机技术讲稿6.docx_第14页
第14页 / 共32页
微型计算机技术讲稿6.docx_第15页
第15页 / 共32页
微型计算机技术讲稿6.docx_第16页
第16页 / 共32页
微型计算机技术讲稿6.docx_第17页
第17页 / 共32页
微型计算机技术讲稿6.docx_第18页
第18页 / 共32页
微型计算机技术讲稿6.docx_第19页
第19页 / 共32页
微型计算机技术讲稿6.docx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

微型计算机技术讲稿6.docx

《微型计算机技术讲稿6.docx》由会员分享,可在线阅读,更多相关《微型计算机技术讲稿6.docx(32页珍藏版)》请在冰点文库上搜索。

微型计算机技术讲稿6.docx

微型计算机技术讲稿6

第五章串并行通信和接口技术

5.1接口的功能及在系统中的连接

外设种类繁多,信号不同,速度差异很大

5.1.1接口的功能

I/O寻址、输入/输出、数据转换、通讯联络(I/O传送控制)、中断管理(优先级、提供中断类型码等)、复位、错误检测。

可编程能力,综合性功能。

I/O接口的功能是提供数据缓冲和进行I/O控制。

5.1.2接口与系统的连接

*与CPU:

数据总线—数据I/O通道、状态信息读取、控制命令写入

控制总线—控制信号联络。

如输入控制信号:

STB(选通输入)、IBF(输入缓冲器满);输出控制信号:

ACK(应答)、OBF(输出缓冲器满)

片选及端口(寄存器)地址选择—地址线连接

中断请求/应答或DMA请求/应答

*与外设:

数据通道

控制联络(握手信号)

接口寄存器选择方式:

以地址区分

以读写区分

以特征位区分

以顺序区分

5.2串行接口和串行通信

5.2.1串行接口

串行通信—数据传送逐位进行,每一位数据占有一固定的时间长度。

控制端口,数据端口,接收/发送时钟。

5.2.2串行通信有关名词

1.全双工、半双工

全双工—收发双方可同时通信,占有两条线路或两个频道等

半双工—收发分时进行。

占有一条线路

2.同步方式、异步方式

*同步方式—收发双方采用统一的时钟,发送方在发送数据之前需要先发同步字符,接收方检测到同步字符后(双方取得同步)方进行数据传送。

同步方式数据格式:

同步字符、数据、数据、数据……

在数据间隙可插入同步字符

*异步方式—收发双方不需要“同步”,不需要统一的时钟。

异步方式数据格式:

起始位-数据位(5-8位)-校验位-停止位(1、1.5或2位)、起始位-数据位(5-8位)-校验位-停止位(1、1.5或2位)……

区别:

*同步方式数据传输率高。

因为非数据信息(起始位、停止位)比例小。

同步传送时,一个信息帧包含若干个字符;

*同步传输收发双方需采用统一的时钟。

异步接收:

┎─←──────——┰←————────‍──┐高

┖→检测RxD低电平┴→1/2D处检测RxD┴→接收数据位→奇偶检测→去掉停止位

低低

同步接收:

┎─←──────——──‍───┐否

┖→接收数据→是同步字符吗—┴→接收数据位→奇偶检测

5.2.3串行通信标准

1.传输率

传输率—每秒传送数据位数。

波特率baud—单位时间内所传送的脉冲码元数。

比特率bit—单位时间内所传送的二进制码元数。

比特率≥波特率比特率=log2n*波特率

数据传输率国际标准:

110、300、600、1200、2400、4800、9600、19.2K、38.4K、57.6K等

2.RS-232C总线标准

1负逻辑

“1”---5V至-15V、“0”--+5V至+15V

TTL→RS-232CMC1488/75150

RS-232C→TTLMC1489/75154

2控制信号定义

一般:

25脚针式(电压接口、电流环接口),9脚针式(仅含电压接口)

5.3可编程串行通信接口INTEL-8251

用于串行通信的接口芯片:

USART-通用同步/异步接收/发送器如INTEL-8251

UART--通用异步接收/发送器如INTEL-8250(PC机用)

USRT--通用同步接收/发送器

5.3.1基本性能

1数据传输率同步0-64K,异步0-19.2K

2数据位5-8位/字符

3奇偶校验位奇校验、偶校验

4异步方式下,可有1、1.5、2个停止位

5.3.28251基本原理

1.8251的编程结构

编程结构:

数据端口:

数据输入缓冲+接收移位寄存器(串入并出)

数据输出缓冲+发送移位寄存器(并入串出)

RxD—接收数据,TxD—发送数据

控制端口:

控制寄存器

状态寄存器

方式寄存器

2.8251的功能结构

功能结构:

接收缓冲器--RxD、串入并出移位

接收控制电路—检测启动位(识别假启动位)、校验、形成状态位(错误、接收准备好等)

发送缓冲器—数据+附加信息位、并入串出移位、TxD

发送控制器—异步:

数据+起始位、校验位、停止位

同步:

插入同步字符,数据+校验位

数据缓冲器—提供与CPU数据总线的缓冲

读写控制—RD、WR、C/D(控制/数据端口选择)、CLK、RESET

MODEM控制—提供调制/解调器控制信号,便于与MODEM连接。

3.8251发送与接收

1异步接收

2异步发送TxEN=1(发送允许)且CTS=0(外设请求发送时),发送数据

RxD/TxD

发送格式和接收格式

3同步接收

内同步:

监测RxD,检测1-2个同步字符,检测到,SYNDET=1,输出

外同步:

外部器件检测同步字符,检测到以SYNDET=1通知8251已取得同步。

8251接收到1字符后,以RxRDY=1,表示以接收到1字符(通知CPU,有数据可用)

4同步发送

TxEN=1且CTS=0,发同步字符,然后发数据位(+奇偶校验位)

5.3.38251的信号

28脚,DIP双列直插封装

1.与CPU的接口信号18条

CS、D0-D7(数据线)、RD、WR、C/D

C/D

RD

WR

具体的操作

0

0

1

CPU从8251数据端口(输入缓冲器)输入数据

0

1

0

CPU向8251数据端口(输出缓冲器)写入数据

1

0

1

CPU从8251控制端口读入状态字

1

1

0

CPU向8251控制端口写入控制命令

其它信号:

TXRDY(发送准备好)、TXE(发送器空)、RXRDY(接收准备好)、SYNDET(同步检测信号,内同步—8251输出,外同步—8251输入)、Reset(复位输入)、CLK(时钟输入)。

2.与外设的接口信号

接收时接口信号:

DTR数据终端准备好,8251输出,通知外设8251接收器已准备好接收。

DSR数据装置准备好。

8251输入,外设通知8251其已准备好,要求打开接收逻辑。

RXC接收时钟—用于控制USART接收字符速率。

同步:

RXC=波特率,由MODEM提供;

异步:

RXC为X1、X16、X64倍,由方式控制命令选择。

RXD接收数据

发送时接口信号:

RTS请求发送,8251输出,通知外设,8251已准备好发送。

CTS清除发送,8251输入,外设通知8251其已准备好,请求8251发送数据。

TXC发送时钟,同RXC

TXD发送数据

5.3.48251编程

1.8位I/O接口与16位DB的连接

一片8251占用两个口地址:

奇数口(控制口):

CPU写入模式控制字、控制命令字、读出状态字

偶数口(数据口):

CPU与外设交换数据

2.8251初始化

异步方式:

┌────────────────────┐

复位┴→模式控制字→控制字(可多次写)→复位→┘

同步方式:

┌───────────-------──────────────┐

复位┴→模式控制字→同步字符(1-2)→控制字(可多次写)→复位→┘

3.模式寄存器、控制寄存器格式

异步格式:

b7b0

S2

S1

EP

PEN

L2

L1

B2

B1

同步方式:

b7b0

SCS

ESD

EP

PEN

L2

L1

0

0

控制寄存器:

b7b0

EH

IR

RTS

ER

SBRK

RXE

DTR

TXEN

其中:

RTS为发送时8251输出控制信号;

DTR为接收时8251输出控制信号。

SBRK=1,8251连续发送低电平(中止符)。

4.状态寄存器格式

b7b0

DSR

SYNDET

FE

OE

PE

TXE

RXRDY

TXRDY

其中:

DSR为8251接收时外设输入的应答(状态)信号;

PE=1表示奇偶错,FE=1表示帧错误(在字符结束时未检测到停止位),OE=1表示溢出错误。

RXRDY、TXRDY为表示8251输入输出缓冲器状态的信号,8251输出,供CPU查询。

TXE=1,表示8251发送器空。

5.3.58251编程举例

8251和MODEM的连接

1电平转换8251输入输出TTL电平,MODEM为RS-232C电平

2控制信号发送(CTS、RTS),接收(DSR、DTR),同步方式(SYNDET)

3时钟异步:

TXC、RXC由本地时钟发生器产生,同步:

收发一致,连接MODEM。

1.8251设置为异步通讯方式

初始化编程:

异步模式控制字—控制字

例1:

试编程设定8251为异步方式,设数据位为7位,偶校验,2个停止位,TXC=RXC等于614.4KHZ,设定波特率为9600Baud.

解:

波特率因子=614.4K/9600=64

模式控制字:

11111011B=FBH

2停止位偶校验7位数据*64

控制字:

00110111B=37H

初始化程序:

MOVDX,8251-ODD;8251奇数口(控制口)

MOVAL,0FBH;模式控制字

OUTDX,AL

MOVAL,37H;控制字

OUTDX,AL

8251发送程序:

┌──────→↓←──────┐

测试状态寄存器b0位TXRDY

=0↓

└─────TXRDY=1?

↓=1发送准备好

发送一字节

↓N

发送完否?

─────┘

↓Y

发送完毕,8251复位

8251接收程序:

┌──────→↓←──────

测试状态寄存器b1位RXRDY

=0↓

└─────RXRDY=1?

↓=1接收准备好

读入一字节

存入输入缓冲区

b5-b3≠000↓

出错处理←──接收字符有错(状态字b5-b3≠000)?

b5-b3=000↓N

接收完否?

─────┘

↓Y

接收完毕,8251复位

2.8251设置为同步通讯方式

初始化编程:

写入同步模式控制字—同步字符—控制字

例2:

试编程设定8251为双同步方式,内同步,设数据位为7位,偶校验。

模式控制字:

00111000B=1AH

双同步内同步偶校验7位/数据同步模式

3.8251编程举例

P150因为仅为接收,故控制字可为16H(带联络)/14H。

5.3.68251使用举例

8251用于微机连接CRT终端。

8251初始化编程时,需确定8251复位状态。

连接:

CPU端,译码CS、控制/数据选择C/D、读/写、数据总线、时钟CLK、接收/发送时钟RXC、TXC。

外设端:

数据信号线RXD、TXD,握手信号DTR、DSR(接收),CTS、RTS(发送,本例未使用);电平转换:

MC1488(TTL→RS-232)、MC1489(RS-232→TTL)。

模式控制字4EH=01001110(1停止位、无校验、8位数据/字符、*16)

控制字27H=00100111(RTS=0、RXE=1接收允许、DTR=0、TXEN=1发送允许)

本例发送程序中,以测TXRDY是否为1,决定是否发送。

5.4并行通信和并行接口

CPU、并口、外设的连接:

与CPU:

DB、地址译码、片选、读/写、中断请求等。

与外设:

DB、控制联络(输入:

STB-输入选通、IBF-输入缓冲器满(输入应答信号);输出:

OBF-输出缓冲器满(输出选通)、ACK-输出应答)

一般输入过程:

●外设以STB将输入数据锁存到接口输入数据缓冲器;

●接口以IBF=1通知外设,禁止写入新的数据;

●CPU查询IBF=1或IBF=1触发中断请求,CPU将数据读走,并置IBF=0;

一般输出过程:

●设OBF=1,输出缓冲器空;

●CPU查询OBF=1或由OBF=1触发中断请求,CPU写入数据到输出接口,同时置OBF=0(输出缓冲器满);

●外设检测OBF=0取走数据,并发应答信号ACK=0,将OBF置1。

5.5可编程并行接口INTEL-8255

5.5.18255的内部结构

1.数据端口

A口8位,数据输入锁存,数据输出缓冲/锁存

B口8位,数据输入缓冲,数据输出缓冲/锁存

C口8位,数据输入缓冲,数据输出缓冲/锁存

注意:

B口、C口作输入时应注意外部数据锁存

A口、B口为独立的I/O口

C口分为上半、下半口,通常为配合A/B口作控制联络信号,仅当A/B口不用其作控制联络信号时,C口可作为I/O口。

2.A组控制和B组控制

A组控制:

A口、C上半口

B组控制:

B口、C下半口

3.读/写控制逻辑

接收CPU读/写、复位命令,根据CS、A0、A1地址选择A组、B组控制命令。

4.数据总线缓冲器

5.5.28255的芯片引脚

40脚,DIP封装:

8位数据线(与CPU)、A、B、C口各8位数据线(与外设)

内部端口选择:

A0、A1、CS

其它:

RD、WR、RESET、地、电源

结构:

从外设(连接)角度:

A、B、C三个8位口;或A、B两个8位口及C上、C下两个4位口;

从编程(CPU)角度:

A、B、C、控制口

读写控制逻辑:

CS

A1

A0

RD

WR

说明

0

0

0

0

1

CPU从8255端口A读入数据

0

0

1

0

1

CPU从8255端口B读入数据

0

1

0

0

1

CPU从8255端口C读入数据

0

0

0

1

0

CPU向8255端口A输出数据

0

0

1

1

0

CPU向8255端口B输出数据

0

1

0

1

0

CPU向8255端口C输出数据

0

1

1

1

0

CPU向8255控制口写入方式控制字或C口置位/复位控制字

0

1

1

0

1

非法操作(8255控制口只读)

1

X

X

1

1

数据线(D0-D7)浮空

1

X

X

X

X

8255未选中,数据线(D0-D7)浮空

5.5.38255的控制字

1.方式选择控制字

b7b0

1

X

X

A口I/O

C上半口I/O

B组工作方式

B口I/O

C下半口I/O

└┬┘

A组工作方式:

00-方式0、01-方式1、1X-方式2

其余:

数字1—字母I(输入)、数字0-字母O(输出);0-方式0、1-方式1

特点:

*方式选择字中A组控制用4位,B组用3位;

*方式选择字按方式选择位、A/B口、C上/C下半口顺序排列;

*A口可以方式0、1、2三种之一工作,B口仅能以方式0、1两种方式之一工作,C口只能在不被A/B口占用(作控制联络信号时)的情况下以方式0工作;

8086与两片8255的连接。

与CPU:

RD(IOR)、WR(IOW)、RESET并联;地址A2、A1用以选择8255内部端口,CS由74LS138提供。

与外设:

PA、PB、PC三个8位口

要求:

芯片J1:

A方式0输出,B方式0输入,C上输出,C下输入

方式选择控制字:

10000011B=83H

芯片J2:

A方式0输入,B方式1输出,C上、C下输出

方式选择控制字:

10010100B=94H

初始化编程:

MOVDX,0E6H;芯片J1控制口

MOVAL,83H;芯片J1方式选择控制字

OUTDX,AL

MOVDX,0EEH;芯片J2控制口

MOVAL,94H;芯片J2方式选择控制字

OUTDX,AL

2.C口置位/复位控制字

功能:

设定C口指定位的输出状态,而不影响C口的其余位。

b7b0

0

X

X

X

PC2

PC1

PC0

1/0

↑↑└──┬───┘↑

标志位无用Pci的编码置1/0

注:

C置位/复位控制字用以设定C口指定位状态,必须写入控制口。

若设定C上、C下为输出状态,或读取C口中数据,则读/写C口。

例4:

编程设定8255初始化。

PA、PC输出,PB输入,并由PC5输出一高电平,PC3输出一个负脉冲。

方式选择控制字:

10000010B=82H

MOVDX,8255-contrl;指向8255控制口

MOVAL,10000010B;方式选择控制字

OUTDX,AL

MOVAL,00001011B;PC5←1

OUTDX,AL

MOVAL,00000111B;PC3←1

OUTDX,AL

MOVAL,00000110B;PC3←0

OUTDX,AL

MOVAL,00000111B;PC3←1

OUTDX,AL

5.5.48255的工作方式

1.方式0-基本输入/输出方式

功能:

为A口(8位)、B口(8位)、C上(4位)和C下(4位)提供基本的输入/输出操作(不带控制联络信号)。

用于简单外设接口,不要控制联络信号,仅有数据通道连接,直接使用IN/OUT指令完成I/O操作。

特点:

1两个8位口,两个4为口可分别设置为I/O,共16种组合;

2输出锁存、输入缓冲,适用于同步方式或与低速外设的接口;

3没有控制联络信号。

如果需要查询外设的状态,只能额外增加状态位,以查询方式工作;

4C口可以方式0输入/输出(通过C口),还可以置位/复位控制字设定PCi的输出状态(通过控制口)。

方式0输入时序

●外设输入数据并保持足够长的时间,供CPU经8255读取;

●CPU发CS、A1、A0选中8255后,发RD读信号;

●外设输入数据需在RD=0后保持tRR以上,以便8255读取。

方式0输出时序

●CPU发CS、A1、A0选中8255;

●CPU发WR写信号,并将输出数据送到DB上;

●外设在WR=0且tWW时间后,将数据读走。

写脉冲tWW的宽度要求在400ns以上。

方式0的应用:

同步传送,收发统一时序,不需应答。

例1:

8255A口输出驱动LED显示,B口输入开关信息,C上半口输出数据5=0101,C下半口输出驱动指示灯(1-点亮)。

方式选择控制字:

10000010B=82H

初始化程序:

MOVDX,8255-contrl;指向8255控制口

MOVAL,10000010B;方式选择控制字

OUTDX,AL

MOVDX,8255-PA;指向8255A口

MOVAL,DATA;输出显示数据代码

OUTDX,AL

MOVDX,8255-PB;指向8255B口

INAL,DX;读入开关信息

MOV[ADDR],AL;保存

MOVCL,50H;C上半口输出数据5

MOVDX,8255-PC;指向8255C口

INAL,DX;读入C口数据

ANDAL,0FH;清高4位

ORAL,CL;高4位置为0101

OUTDX,AL

MOVDX,8255-contrl;指向8255控制口

MOVAL,0XXXYYY0/1B;YYY为PC0-PC3的编码

OUTDX,AL

2.方式1-选通输入/输出方式

功能:

设定A口、B口为选通输入/输出工作方式。

A口方式1输入:

B口方式1输入:

PC3INTR(输出)PC2/STBB(输入)

PC4/STBA(输入)PC1IBFB(输出)

PC5IBFA(输出)PC0INTR(输出)

PC4INTEPC2INTE

其中:

IBF、/STB为输入应答信号,INTR为中断请求信号,INTE为A口/B口输入中断允许信号。

/STB-外设输入的选通信号,通知8255,数据已锁存到8255输入锁存器;

IBF-8255送出的输入缓冲器满信号。

STB的下降沿将IBF置1,禁止外设送入新的数据。

当CPU从8255读取数据时,复位IBF=0,通知外设可写入新数据。

INTR-当IBF=1且INTE=1时,发中断申请。

例2:

编程设定8255A口为选通输入方式,并允许A口申请中断。

方式选择控制字:

1011YXXX(Y为PC6、PC7的I/O选择,XXX为B组工作方式)

MOVDX,8255-contrl;指向8255控制口

MOVAL,1011YXXXB;方式选择控制字

OUTDX,AL

MOVAL,00001001B;允许A口输入中断

OUTDX,AL

MOVAL,00001010B;PC5即IBF清0,启动外设,8255已作好准备。

OUTDX,AL

A口方式1输出:

B口方式1输出:

PC7/OBFA(输出)PC2/ACKB(输入)

PC6/ACKA(输入)PC1/OBFB(输出)

PC3INTR(输出)PC0INTR(输出)

PC6INTEPC2INTE

其中:

/OBF、/ACK为输出应答信号,INTR为中断请求信号,INTE为A口/B口输出中断允许信号。

/ACK-外设输入的响应信号,外设准备好接收数据,以/ACK=0通知8255可以送出新数据,并置位/OBF=1;

OBF-8255送出的输出缓冲器满信号。

8255以OBF的下降沿通知外设有数据可读。

INTR-当OBF=1且INTE=1时,发中断申请。

方式1的输出时序

3.方式2—双向传送

功能:

提供一个与外设双向传送的8位I/O接口

仅限于A口使用,且使用PC3-PC7(5位)作为控制联络信号,具有I/O中断控制功能。

 

信号:

输入应答:

PC4/STBA(输入)

PC5IBFA(输出)

输出应答:

PC7/OBFA(输出)

PC6/ACKA(输入)

中断请求:

PC3INTR

允许/禁止A口输入中断:

PC4INTE

A口输出中断:

PC6INTE

实际上:

方式2=A口方式1输入+A口方式1输出

方式2与其它方式的组合:

1与方式0

B口工作与方式0输入/输出,PC2-PC0可作为I/O。

2与方式1

B口方式1输入/输出,C口全部用于控制/联络,方式选择字仅设置b1位。

5.5.58255应用举例

例1:

8255A口连接打印机,A口工作于方式0,控制联络信号由PC2-BUSY(打印机忙,输入)、PC6-/STB(数据选通,输出)提供。

设8255端口地址为0D0H-0D6H

解:

方式选择字:

100000X1(A口方式0,输出;C上输出,C下输入;B口只能工作于方式0)

初始化程序:

MOVDX,0D6H;指向8255控制口

MOVAL,81H;方式选择控制字

OUTDX,AL

MOVAL,00001101B;PC6=/STB=1无效

OUTDX,AL

L1:

MOVDX,0D4H;指向8255C口

INAL,DX;读入打印机状态信息

TESTAL,04H;BUSY=1?

JNZL1;=1,循环等待

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2