第6章IO接口 黑吧
chap6微机原理与接口技术第六章——I、O接口和总线

第六章I/O接口和总线本章介绍1.I/O接口I/O接口的功能简单的输入输出接口芯片I/O端口及其寻址方式CPU与外设间的数据传送方式 PC机的I/O地址分配2.总线IBM PC总线AT总线或ISA总线6-1、I/O接口一.I/O接口的功能1.采用I/O接口的必要性计算机和外设之间的信息交换带来一些问题:速度不匹配信号电平不匹配信号格式不匹配时序不匹配因此I/O设备不能直接与CPU的系统总线相连,必须在CPU与外设之间设置专门的接口电路来解决这些问题。
可编程输入输出接口芯片随着大规模集成电路技术的发展,出现了许多通用的可编程接口芯片,可用它们来方便地构成接口电路。
后面几章将介绍常见的可编程I/O接口芯片的原理、编程方法及与CPU的连接方法。
可编程中断控制器8259A可编程计数器/定时器8253可编程外围接口芯片8255A串行通信和可编程接口芯片8253AA/D和D/A转换芯片。
本章介绍最常用的简单I/O接口芯片,主要有缓冲器(Buffer)和锁存器(Latch)。
二、简单的输入输出接口芯片1.缓冲器74LS244和74LS245连接在总线上的缓冲器都具有三态输出能力。
在CPU或I/O接口电路需要输入输出数据时,在它的使能控制端EN(或G)作用一个低电平脉冲,使它的内部的各缓冲单元接通,即处在输出0或1的透明状态。
数据被送上总线。
当使能脉冲撤除后,它处于高阻态。
这时,各缓冲单元像一个断开的开关,等于将它所连接的电路从总线脱开。
74LS244和74LS245就是最常用的数据缓冲器。
除缓冲作用外,它们还能提高总线的驱动能力。
8个三态缓冲单元,分成两组,分别由门控信号为低电平时,数据传送;高电平时,输出高阻态。
单向缓冲器,只能从端。
OE 2.锁存器74LS3731. I/O端口1.数据端口(Data Port)用来存放CPU与外设之间交换的数据,长度一般为1-2个字节,主要起缓冲作用。
2.状态端口(Status Port)用来指示外设的当前状态。
第6章 通用IO接口的基本结构与输出应用分解

11
AVR通用I/O端口的主要特点
• DDRx可控的方向寄存器。
– AVR的I/O端口结构同其它类型单片机的明显区别是,AVR采 用3 个寄存器来控制 I/O 端口。一般单片机的I/O 仅有数据寄存 器和控制寄存器,而 AVR 还多了一个方向控制器,用于控制 I/O的输入输出方向。由于输入寄存器PINx实际不是一个寄存 器,而是一个可选通的三态缓冲器,外部引脚通过该三态缓 冲器与MCU的内部总线连接,因此,读PINx时是读取外部引 脚上的真实和实际逻辑值,实现了外部信号的同步输入。这 种结构的 I/O 端口,具备了真正的读 - 修改 - 写( Read-ModifyWrite)特性。
这个运算对一个位取反有用 例如 在下面的例子中 位 7 是被翻转的 PORTA ^= 0x80; // 翻转位 7 ~a –- 按位取反 在表达式中这个运算执行一个取反 当用按位与运算关闭某些位 时 与这个运算组合使用尤其有用 如 13 PORTA &= ~0x80;// 关闭位 7
9
AVR通用I/O端口的主要特点
• 双向可独立位控的I/O口
– ATmega16的PA、PB、PC、PD四个端口都 是8位双向I/O口,每一位引脚都可以单独的 进行定义,相互不受影响。如用户可以在定 义PA口第0、2、3、4、5、6位用于输入的 同时定义第1、7位用于输出,互不影响
10
AVR通用I/O端口的主要特点
7
I/O端口寄存器 PA口寄存器—PORTA、DDRA、PINA各个位的具体定义
位 7 6 PORTA6 R/W 0
7 6 R/W 0
5 DDA5 R/W 0
5 PINA5 R N/A
4 PORTA4 R/W 0
4 DDA4 R/W 0
单片机原理与应用技术:9第6章 IO口扩展new2

