第一章--第四节--基本Io口
新第4章.IO接口基础

第4章:I/O接口基础4.1I/O接口的基本概念再好的CPU,如果不配上一定的外部设备而构成一个完备的微机系统,其强大的功能和优越的性能将无法显示出来,因而也就不具有实用价值。
那么,外设包括那些东西呢?首先,任何计算机必须有一条接收程序和数据的通道,才能接收“外界”的信息来进行处理,这就必须有输入设备,如键盘、鼠标器、光笔、触摸屏、扫描仪等;其次,微机处理的结果还必须送回给要求进行信息处理的“外界”,这就必须有输出设备,如显示器、打印机、绘图仪、记录仪等。
其三,在一些工业控制场合,还需要模/数转换器、数/模转换器、传感器、发光二极管、光电隔离器等。
上述这些设备在信息格式、工作速度、驱动方式等方面差别很大,所以不能直接与CPU 相连,亦即不能直接接入总线,必须通过接口(Interface)电路连接。
I/O(Input/Output,,I/O)接口是CPU与外设之间的桥梁,是用来协助两者完成数据传输的专用电路。
图4-1体现了微机系统中总线、接口、外设的关系。
读者借助此图能更好地学习理解本章内容。
图4-1 微型计算机系统4.1.1 I/O接口的基本功能微机系统可选用的接口的种类很多,作用各异;各外部设备更是千差万别;总线与外设通信的方式也不一样。
但无论哪种接口都是专门为解决CPU与外设之间的速度和时序不匹配、不能协调工作而设置的,它处在总线和外设之间,一般应具有以下基本功能。
1.接口对输入/输出数据进行缓冲、隔离和锁存接口必须具备“输入口有三态、输出口能锁存”的特点。
2接口有寻址功能:.根据输入的地址信息选择相应的端口一个接口含多个端口,正如一个存储器含多个存储单元一样。
端口指I/O接口中可被CPU读/写的寄存器,而外设也接在端口。
若某接口具有多个端口,但CPU在某一段时间内只能与一个端口交换信息,因此需要通过接口地址译码对端口进行寻址,以选定CPU所需的端口,只有选中的端口才能与CPU交换信息。
此即所谓寻址功能。
基本的IO接口

第3章基本的10接口3.1 I/O概述I/O接口基本概念1 .为什么要引入接口•微机和I/O设施的信息类型和格式可能不一样。
•微机和I/O设施信号传输处理的速度可能不匹配。
•不用接口,I/O直接接CPU,随着外设增加,会大大降低CPU的效率。
•I/O直接接CPU,会使外设硬件结构过于依靠CPU, 对外设本身进展不利。
2.接口的概念3. I/O 接口与I/O 设施不同I/O 设施对应I/O 接口不同。
I/O 接口受CPU 掌握,I/O 设施受I/O 接口掌握。
为增加通用性,I/O 接口的接口电路一般均具有可 编程功能。
微机的应用离不开与外部设施接口的设计、选用和 连接。
4. I /O 接口功能.数据缓冲功能: ,UU u u u u UU ITU 智能仪器接【I 通信接口 过程控制接11 输入接口 输出接口数字化存储示波 器,数字化万用表 终瑞 调制解调器 1TY 电传机 A/D 转换器 开关心输入 D/A 转换器开关证输出键盘数字化仪光笔图形输入声音输入扫描仪 点阵打印CRT 显示 激光打印液晶显 喷壁打印绘图仪X-Y 记录仪 地址线 ππ 控制线通过寄存器或锁存器实现。
存放数据的寄存器或锁存器称之为数据口(输入、输出、双向)。
数据传送的方向以CPU/MPU为基准。
.接受和执行CPU命令功能:存放CPU命令代码的寄存器称之为命令口,存放执行状态信息的寄存器称之为状态口。
一般,命令口为输出口,状态口为输入口。
.设施选择功能:CPU通过地址译码选择不同外设。
即CPU通过地址译码选择不同I/O接口。
・信号转换功能:协调总线信号与I/O设施信号。
转换包括信号的规律关系、时序协作和电平转换。
.中断管理功能:当外设需要准时得到CPU的服务,特殊是在消失故障时,在接口中设置中断掌握电路,为CPU处理有关中断事务(如发出中断恳求、进行中断优先级排队、供应中断向量等),这样既做到微机系统对外界的实时响应,又使CPU与外设并行工作,提高了CPU的效率。
主要内容41基本概念411IO接口的功能412基本组成

