《51单片机8255A扩展IO口与单片机连接.ppt》由会员分享,可在线阅读,更多相关《51单片机8255A扩展IO口与单片机连接.ppt(23页珍藏版)》请在第壹文秘上搜索。
1、一个芯片可扩展多个并行一个芯片可扩展多个并行I/OI/O口口可用软件改变接口的功能可用软件改变接口的功能可直接与单片机连接,可直接与单片机连接,进行并行数据传送进行并行数据传送7.5 7.5 可编程并行可编程并行I/OI/O口的扩展口的扩展 8255A和和8155是两种常用的可编程并行是两种常用的可编程并行I/O 口的扩展芯口的扩展芯片,优点是:片,优点是:学习要点:学习要点: 理解并行通信理解并行通信 概念及特点,掌握概念及特点,掌握8255A8255A的功能、工作方式、编程方的功能、工作方式、编程方法及其应用。法及其应用。 单片机单片机8255A外设外设 8255A 8255A是是Inte
2、lIntel系列的可编程并行接口芯片,扩展一片系列的可编程并行接口芯片,扩展一片可获得可获得3 3个个8 8位的并行位的并行I/OI/O口,是一种单片机与外设之间的接口,是一种单片机与外设之间的接口电路。口电路。1. 8255A1. 8255A的结构及引脚功能的结构及引脚功能 8255A8255A为为4040引脚的双列直插式(引脚的双列直插式(DIPDIP)封装)封装(1 1)引脚功能)引脚功能 D0 D0D7D7为数据线,与单片机的数据为数据线,与单片机的数据总线连接,传数据、命令等。总线连接,传数据、命令等。 PA0 PA0PA7PA7(PAPA口)、口)、PB0PB0PB7PB7(PBP
3、B口)、口)、PC0PC0PC7PC7(PCPC口)为口)为3 3个个8 8位并行位并行I/OI/O口,用于口,用于8255A8255A与外设之间传数据。与外设之间传数据。 读写控制逻辑线读写控制逻辑线CSRDWR片选信号,接单片机的地址总线片选信号,接单片机的地址总线读信号,接单片机的读信号读信号,接单片机的读信号写信号,接单片机的写信号写信号,接单片机的写信号RESETRESET复位信号,接单片机的复位复位信号,接单片机的复位 A1 A1、A0 A0 端口选择信号,接单片机的端口选择信号,接单片机的地址总线,与片选地址总线,与片选/CS/CS一起,确定一起,确定8255A8255A访问访问
4、的端口地址。的端口地址。(2)内部结构)内部结构A组控制组控制B组控制组控制PA口口PC口高四位口高四位PB口口PC口低口低4位位 读读/ /写控制逻辑写控制逻辑接收接收CPUCPU传来的控制信号,以控制传来的控制信号,以控制8255A8255A的操作的操作CSWRA1、A0 、RESET 数据总线缓冲器数据总线缓冲器双向三态双向三态8 8位缓冲器,与单片机的数据总线直接相连位缓冲器,与单片机的数据总线直接相连 并行并行I/O端口端口 有有3个个8位并行位并行I/O口,口,PA、PB、PC它们可以被设置成输入或输出它们可以被设置成输入或输出 A、B组控制电路组控制电路 A、B两组控制电路将三个
5、端口两组控制电路将三个端口分成分成A、B两组。两组。 一片一片8255A占占4个端口地址:个端口地址:PA口、口、PB口、口、PC口、控口、控制口,由制口,由/CS、A1、A0决定决定。2. 8255A2. 8255A端口的寻址端口的寻址CS控制口控制口1 11 10 0PCPC口口1 01 00 0PBPB口口0 10 10 0PAPA口口0 00 00 0选选 择择A1 A0A1 A0CS、A1、A0接单片机的地址总线,构成单片机访问接单片机的地址总线,构成单片机访问8255A的的16位地址。位地址。 、A1A1、A0A0与地址总线的连接方案不同,端口地址不同。与地址总线的连接方案不同,端
6、口地址不同。CS片选地址片选地址片内地址片内地址16位总线访问地址位总线访问地址 = 片选地址片选地址 + 片内地址片内地址 PAFF7CH PBFF7DH PCFF7EH 控制口控制口FF7FHCS接接A7,A1、A0接接CPU的的A1、A0,则端口地址:,则端口地址: CSA1 A0A1 A08255A8255A没接的地址线设为没接的地址线设为1,则,则4个端口地址为:个端口地址为: 8031 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P0.7 P0.6 P0.5 P2.4 P0.3 P0.2 P0.1 P0.0 A15 A14 A13 A12 A11
7、 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0PA口:口: 0 0 0PB口:口: 0 0 1PC口:口: 0 1 0控制口:控制口: 0 1 1例如例如8255A端口地址的确定片内地址片内地址片选地址片选地址CS接接A15,A1、A0接接CPU的的A1、A0,则端口地址:,则端口地址: CSA1 A1 A0A08255A8255A没接的地址线设为没接的地址线设为1,则,则4个端口地址为:个端口地址为: 8031 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 P0.7 P0.6 P0.5 P2.4 P0.3 P0.2 P0.1 P0.0
8、A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0PA口:口: 0 0 0PB口:口: 0 0 1PC口:口: 0 1 0控制口:控制口:0 1 1例如例如8255A端口地址的确定片内地址片内地址片选地址片选地址 PA7FFCH PB7FFDH PC7FFEH 控制口控制口7FFFH3. 8255A3. 8255A的控制字的控制字8255A8255A有两个控制字:有两个控制字:工作方式控制字工作方式控制字PC口置口置/复位控制字复位控制字 这两个控制字都写到这两个控制字都写到8255A的控制口,用的控制口,用同一个端口地址采用特征位识别。
9、同一个端口地址采用特征位识别。D71,表示是工作方式控制字,表示是工作方式控制字 D70,表示是,表示是PC口置口置/复位控制字复位控制字工作方式控制字工作方式控制字PC置置/复位控制字复位控制字 工作方式控制字工作方式控制字 作用是用来设置作用是用来设置3个并行口作输入口还是作输出口、设置个并行口作输入口还是作输出口、设置8255A的工作方式的工作方式PA口有口有3种工作方式,种工作方式,PB口有口有2种工作方式,种工作方式,PC口只有一种工作方式口只有一种工作方式0在方式在方式1或方式或方式2,PC口自动作为口自动作为PA口、口、PB口的控制信号口的控制信号位为位为0,为输出口;为,为输出
10、口;为1,为输入口,为输入口8255A有三种工作方式:有三种工作方式: 方式方式0 基本输入基本输入/ /输出方式输出方式 方式方式1 选通输入选通输入/ /输出方式输出方式 方式方式2 双向输入双向输入/输出方式输出方式工作工作方式控制字方式控制字 标志位标志位 A 组方式设置组方式设置 A口口 C上上 口口 B 组方式组方式 B口口 C下下 口口 1 1 / 0 1 / 0 1 / 0 1 / 0 1 / 0 1 / 0 1 / 0 含义含义 方式方式 0、1、2 输入输入/输出输出 输入输入/输出输出 方式方式 0、1 输入输入/输出输出 输入输入/输出输出 工作方式控制字工作方式控制字
11、C 口口置置/复位控制复位控制字字 标志位标志位 不使用位不使用位 C 口位地址编码口位地址编码 位状态位状态 0 1 / 0 1 / 0 1 / 0 1 / 0 含义含义 一般取简码一般取简码 000 选择选择 PC7PC0 位位 置位置位 / 复位复位 PC PC口置口置/ /复位控制字复位控制字其作用是用来设置其作用是用来设置PC口某位输出高电平或低电平。口某位输出高电平或低电平。实现某些位控制,如启实现某些位控制,如启/停外设、开关的通停外设、开关的通/断、继电器的吸合断、继电器的吸合/释放等释放等 例例 设设8255A的控制口地址为的控制口地址为FF7FH,试编程,试编程设置:设置:
12、PA口为工作方式口为工作方式0输入,输入,PB口为工作方口为工作方式式0输出,输出,PC4PC7为输出,为输出,PC0PC3为输入。为输入。则工作方式控制字为则工作方式控制字为10010001B,其初始化程序:,其初始化程序: MOV DPTRMOV DPTR,#0FF7FH #0FF7FH ;控制口地址;控制口地址 MOV AMOV A,#91H #91H ;工作方式控制字;工作方式控制字 MOVX DPTR, A MOVX DPTR, A ;写控制字到控制口;写控制字到控制口PC置置/复位控制字复位控制字4. 8255A4. 8255A的工作方式的工作方式8255A有有3种工作方式:方式种
13、工作方式:方式0、方式、方式1、方式、方式2 方式方式0 0 基本输入基本输入/ /输出方式输出方式2个个8位位I/O口(口(PA、PB),),2个个4位位I/O口(口(PC口高口高4位、低位、低4位)位) 任意一个口可作输入口或输出口任意一个口可作输入口或输出口两种数据传送方式:两种数据传送方式:无条件传送方式无条件传送方式 不需任何应答联络信号。认为外设随时是准备好的,如键盘,显示器不需任何应答联络信号。认为外设随时是准备好的,如键盘,显示器查询传送方式查询传送方式需要联络信号,这时,需要联络信号,这时,PA、PB作数据口,人为定义作数据口,人为定义PC口作控制信号口作控制信号提供外设状态
14、、外设选通信号,可设置为提供外设状态、外设选通信号,可设置为4位作输入、位作输入、4位作输出位作输出 方式方式1 1 选通输入选通输入/ /输出方式输出方式PA口、口、PB口作输入口作输入/输出口,输出口,PC口自动提供固定关系的选通信号和应答信号口自动提供固定关系的选通信号和应答信号 A组:组: B组:组: PA口为数据口口为数据口 PC口高四位作联络信号口高四位作联络信号PB口为数据口口为数据口 PC口低四位作联络信号口低四位作联络信号 方式方式2 2双向输入双向输入/ /输出方式输出方式只有只有PA口能够设定为方式口能够设定为方式2,PA口为口为8位双向数据口,能读能写位双向数据口,能读
15、能写PC口的口的PC3PC7共共5位作位作PA口数据输入口数据输入/输出的联络信号输出的联络信号 PB口不能工作在方式口不能工作在方式2,仍可工作在方式,仍可工作在方式0或方式或方式1 三个口分成两组:三个口分成两组:A组、组、B组组 A口借用口借用C口的一些信号线用作控制和状态线,形成口的一些信号线用作控制和状态线,形成A组;组;B口借用口借用C口口的一些信号线用作控制和状态线,组成的一些信号线用作控制和状态线,组成B组。在方式组。在方式1下,下,A口和口和B口的输入口的输入输出均带有锁存。输出均带有锁存。PA口有方式口有方式0、1、2PB口有方式口有方式0、1,没有方式,没有方式2PC口只
16、有方式口只有方式0 8255 PC为控制口时各引脚功能为控制口时各引脚功能8255A PC 口各引脚服务功能定义表口各引脚服务功能定义表 端口端口 工作方式工作方式 PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 方式方式 1 输入输入 IBFA ASTB INTRA 方式方式 1 输出输出 AOBF AACK INTRA PA 方式方式 2 双向双向 AOBF AACK IBFA ASTB INTRA 方式方式 1 输入输入 BSTB IBFB INTRB PB 方式方式 1 输出输出 BACK BOBF INTRB AOBF 输出缓冲器满信号,输出缓冲器满信号,CPU已将数据送出,通知外设取。已将数据送出,通知外设取。 外设响应信号,表示外设已将数取走。外设响应信号,表示外设已将数取走。 AACKIBFA输入缓冲器满信号,即外设所送数据已装入锁存器。输入缓冲器满信号,即外设所送数据已装入锁存器。 选通输入脉冲信号,表示外设待输入数据已经准备好。选通输入脉冲信号,表示外设待输入数据已经准备好。 ASTBINTRA中断请求信号,为中断请求信号,为“1”时向时向CPU发出