A1 A0 RD* WR* CS*
工作状态
0 0 0 1 0 读端口A:A口数据→数据总线 0 1 0 1 0 读端口B:B口数据→数据总线 1 0 0 1 0 读端口C:C口数据→数据总线
0010 0110 1010 1110 ×××× 1101 ×× 1 1
0 写端口A:总线数据→A口 0 写端口B:总线数据→B口 0 写端口C:总线数据→C口 0 写控制字:总线数据→控制字寄存器 1 数据总线为三态 0 非法状态(不能读控制字寄存器) 0 数据总线为三态
单片机只有在确认外设已为数据传送做好准备的前提下才 能进行I/O操作。
想知道外设是否准备好,需I/O接口电路与外设之间传送状 态信息。
3
6.1.1 I/O接口的功能
2. 输出数据锁存 由于单片机工作速度快,数据在数据总线上保留的时间十 分短暂,无法满足慢速外设的数据接收。I/O电路应具有 数据锁存器,以保证接收设备接收。
(3) 数据总线缓冲器线
三态双向,作为8255与单片机数据线之间接口,传送数据、 指令、控制命令及外部状态信息。
(4) 读/写控制逻辑电路线
该电路接收CPU发来的控制信号、RESET、地址信号A1、 A0等。对端口进行读写。
13
6.2.1 8255芯片介绍
各端口的工作状态与控制信号的关系如表所示。
入缓冲器。 PC口: 1个8位数据输出缓冲器; 1个8位数据输入缓冲器。
PC口可在软件的控制下,分为两个4位端口,作为PA口、 PB口选通方式操作时的状态控制信号。
12
6.2.1 8255芯片介绍
(2) A组和B组控制电路 A组:PA口和PC口的上半部(PC7~PC4); B组:PB口和PC口的下半部(PC3~PC0)。 可根据“命令字”对PC口按位“置1”或“清0”。
第六章节MCS单片机IO接口和功能模块

右对齐10位数据
××××××√ √ √ √ √ √ √ √ √ √
另外还要注意有符号数据和无符号数据的区别。
A/D转换综合举例
使用教学板上电位器调试并观察A/D转换结 果。
请见exp14。
3、脉冲宽度调制PWM模块
PWM的基本概念
无符号的转换结果; 转换完毕可产生中断; 使用PAD7外部触发控制。
9S12的A/D模块外部引脚
VRH(60)、VRL(61):A/D 转换模块的参考 高电压和参考低电压。实验板上,VRH和VRL分 别接VCC和GND。
VDDA(59)、VSSA(62):A/D 模块提供电源。 实验板上,VDDA接到VCC,VSSA接到GND。
信号。1=允许,0=禁止。 ASCIE:A/D队列转换完成中断允许。1=允许,并使标
志位ASCIF=1;0=禁止。 ASCIF:A/D 队列转换完成中断标志。
控制寄存器3—ATDCTL3
S8C、S4C、S2C、S1C:定义转换队列的长 度。默认长度为4。
FIFO:结果寄存器先进先出模式。1=FIFO 模式,转换结果是连续存放的;0=非FIFO 模式,转换结果放在对应的寄存器中。
FIFOR:FIFO 溢出标志。如果转换完成标志(CCF)在没有被清 零时结果寄存器被写入新值(覆盖),则置位。清零条件:对此 位写一;写控制寄存器5,开始一个新队列。1=有FIFO溢出,0= 无FIFO溢出。
CC2、CC1、CC0:转换计数器。代表了哪个结果寄存器将要接收 当前转换的结果。非FIFO 模式(FIFO=0),这3 位的初始值为0, 计数完成后又会回到初始值。FIFO 模式(FIFO=1),转换计数 器处于循环计数状态。
第6章 输入输出接口技术

第六章输入输出接口技术基础(注:为赶上实验进度,先跳过存储器讲此章)基本内容: I/O接口概念;I/O接口应用背景;CPU与I/O设备间的信号种类;I/O端口的寄址方式;I/O三种传输方式:程序查询方式,程序中断方式,DMA方式基本要求:理解I/O接口的作用和一般结构;掌握I/O的编址方式和I/O传输方式的三种方式;重点内容: I/O接口信号种类;I/O编址方式;三种传输方式;难点内容:三种传输方式;第一节概述实际系统中,除CPU外,还有各种外部设备,即外设,通过外设来实现人机交互,通讯控制等目的,如键盘、显示器、打印机、鼠标等。
外设种类有电子式、机械式等,其信息也有数字量、模拟量等。
这些设备与CPU连接或外设之间是通过接口电路来实现的。
在计算机系统里,接口指微机 (或CPU) 与外部设备之间的连接通道及有关的控制电路。
一、接口的作用(1)信息类型不匹配时,对非数字信号进行转换,或将数字信号转换为非数字信号,如温度控制时测温度值。
转速控制时将数字信号转换为电压信号(详解)。
(2)对串并行信息进行转换。
CPU→外设外设→CPU并串串并(3)速度不匹配时要协调锁存或缓冲(4)多个并设设备时扩展I/O口。
也可按课本理解,速度、时序、信息格式、信息类型与电平不匹配。
二、CPU和I/O设备间的接口信息通常,CPU和I/O设备间的接口信息有以下几类信号:1、数据信息CPU和外设交换的基本信息就是数据,数据通常为8位或16位。
数据信息大致分为如下三种类型:(1)数字量(2)模拟量(3)开关量2、状态信息反映外设当前所处的工作状态,是外设通过接口往CPU传送的。
如输出设备是否空闲,输入设备是否数据准备好等。
3、控制信息CPU通过接口传递给I/O设备的信息,用以控制I/O设备的工作,如启动、停止等。
三、I/O接口的一般结构及功能每个接口部件都包含一组寄存器,CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器一般称这些寄存器为I/O端口,每个端口有一个端口地址。
06第六章输入-输出接口