1第四部分输入/输出系统的选择、应用2主要内容:输入/输出接口电路的基本概念 输入/输出端口的编址方式和特点CPU 与外设之间传输数据的几种控制方式的优缺点、适用场合。
各类芯片的特点、功能34.1 基本概念4.1.1 I/O 接口的功能4.1.2 基本组成454.1.1 I/O 接口的功能什么是I/O接口?把外设连接到总线上的一组逻辑电路的总称。
实现外设与主机之间的信息交换。
计算机与外部设备通信时存在的问题速度不匹配信号电平不匹配 信号格式不匹配时序不匹配I/O 接口的功能设置缓冲信号电平转换 格式转换 时序控制地址译码I/O 接口作用:提供数据缓冲,完成信息格式的相容性变换,管理数据的传送,地址译码,设备选择64.1.2 基本组成接口电路的基本结构数据线控制线状态线DBCBAB数据输入寄存器(or 三态门)数据输出寄存器(锁存器)状态寄存器(or 三态门)命令寄存器译码电路控制逻辑接外设接主机74.1.2 基本组成1.数据输入/输出寄存器——暂存输入/输出的数据输入:数据总线连接所有外设,只有此设备此刻需要时才打开,平时关闭——三态门输出:输出数据的脉冲很短,外设来不及读(没准备好),放在锁存器中,让外设准备好,瞬间输出。
——锁存器2.命令寄存器——存放控制命令,用来设定接口功能、工作参数和工作方式。
3.状态寄存器——保存外设当前状态,以供CPU 读取。
84.2 CPU 与I/O 的数据信号4.2.1 数据信息 4.2.2 状态信息4.2.3 控制信息C P UABDB IO/M WR RD接口数据状态控制外部设备94.2.1 数据信息1.数字量:二进制形式的数据键盘→主机,主机→打印机,主机→CRT2.模拟量:电压或电流A/D 模拟→数字: 0~5 V →00~FFD/A 数字→模拟:00~FF →0~5 V3.开关量:“开”、“闭”0 →关(电机)1 →开(电机)4.脉冲量:计数脉冲、定时脉冲或控制脉冲104.2.2 状态信息1.Ready 准备,输入数据Ready=1 输入数据,准备就绪Ready=0 输入数据,没准备就绪2.Busy 输出设备,忙Busy=1 忙,没空接收数据Busy=0 不忙,有空接收数据114.2.3 控制信息OUT 、IN微机外设外设微机OUT IN 输出输入124.3 I/O 端口的寻址方法寻址方法的选择:一般根据所使用的芯片确定。
LESSON1_单片机IO口介绍

T1 P0.n D Q MUX
VCC
内部总线 写锁存器
T2
P0口 P0口 引脚
CLK Q
读引脚
2、P0作为地址/数据总线 ----真正的双向口 P0作为地址/ P0引脚输出地址/ P0引脚输出地址/输入数据 引脚输出地址 输入信号是从引脚通过输入缓冲器进入内部总线 内部总线。 输入信号是从引脚通过输入缓冲器进入内部总线。 此时,CPU自动使MUX向下 并向P0口写“ , 自动使MUX向下, P0口写 此时,CPU自动使MUX向下,并向P0口写“1”,“读引 控制信号有效,下面的缓冲器打开, 脚”控制信号有效,下面的缓冲器打开,外部数据读入内 部总线。 部总线。 地址/ 地址/数据 VCC
单片机I/O口的使用 单片机I/O口的使用
对单片机的控制,其实就是对I/O口的控制, 对单片机的控制,其实就是对I/O口的控制, 无论单片机对外界进行何种控制,或接受 外部的何种控制,都是通过I/O口进行的。 外部的何种控制,都是通过I/O口进行的。 51单片机总共有P0、P1、P2、P3四个8位双 51单片机总共有P0、P1、P2、P3四个8 向输入输出端口,每个端口都有锁存器、 输出驱动器和输入缓冲器。4 I/O端口都 输出驱动器和输入缓冲器。4个I/O端口都 能作输入输出口用,其中P0和P2通常用于 能作输入输出口用,其中P0和P2通常用于 对外部存储器的访问。
二、P3 P3第二功能(Q=1) P3 此时引脚部分输入(Q=1、W=1) ,部分输出(Q=1、W输出)
第二输出功能 第二输出功能 读锁存器 VCC
。
W
R P3.n P3口
D Q
内部总线 写锁存器
T
CLK Q
单片机IO口工作原理

