微机原理与接口技术第10章

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

10.1概述10.1.1并行通信1.并行接口并行接口中各位数据都是并行传输的,它以字节(或字)为单位。并行通信以同步方式传输,其特点是:传输速度快;硬件开销大;只适合近距离传输。一个并行接口中包括状态信息、控制信息和数据信息。⑴状态信息状态信息表示外设当前所处的工作状态。第10章并行和串行接口电路⑵控制信息控制信息是由CPU发出的,用于控制外设接口的工作方式以及外设的启动和停机信息等。⑶数据信息CPU与并行外设数据交换的内容。状态信息、控制信息和数据信息,通常都是通过数据总线传送,这些信息在外设接口中分别存放在不同的端口中。控制寄存器状态寄存器输入缓冲寄存器输出缓冲寄存器CPU总线系统输入设备输出设备数据总线输出数据准备好输入数据准备好中断请求地址译码器复位地址总线AENCSA0A1IORIOW输入数据输入数据准备好输入应答输出数据输出数据准备好输出应答寄存CPU对外设的操作命令存放外设的信息,CPU通过它了解外设的状态暂存数据,因为CPU的速度远高于外设①②③④撤销“输入数据准备好”在状态寄存器中设置“准备好输入”状态位3.数据输入过程CPU可以用软件查询方式,也可以用中断的方式将接口中的数据输入到CPU中。控制寄存器状态寄存器输入缓冲寄存器输出缓冲寄存器CPU总线系统输入设备输出设备数据总线输出数据准备好输入数据准备好中断请求地址译码器复位地址总线AENCSA0A1IORIOW输入数据输入数据准备好输入应答输出数据输出数据准备好输出应答⑤3.数据输入过程⑤⑥⑦撤销“输入数据准备好”控制寄存器状态寄存器输入缓冲寄存器输出缓冲寄存器CPU总线系统输入设备输出设备数据总线输出数据准备好输入数据准备好中断请求地址译码器复位地址总线AENCSA0A1IORIOW输入数据输入数据准备好输入应答输出数据输出数据准备好输出应答①①②③撤销“输出数据准备好”4.数据输出过程当数据输出后,输出缓冲寄存器“空”,状态寄存的“输出数据准备好”位有效,CPU可以用软件查询方式查询。同时接口也可向CPU发出一个中断请求信号,将CPU的数据输出到接口。控制寄存器状态寄存器输入缓冲寄存器输出缓冲寄存器CPU总线系统输入设备输出设备数据总线输出数据准备好输入数据准备好中断请求地址译码器复位地址总线AENCSA0A1IORIOW输入数据输入数据准备好输入应答输出数据输出数据准备好输出应答4.数据输出过程④⑤⑥⑦撤销“输出数据准备好”控制寄存器状态寄存器输入缓冲寄存器输出缓冲寄存器CPU总线系统输入设备输出设备数据总线输出数据准备好输入数据准备好中断请求地址译码器复位地址总线AENCSA0A1IORIOW输入数据输入数据准备好输入应答输出数据输出数据准备好输出应答10.1.2串行通信串行通信是通过一位一位地进行数据传输来实现通信。串行通信具有传输线少,成本低等优点,适合远距离传送。缺点是速度慢,若并行传送n位数据需时间T,则串行传送的时间最少为nT。通过一对导线传送信息。1.串行接口的组成串行接口主要由控制寄存器、状态寄存器、数据输入寄存器和数据输出寄存器4部分组成。图10.2串行接口与CPU、外设的连接控制寄存器状态寄存器数据输入寄存器数据输出寄存器CPU总线系统数据总线RxRDY地址译码器复位地址总线AENIORIOW串行数据输入TxRDY串入并出并入串出CSDC/接收时钟串行数据输出发送时钟MODEM控制⑶数据寄存器①数据输入寄存器:在输入过程中,串行数据一位一位地从传输线进入串行接口的移位寄存器,经过串入并出(串行输入并行输出)电路的转换,当接收完一个字符之后,数据就从移位寄存器传送到数据输入寄存器,等待CPU读取。②数据输出寄存器:在输出过程中,当CPU输出一个数据时,先送到数据输出缓冲寄存器,然后,数据由输出寄存器传到移位寄存器,经过并入串出(并行输入串行输出)电路的转换一位一位地通过输出传输线送到对方。①发送时钟:串行数据的发送的时间间隔可由发送时钟周期来划分。②接收时钟:传输线上送来的串行数据序列由接收时钟作为移位寄存器的触发脉冲,逐位打入移位寄存器。2.串行通信中使用的术语⑴发送时钟和接收时钟把二进制数据序列称为比特组。每一位持续的时间是固定的,在发送时是以发送时钟作为数据位的划分界限,在接收时是以接收时钟作为数据位的检测。3.串行通信中的工作方式⑴单工工作方式传输的线路用一根线连接,通信的一端连接发送器,另一端连接接收器,只允许数据按照一个固定的方向传送。⑵半双工工作方式一根线连接,发送和接收不可能同时进行,这种传输方式称为半双工工作方式。半双工通信工方式类似对讲机,双方不能同时进行发送和接收。发送器接收器单工方式A站点B站点发送器接收器A站点发送器接收器B站点发送器接收器A站点接收器发送器B站点(a)(b)(c)⑶全双工工作方式分别用2根独立的传输线(一般是双绞线,或同轴电缆)来连接发送信号和接收信号,这样发送方和接收方可同时进行工作,称为全双工的工作方式。全双工通信工方式类似电话机,双方可以同时进行发送和接收。4.同步通信和异步通信方式⑴同步通信方式同步通信方式的特点是:由一个统一的时钟控制发送方和接收方,字符要一个接着一个传送;没有字符时,也要发送“空闲”字符或者是同步字符。要求必须连续传送字符,每个字符的位数要相同,中间不允许有间隔。同步传输的特征是:在每组信息的开始(常称为帧头)要加上l一2个同步字符,后面跟着8位的字符数据。01111110011111108位数据8位数据8位数据…8位数据01111110同步字符1同步字符2数据结束标志⑵异步通信方式异步通信的特点是:字符是一帧一帧的传送,每一帧字符的传送靠起始位来同步。在数据传输过程中,传输线上允许有空字符。在异步通信中两个字符的时间间隔是不固定的,而在同一字符中的两个相邻代码间的时间间隔是固定的通信。异步通信中发送方和接收方的时钟频率也不要求完全一样。0/10/10/10/10/10/10/10/10/10/10/1101…1100/10/10/1…7位数据奇偶校验停止位起始位7位数据奇偶校验停止位空闲n位起始位7位数据第n+1个字符第n个字符第n-1个字符数据低位数据高位下降沿指示下一个字符开始…5.通信中必须遵循的规定⑴字符格式的规定通信中,传输字符的格式要按规定写。⑵比特率、波特率(baudrate)①比特率:每秒传输的二进制数的位数bit/s(位/秒),即每秒传输的信号脉冲数。②波特率:每秒钟内发生二进制信号的事件数,用来表示一个二进制数据位的持续时间。即每秒传输的有效数据位数。波特率=1/二进制位的持续时间比特率可以大于或等于波特率,假定用正脉冲表示“1”,负脉冲表示“0”,这时比特率就等于波特率。假如每秒钟要传输10个数据位,则其速率为l0波特,若发送到传输介质时,把每位数据用10个脉冲来调制,则比特率就为100b/s,即比特率大于波特率。10.2可编程并行接口电路Intel8255A并行接口电路,在早期的微机中与串行口、软盘接口、硬盘接口等都放在一块多功能接口卡上,插在微机的扩展槽上使用。现在这部分电路已在微机的主板上由与CPU配套的芯片组北桥来实现其功能。如果要在其他的场合实现并行数据传送,在电路设计时采用专用的接口芯片最为方便。可编程的接口芯片8255A是完成并行通信的集成电路芯片。10.2.18255A的主要性能和内部结构8255A有三个端口(A、B和C端口),每个端口8条线。数据总线缓冲器读写控制逻辑B组控制端口B(8)端口C下半部(4)端口C上半部(4)端口A(8)A组控制DBRDWRA0A1RESETCSCPU接口内部逻辑外部接口PA7~PA0PC7~PC4PC3~PC0PB7~PB08255A12345678910111213141516171819204039383736353433323130292827262524232221PA3PA2PA1PA0RDCSGNDA0A1PC7PC6PC5PC4PC0PC1PC2PC3PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VCCPB7PB6PB5PB4PB3(a)(b)8位内部数据总线1.三个独立的数据口8255A三个数据口彼此独立。1)A端口A端口对应一个8位的输入锁存器和一个8位的输出锁存器和缓冲器,适合用在双向的数据传输场合。2)B端口和C端口这两个口分别是由一个8位的输入缓冲器和一个8位的输出锁存器和缓冲器组成。B端口和C端口用作输入口时,则不能对数据实现锁存。3.读写控制逻辑电路CSRDWRA1A0执行的操作000000000010101011101x1010100011x000001011010111111xxxx读A端口(A端口数据→数据总线)写A端口(A端口←数据总线数据)读B端口(B端口数据→数据总线)写B端口(B端口←数据总线数据)读C端口(C端口数据→数据总线)写C端口(C端口←数据总线数据)当D7=1时,对8255A写入控制字当D7=0时,对C端口置位/复位非法的信号组合数据线D7~D0进入高阻状态未选择2.A组控制电路和B组控制电路A组控制电路控制A端口和C端口的高4位(PC4~PC7)。B组控制电路控制B端口和C端口的低4位(PC0~PC3)。1.与CPU相连的引脚RESET:芯片的复位信号。复位后把8255A内部的所有寄存器都清0,并将三个数据口自动设置为输入口。CS:片选信号,低电平时有效。RD:读信号,低电平有效。WR:写信号,低电平有效。A1、A0:端口译码信号。用来选择8255A内部的三个数据端口和一个控制端口的地址。其中对控制口只能进行写操作。10.2.28255A的外部特性(1)当A1A0=00时,选中A端口。(2)当A1A0=01时,选中B端口。(3)当A1A0=10时,选中C端口。(4)当A1A0=11时,选中控制端口。D7~D0:双向三态8位数据线,与系统的数据总线相连接。2.和外设端相连的引脚PA7~PA0:A端口的输入/输出引脚PB7~PB0:B端口的输入/输出引脚PC7~PC0:C端口的输入/输出引脚10.2.38255A的控制字和编程8255A的控制字分为两种,分别称为方式选择控制字和端口C置1/置0控制字。1.方式选择控制字方式选择控制字决定三个数据端口的工作方式。图10.88255A的方式选择控制字D7D6D5D4D3D2D1D0PC3~PC01:输入0:输出00:方式001:方式11x:方式2A端口1:输入0:输出PC7~PC41:输入0:输出B组方式0:方式01:方式1B端口1:输入0:输出B组控制A组控制方式选择控制字识别位,为1选中D7D6D5D4D3D2D1D0PC3~PC01:输入0:输出00:方式001:方式11x:方式2A端口1:输入0:输出PC7~PC41:输入0:输出B组方式0:方式01:方式1B端口1:输入0:输出B组控制A组控制方式选择控制字识别位,为1选中例:要求8255A的A端口作输入,B端口和C端口作输出,A组工作在方式0,B组工作在方式1。MOVAL,94H;方式选择控制字送ALMOVDX,控制端口地址(地址长度大于8位)OUTDX,AL;方式选择控制字输出给控制端口图10.98255A的C端口置1/置0控制字D7D6D5D4D3D2D1D0C端口置位识别位,为0有效任意值C口位选择000:PC0001:PC1010:PC2011:PC3100:PC4101:PC5110:PC6111:PC7选中位置1/置0选择0:置01:置12.C端口置1/置0控制字此控制字可以单独设置C端口某一位为0或为1。D7=1:方式选择控制字D7=0:C端口置1/置0控制字都是发送到控制端口例如,要将C端口的PC3置0,PC7置1。MOVAL,06H;PC3置0控制字送ALMOVDX,控制端口地址OUTDX,AL;对PC3完成置0操作MOVAL,0FH;PC7置1控制字送ACOUTDX,AL;完成对PC7置1操作10.2.48255A的工作方式8255A有方式0,方式1和方

1 / 77
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功