输入/输出指令
❖ IN输入指令
❖ 直接端口寻址方式
❖格式: IN AL(或AX),PORT ❖操作: (AL字节或AX字)(PORT)
例 取端口61H的内容. IN AL,61H ;取数据 MOV BL,AL ;放入BL中
16
❖ 间接端口寻址方式
❖格式: IN AL(或AX),DX ❖操作: (AL字节或AX字)((DX))
❖ I/O端口地址是绝对地址,并不分段。 ❖ I/O指令都不影响标志位。
20
表6-5 PC/XT机系统板配置的端口地址
地址范围 000H~01FH 020H~03FH 040H~05FH 060H~07FH 0A0H~0BFH 080H~09FH
I/O接口名称 DMA控制器 中断控制器 定时器8253/8254 并行接口芯片8255 NMI屏蔽寄存器 DMA页面寄存器
18
❖ 间接端口寻址方式
❖格式: OUT DX,AL(或AX) ❖操作: ((DX)) (AL字节或AX字)
例 将寄存器BL的数据放入异步串行接口(COM1) 的端口3F8H中. MOV DX,3F8H ;取地址 MOV AL,BL ;取数据 OUT DX,AL ;放入BL中
19
I/O指令的使用规则
0D000H~ 0D0FFH
网络接口控制器(NIC)
计算机的端口地址
22
AEN
A3 A4 A5 A6 A7 A9
A8
74LS04
74LS30
CS
O J10 O O J12 O
图 6-5 可选式译码电路
23
J10通 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
1011111000
第6章I-O接口和总线II
7. 64位总线扩展信号
AD[63:32] T/S:扩展的32位地址和数据多路复用 线
C/BE[7:4]# T/S:总线命令和字节使能多路复用扩 展信号线
REQ64# S/T/S,64位传输请求信号 ACK64# S/T/S:64位传输允许信号 PAR64 T/S:奇偶双字节校验
• 3.0标准,也被称作是超高速USB(SuperSpeed USB) ,在一些特性上是独一无二的。它使用5个端口连线 两个用于发送,两个用于接收,一个是地线 - 来实现 全双工从而达到5 Gb/s的物理层速率,目前的USB产 品采用两线,半双工的架构。
10/6/2019
微机原理与接口技术
40/48
6) 采用同步操作 7) 支持两种电压下的扩展卡 8) 具有即插即用功能 9) 合理的管脚安排 10) 预留扩展空间
10/6/2019
微机原理与接口技术
19/48
10/6/2019
微机原理与接口技术
20/48
10/6/2019
微机原理与接口技术
21/48
• PCI总线信号定义
1. 系统接口信号
微型计算机原理与接口技术
第6章 I/O接口和总线
曹荣敏 Rongmin_cao@
本章学习要求
理解输入输出接口的基本概念 掌握输入输出接口的编址方式 会通过查询芯片使用手册,了解芯片用法 掌握输入输出数据的传送方式,对于查询
方式和中断方式能达到简单应用 熟悉总线的概念和微机总线标准,以及其
10/6/2019
微机原理与接口技术
26/48
10/6/2019
微机原理与接口技术
27/48
•配置空间头区域及功能
第6章 并行IO口扩展技术
6.2 8255A可编程并行接口芯片扩展I/O接口
常用的可编程接口芯片如表6-1所示:
9
1、8255A的结构
图6.2 8255A的内部结构图
10
1)数据总线缓冲器
是双向三态的8位驱动器,用于和单片机的数据
总线连接,以实现单片机与8255A芯片的数据传送。
2)并行I/O端口 有三个端口: ① A口:具有一个8位数据输出锁存/缓冲器和一个8位数据 输入锁存器,可编程为8位输入输出或双向寄存器。 ② B口:具有一个8位数据输出锁存/缓冲器和一个8位数据 输入缓冲器(不锁存),可编程为8位输入输出或输出寄存 器,但不能双向输入输出。 ③ C口:具有一个8位数据输出锁存/缓冲器和一个8位数 据输入缓冲器(不锁存),在方式控制下,可分为两个4位 口使用。除了作输入、输出口使用外,还可作A口、B口选通 方式操作时的状态控制信号。
另一类是CPU与外部设备之间的数据输入/输出 (I/O)操作。
由于CPU与外部设备之间的数据传送非常复杂, 不能与外设进行直接连接,故必须在两者之间加一 个接口电路。如图6.1所示:
3
图6.1 并行接口连接外设的示意图 4
2、接口电路的作用 1)实现速度协调 解决高速主机与低速外围设备间的矛盾。 2)实现数据锁存 处理外围设备与CPU之间的不同信息格式 3)实现三态缓冲 使主机与外设协调工作
中最高位必须固定“0”,各位功能如图6.4所示:
19
3)工作方式 方式0:基本的输入/输出方式。适合A口、B口和C口 方式1:选通输入/输出方式。适合A口和B口 方式2:双向数据传送方式(即可接收又可发送数 据),只适合A口。
4、8255A初始化编程 初始化的内容:
向控制字寄存器写入工作方式控制字和C口置位 /复位控制字。
第6章 基本输入输出接口
面向微机系统的专用接口芯片
与CPU和系统配套使用,以增强其总体功能
§6.1 接口的基本概念
接口电路的可编程性 许多接口电路具有多种功能和工作方式, 可以通过编程的方法选定其中一种 接口需进行物理连接,还需编写接口软件 接口软件有两类:
初始化程序段——设定芯片工作方式等 数据交换程序段——管理、控制、驱动外设, 负责外设和系统间信息交换
EN
输入
o
其中EN开门: 输入为1时 输入为0时
输出为1 输出为0
其中EN关门: 输入为1/0,输出为高阻
§6.1 接口的基本概念
(3)数据转换功能:对信号的形式和数据的格式进行 变换; (4)联络功能:与CPU和I/O设备进行联络就绪信号, 忙信号等; ⑸中断管理:发出中斯请求信号、接收中断响应信 号、发送中断类型码的功能。并具有优先级管理 功能; ⑹复位:接收复位信号,从而使接口本身以及所连 的外设进行重新启动; ⑺可编程:用软件来决定其工作方式,用软件来设 置有关的控制信号;
缺点:
I/O指令没有存储器指令丰富
0
80x86采用I/O端口独立编址
§6.1 接口的基本概念
对于8086,M和IO的不同之处: 地址线的条数:20、16 地址的范围:220、216、 指令不同产生的信号不同:M/IO
8088/8086的输入输出指令
输入输出指令举例 输入指令(IN:将外设数据传送给CPU内的AL/AX) IN AL,8 ;字节输入 演示 IN AL,DX ;字节输入 IN AX,8 ;字输入 IN AX,DX ;字输入 输出指令(OUT:将CPU内的AL/AX数据传送给外设) 演示 OUT 8,AL ;字节输出 OUT DX,AL ;字节输出 OUT 8,AX ;字输出 OUT DX,AX ;字输出
第6章I-O接口和总线II
第6章 I/O接口和总线
曹荣敏 Rongmin_cao163
计算机的最终目标是达到无障碍交流
本章学习要求
理解输入输出接口的基本概念 掌握输入输出接口的编址方式 会通过查询芯片使用手册,了解芯片用法
掌握输入输出数据的传送方式,对于查询 方式和中断方式能达到简单应用
熟悉总线的概念和微机总线标准,以及其 最新进展和发展方向
2020/5/13
微机原理与接口技术
15/48
2020/5/13
微机原理与接口技术
16/48
2020/5/13
微机原理与接口技术
17/48
2 扩充工业标准结构总线 Extended ISA EISA总线
EISA总线支持32位地址,具有32位数据总线,总线 频率8.33MHz,最大数据传输率达到33.3MB/s (8.33×32位/8)。
2020/5/13
微机原理与接口技术
2/48
第6章 I/O接口和总线
6.6 总线的概念和总线标准
6.6.1 总线与接口概述 6.6.2 系统总线简介
知识扩展
PCI Express资料
USB资料 usb-drivers
cypress-chinese/usb/datasheets.html
• CLK IN:PCI系统总线时钟 最高33MHz/66MHz,最低0Hz。 PCI大部分信号在CLK的上升沿有效。
2. 地址与数据接口信号
• AD[31:00] T/S:它们是地址、数据多路复用 的输入/输出信号
在FRAME#有效的第1个时钟,传送的是地址,称为地址期。 在IRDY#和TRDY#同时有效时,传送的是数据,称为数据期。