单片机I/O口工作原理一、P0端口的结构及工作原理P0端口8位中的一位结构图见下图:由上图可见,P0端口由锁存器、输入缓冲器、切换开关、一个与非门、一个与门及场效应管驱动电路构成。
再看图的右边,标号为P0.X引脚的图标,也就是说P0.X引脚可以是P0.0到P0.7的任何一位,即在P0口有8个与上图相同的电路组成。
下面,我们先就组成P0口的每个单元部份跟大家介绍一下:先看输入缓冲器:在P0口中,有两个三态的缓冲器,在学数字电路时,我们已知道,三态门有三个状态,即在其的输出端可以是高电平、低电平,同时还有一种就是高阻状态(或称为禁止状态),大家看上图,上面一个是读锁存器的缓冲器,也就是说,要读取D锁存器输出端Q的数据,那就得使读锁存器的这个缓冲器的三态控制端(上图中标号为…读锁存器‟端)有效。
下面一个是读引脚的缓冲器,要读取P0.X引脚上的数据,也要使标号为…读引脚‟的这个三态缓冲器的控制端有效,引脚上的数据才会传输到我们单片机的内部数据总线上。
D锁存器:构成一个锁存器,通常要用一个时序电路,时序的单元电路在学数字电路时我们已知道,一个触发器可以保存一位的二进制数(即具有保持功能),在51单片机的32根I/O口线中都是用一个D触发器来构成锁存器的。
大家看上图中的D锁存器,D端是数据输入端,CP是控制端(也就是时序控制信号输入端),Q是输出端,Q非是反向输出端。
对于D触发器来讲,当D输入端有一个输入信号,如果这时控制端CP没有信号(也就是时序脉冲没有到来),这时输入端D的数据是无法传输到输出端Q及反向输出端Q非的。
如果时序控制端CP的时序脉冲一旦到了,这时D端输入的数据就会传输到Q及Q非端。
数据传送过来后,当CP时序控制端的时序信号消失了,这时,输出端还会保持着上次输入端D的数据(即把上次的数据锁存起来了)。
如果下一个时序控制脉冲信号来了,这时D端的数据才再次传送到Q端,从而改变Q端的状态。
多路开关:在51单片机中,当内部的存储器够用(也就是不需要外扩展存储器时,这里讲的存储器包括数据存储器及程序存储器)时,P0口可以作为通用的输入输出端口(即I/O)使用,对于8031(内部没有ROM)的单片机或者编写的程序超过了单片机内部的存储器容量,需要外扩存储器时,P0口就作为…地址/数据‟总线使用。
第1节 通用IO接口基本概念及连接方法

第1节通用I/O接口基本概念及连接方法1.I/O接口的概念I/O接口,即输入输出接口,是微控制器同外界进行交互的重要通道。
这里的接口英文是port,也可以翻译为“端口”,另一个英文单词是 interface,也翻译为接口。
从中文字面看,接口与端口似乎有点区别,但在嵌入式系统中它们的含义是相同的。
有时I/O引脚称为接口(interface),而把用于对I/O引脚进行编程的寄存器称为端口(port),实际上它们是紧密相连的。
因此,不必深究它们之间的区别。
有些书中甚至直接称I/O接口(端口)为I/O口。
在嵌入式系统中,接口千变万化,种类繁多,有显而易见的人机交互接口,如操纵杆、键盘、显示器;也有无人介入的接口,如网络接口、机器设备接口。
2.通用I/O第一章中已经介绍了什么是通用I/O,这里再回顾一下。
所谓通用I/O,也记为GPIO(General Purpose I/O),即基本的输入/输出,有时也称并行I/O,或普通I/O。
它是I/O的最基本形式。
本书中使用正逻辑,电源(Vcc)代表高电平,对应数字信号“1”;地(GND)代表低电平,对应数字信号“0”。
作为通用输入引脚,MCU内部程序可以通过端口寄存器读取该引脚,知道该引脚是“1”(高电平)或“0”(低电平),即开关量输入。
作为通用输出引脚,MCU内部程序通过端口寄存器向该引脚输出“1”(高电平)或“0”(低电平),即开关量输出。
大多数通用I/O引脚可以通过编程来设定工作方式为输入或输出,称之为双向通用I/O。
3.上拉下拉电阻与输入引脚的基本接法芯片输入引脚的外部有三种不同的连接方式:带上拉电阻的连接、带下拉电阻的连接和“悬空”连接。
通俗地说,若MCU的某个管脚通过一个电阻接到电源 (Vcc)上,这个电阻被称为“上拉电阻”。
与之相对应,若MCU的某个管脚通过一个电阻接到地(GND)上,则相应的电阻被称为“下拉电阻”。
通过这种做法,将不确定的信号通过一个电阻嵌位在高电平或低电平,电阻同时起限流作用。
《基本的IO接口》课件

