首页 > 编程知识 正文

51单片机和8255a,没有编程基础怎么入门

时间:2023-05-05 20:18:18 阅读:155350 作者:2849

8255A

可编程并行I/O接口芯片8255A

7.2可编程并行接口

因为我们目前常用的微机系统都是采用并行方式处理数据,所以并行接口也是最常用的接口电路。 并行接口具有以下特征:

(1)并行接口是指在多条数据线上,以数据字节(字)为单位与输入输出设备或被控制对象传输信息接口,例如打印机接口、A/D、D/A转换器接口、IEEE 在实际的APP应用中,如果需要在CPU和外围设备之间同时传输两位数以上的信息,则需要采用并行端口。

并行端口适用于近距离传输。 各种I/O设备和被控对象多为并行数据线连接,CPU通过并行端口构成APP应用系统很方便,因此应用非常普遍。

)并行传输的信息不要求固定格式。 数据格式的要求与串行传输的信息不同。 例如,异步串行通信的格式是包含开始位、数据位、奇偶校验位和停止位的数据。

)3)从并行接口的电路结构来看,并行端口有硬线连接接口和可编程接口之分。 硬编码连接接口的工作方式和功能通过硬编码连接进行设置,不能更改用软件编写程序的方式; 如果能用软件编制程序的方法改变接口的结构和功能,就叫做可编程接口。

7.2.1可编程并行接口芯片8255A

可编程是指实际上是可以选择的。 例如,选择连接到外围设备的芯片的哪个数据端口或几个数据端口。 选择端口的哪一位或几位作为输入,哪一位或几位作为输出; 用户可以通过向程序中写入方式字或控制字来指定端口和CPU之间采用何种方式传输数据等。 因此,它们具有广泛的适应性和高度的灵活性,在微机系统中得到了广泛的应用。

1.Inter 8255A的基本特性

)1) 2个8位(a端口和b端口)和2个4位(c端口的高/低4位)并行输入/输出端口,c端口可按位操作。

)2)有三种工作方法。

方式0――基本输入输出(a、b、c端口均);

方式1――栅极输入/输出(有a、b端口);

方式2――双向门输入输出(有a端口)。

)3)可以通过程序设置各种工作方式,查询各种工作状态。

)4)方式1和方式2时,c端口为a端口、b端口的联络线。

)5)内部有用于CPU访问的控制寄存器、状态寄存器、数据寄存器。

)6)有插队申请能力,但无插队管理能力

)7) 40针、5V供电,与TTL等级兼容。

2.8255A的外部引线和内部结构

8255A采用单5V电源供电,40针双列直插式组件,其外部导线如图7-2所示。

)1)外部引线

作为接口电路的8255A具有主机系统总线和外围设备的双向连接能力,且其管脚是为了满足该连接要求而提供的。

面向系统总线的信号线如下。

D7~D0 :双向数据线。 CPU通过它向8255A发送命令、数据; 8255A通过此向CPU发回状态、数据。

CS )芯片选择信号线,该信号为低电平有效,并通过I/O地址解码器从系统地址总线生成。 只有在CPU通过发送高位地址信号而变为低电平时,才能对8255A进行读写操作。 CS为高电平时,切断CPU和芯片的连接。

A1,A0 )通过芯片内部的端口地址信号线,连接到系统地址总线的低位。 该信号用于寻址8255A内部寄存器。 两位地址可以形成片内的四个端口地址。

RD :读取信号线,该信号的低电平有效。 CPU通过执行IN命令将数据或状态信号从8255A读出到CPU并发送信号。

WR :写信号线。 该信号低电平有效。 CPU通过执行OUT命令发送写入信号,将命令代码或数据写入8255A。

RESET :复位信号线,该信号的高电平有效。 清除控制寄存器,将8255A的a、b、c三个端口全部设为输入法。 输出寄存器和状态寄存器被复位,中断请求被屏蔽。 24条面向外围设备的信号线处于高电阻浮动状态。 在用方式命令之前,这种状态不会改变。 进入用户需要的工作方式。

面制I/O设备的信号线如下所示。

PA0~PA7 :端口a的输入输出线

PB0~PB7 :端口b的输入输出线

PC0~PC7 :端口c的输入输出线

这24条信号线均可用于连接I/O装置,通过它们可传输数字电容信息和通断电容信息。

)2) 8255A的内部结构

8255A的内部结构如图7-3所示。 JAVA动画说明]由以下四个部分组成。

数据总线缓冲器

这是三态双向8位缓冲器,用于8255A和CPU系统数据总线的接口。 所有数据的发送接收,以及来自CPU的控制字和来自8255A的状态信息通过该缓冲区进行传送。

读写控制逻辑

所述读取/写入控制逻辑包括读取信号RD、写入领带WR、芯片选择信号CS和端口选择信号A1A0等。 读写控制逻辑控制总线的开放和关闭以及信息传输的方向,将CPU的控制命令或输出数据传送到适当的端口; 将外围设备的信息和输入数据通过合适的端口发送到CPU。

8255A的基本操作和TP86A、PC/XT、扩展板的端口地址见表7-2。

数据侧

口A、B、C
  8255A包括3个8位输入/输出端口(POPT)。每个端口都有一个数据输入寄存器和一个数据输出寄存器,输入时端口有三态缓冲器的功能,输出时端口有数据锁存器功能。在实际应用中,PC口的8位可以分为两个4位端口(方式0下),也可以分成一个5位端口和一个3位端口(方式1下)来使用。
  ④A组和B组控制电路
  控制A、B和C3个端口的工作方式,A组控制A口和C口的上半部(PC7~PC4),B组控制B口和C口的下半部(PC3~PC0)的工作方式和输入/输出。A组、B组的控制寄存器还接收按位控制命令,以实现对PC口的按位置位/复位操作。
  
  3.8255A的编程命令
  8255A的编程命令包括工作方式控制字和对PC口的按位操作控制字两个命令,它们是用户使用8255A来组建各种接口电路的重要工具。
  由于这两个命令都是送到8255A的同一个控制端口,为了让8255A能识别是哪个命令,故采用特征位的方法。若写入的控制字的最高位D7=1,则是工作方式控制字;若写入的控制字D=0,则是PC口的宾位置位/复位控制字。
  (1)工作方式控制字
  作用:指定3个并行端口(PA、PB、PC)是作输入还是作输出端口以及选择8255的工作方式。
  格式及每位的定义如下:
  
  例如,要把A口指定为方式1,输入;C口上半部定为输出;B口指定为方式0,输出;C口下半部定为输入。于是,工作方式字是:1O110001B或B1H。
  若将此控制字的内容写到8255A的控制寄存器,即实现了对8255A工作方式的指定,或叫做完成了对8255A的初始化。初始化的程序段为:
  MOV DX,303H ;8255A控制口地址
  MOV AL,0B1H ;初始化(工作方式)控制字
  OUT DX,AL ;送到控制口
  (2)PC口按位置/复位控制字
  作用:指定PC口的某一位输出高电平还是低电平。
  格式及每位的定义如下:
  
  利用按位置位/复位控制字可以使PC口的8根线中的任意一根置成高电平输出或低电平输出。
  例如,若要把C口的PC2引脚置高(置位),则命令字应该为00000101B或05H。
  将该命令字的内容写入8255A的命令寄存器,就实现了将PC口的PC2引脚置位的操作:
  MOV DX, 303H ;8255A控制口地址
  MOV AL, 05H ;使PC2=1的控制字
  OUT DX, AL ;送到控制口
  按位置位/复位命令产生的输出信号,可作为控制开关的通/断、继电路的吸合/释放、马达的启/停等操作的选通信号。
  另外,在后面将要讨论的8255A的状态字中的中断允许位INTE的置位和复位,即允许8255A提出中断与禁止8255A提出中断,也是采用这个按位控制的命令字来实现的。

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。