# 基本的IO接口 什么是IO? - IO 即输入/输出
IO操作分类
1
读取数据
从输入流中获取数据
写入数据
2
向输出流中写入数据
3
关闭IO流
正确关闭流以释放资源
IO流的分类
字节流
通过8位字节读写数据,适用于任意类型的文件
字符流
以16位字符为单位读写数据,适用于文本文件及其他字符表示的文件
总结
1 IO的基本操作和分类
了解IO的基本操作以及流 的分类
2 字节流和字符流的区
别
理解字节流和字符流的特 点和适用场景
3 输入流和输出流的区
别
区分输入流和输出流的功 能和用途
4 流的创建和关闭方法
掌握创建和关闭流的常用方法
5 实例展示
通过实例演示IO的应用场景和操作
输入流和输出流
1
输入流
从源读取数据
2
输出流
将数据写入目标
流的创建和关闭
1 创建流的方法
调用相用try-with-resources或手动调用close()方 法关闭流
IO实例展示
读取文件
通过输入流读取文件内容
写入文件
通过输出流向文件写入内容
复制文件
使用输入流读取文件内容,然后 使用输出流写入到目标文件
I O接口

查询输出的编程
1,上一数据处理结束,ACK的负跳变 恢复 使D触发器复"0" ,上一数据处理结束, 的负跳变 恢复)使 触发器复 触发器复" " 的负跳变(恢复 输出装置,启动信号= 恢复 恢复)→ 输出装置,启动信号=0(恢复 →缓冲器输出 Busy=0; ; 2,查询状态信号,执行 指令 IN AL,状态口 ,查询状态信号, , Busy(bit7) →AL 3,若Busy =0,执行指令 OUT 数据口,AL, , 数据口, , , 输出数据AL → DB → 锁存器→ 输出装置; 锁存器→ 输出装置; 输出数据 D触发器置 ,启动输出装置 触发器置1,启动输出装置Busy=1,禁止输出 触发器置 , POLL: IN : TEST JNE MOV OUT AL,STATUS_PORT , AL,80H , POLL AL,STORE ;从数据区取数 , DATA_PORT,AL ,
查询输入接口电路(组成) 查询输入接口电路(组成)
IN AL, DATA_PORT ,
M/ IO RD
数据
输 入 装 置
锁 存 器
三态 缓冲 器
DB
D7
数据端口 +5V 状态端口
三态 DRQ Ready 缓冲 器
地址 译码
AB
选通
RD M/ IO
工作原理
IN AL, , STATUS_PORT
1,数据准备好,选通信号输出正跳变将 ,数据准备好, 数据→ 数据→锁存器
二,查询传送 CPU需不断查询外设的状态,一旦外设满足数据传送的条 需不断查询外设的状态, 查询外设的状态 就执行IN或 指令, 件,就执行 或OUT指令,读入或输出数据. 指令 读入或输出数据.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注:当I/O端口作为输入使 用时,需先向端口写入“1”, 使内部的FET截止,再读入 引脚的状态。
你知道这是 为什么吗?
小
结
本章要求: 了解MCS-51单片机的内部编程结构,这是应用单片机 的基本前提; 掌握独具特色的MCS-51单片机存储器组织及I/O口组 织、内部存储单元、特殊功能寄存器的特性与特点, 这是本章的一个重要内容; 掌握单片机的复位方式、复位电路及复位状态; 掌握MCS-51单片机基本I/O口的特性; 掌握振荡周期、状态周期、机器周期和指令周期的基 本概念; 了解单片机节电工作方式。
P2
8031
P0 ALE
A15~A0
A15~A0
74LS373
ROM
PD/PGM A7~A0
RAM
RD WR
A7~A0
PSEN EA RD WR
并行输入和输出端口P3
P3口作为通用I/O时,为准双向输入输出 端口。 P3口的第二功能。 · P3.0 串行输入口(RXD) · P3.1 串行输出口(TXD) · P3.2外中断0(INT0) · P3.3外中断1(INT1) · P3.4定时/计数器0的外部输入口(T0) · P3.5定时/计数器1的外部输入口(T1)
举例1:P1口作为输出口,原本无需接上来电阻,这里是为了 增强P1口的驱动能力。 +5V
ORG 0000H START:MOV P1,#00H ACALL DELAY MOV P1,#0FFH ACALL DELAY SJMP START DELAY: MOV R3,#0FFH DEL2: MOV R4,#0FFH
1.4 MCS-51系列单片机的基本I/O口
8051有4组8位I/O口:P0、P1、P2和P3口,其中 P1、P2和P3为准双向口,P0口则为双向三态输入输出口。
并行输入和输出端口P0
双向三态输入输出端口。 P0口身兼两职,既可作为地址总 线(AB0-AB7),也可作为数据总 线(DB0-DB7)。 作为通用I/O时,是一个漏极开路 电路。需外接上拉电阻。 作为地址/数据总线使用时,不需 处接上拉电阻。 P0可驱动8个LSTTL,其它P口可 以驱动4个LSTLL。
其二是:读P1口线状态时, 打开三态门G,将外部状态读入 CPU。
P1口某位结构
P1口电路中包含有一个数据输出锁存器、一个三态数据输入缓冲器、一 个数据输出的驱动电路。 P1口的功能和驱动能力
P1口只可以作为通用的I/O口使用;
P1可以驱动4个标准的TTL负载电路; 注意在P1口作为通用的I/O口使用时,在从I/O端口读入数据时,应该首 先向相应的I/O口内部锁存器写“1”。 举例:从P1口的低四位输入数据 MOV MOV P1,#00001111b ;;先给P1口底四位写1 A,P1 ;;再读P1口的底四位
MCS-51单片机P3口的第二功能
引脚 P3.0 P3.1 P3.2 第二功能 RXD(串行口输入) TXD(串行口输出) INT0(外部中断0输入)
P3.3
P3.4 P3.5 P3.6 P3.7
INT1(外部中断1输入)
T0(定时器0的外部输入) T1(定时器1的外部输入) WR(片外数据存储器写选通控制输出) RD(片外数据存储器读选通控制输出)
VC C
8 7 6 5 4 3 2 1
并行输入和输出端口P1
P1口为8位准双向输入输出 端口。
作为输入口使用时,有两种 情况。
其一是:首先是读锁存器的 内容,进行处理后再写到锁存 器中,这种操作即读—修改— 写 操 作 , 象 JBC( 逻 辑 判 断 ) 、 CPL(取反)、INC(递增)、DEC( 递减)、ANL(与逻辑)和ORL(逻 辑或)指令均属于这类操作。
第二功能和原功能之间要有一个切换的过程,或者 说要有一条指令,事实上,各端口的第二功能完全 是自动的,不需要指令的切换。如P3.6P3.7分别是 WR、RD信号,当微处理器外接RAM或ROM或接 口芯片时,它们被用作第二功能,不能作通用的 I/O口使用,只要执行MOVX指令就会有相应的信 号从P3.6或P3.7口输出,不需要事先用指令说明。 事实上“不能作通用I/O口使用”也并不是“不能” 而是(使用者)“不会”将其作为通用I/O口使用。 你完全可以在指令中安排一条setb p3.7 指令,并 且当单片机执行到这条指令时,也会使P3.7变高, 但使用者一般不会这么去做,因为这样会导致系统 的死机。
并行输入和输出端口P2
P2口作为通用I/O时,准 双向输入输出端口。 P2口作为高8位地址总线 ,AB8-AB15。
P2口与P0一起构成单片 机与外电路相连接的扩展端 口。通常可以用来扩展存储 器、及与其它总线型连接方 式的外设。
P2可以驱动4个标准的TTL 负载电路。
利用P0、P2端口扩展SRAM、EPROM存储器
P0口电出的驱动电路和一个输出控制电路。 P0口的功能与驱动能力 P0口可以作为通用的I/O口; P0口可以作为单片机系统的地址/数据线使用; P0可以驱动8个标准的TTL负载电路。
注意在P0口作为通用的I/O口时,必须外接上拉电阻(如下图)。
ALE 1 1
+5 V 4.7 k W
S0
读端口:
89C51
P3. 0 P3. 1 寄存器A P3. 2 P3. 3 P3. 4
MOV P3, #11111111B MOV A, P3
P3.4
0 1 1 1 1 1 1 1 1 ××××××××
1 1 1 1 1 1
P3. 5
P3. 6 P3. 7 WR RD
ALE P1. 0 P1. 1 P1. 2 P1. 3 P1. 4 P1. 5 P1. 6 P1. 7 WR RD 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
DEL1: NOP DJNZ R4,DEL1
DJNZ R3,DEL2
RET END
PX口输入举例
你知道P3.4 对应寄存器A 哪一位吗?
· P3.6外部数据存储器写选通(WR)
· P3.7外部数据存储器读选通(RD)
P3口电路中包含有一个数据输出锁存器、两个三态数据输入 缓冲器、一个数据输出的驱动电路和一个输出控制电路。 P3口的功能和驱动能力 P3口可以作为通用的I/O口使用; 可以作为单片机系统的第二功能的输入和输出。 P3口可以驱动4个标准的TTL负载电路。 注意在P3口的使用时,首先要考虑第二功能的要求。 初学者可能对P3口的第二功能的用法有些疑惑,在他们看: