怎么用php做网站后台程序,企业网站 优秀,应急管理部,文网文许可证【微机原理及接口技术】可编程并行接口芯片8255A 文章目录 【微机原理及接口技术】可编程并行接口芯片8255A前言一、8255A的内部结构和引脚1.与外设接口#xff08;数据端口#xff09;2.与处理器接口 二、8255A的工作方式三、8255A的编程1. 写入方式控制字#xff1a;控制字…【微机原理及接口技术】可编程并行接口芯片8255A 文章目录 【微机原理及接口技术】可编程并行接口芯片8255A前言一、8255A的内部结构和引脚1.与外设接口数据端口2.与处理器接口 二、8255A的工作方式三、8255A的编程1. 写入方式控制字控制字格式2. 读写数据端口3. 读写端口C 四、8255A的应用1.开关量的检测2.LED数码管的驱动3.多个LED数码管的显示 总结 前言
本篇文章就8255芯片展开包括8255A的内部结构和引脚8255A的工作方式8255A的编程8255A的应用等展开详细介绍。 并行数据传输方式 以计算机的字长通常是8位、16位或32位为传输单位一次传送一个字长的数据 适合于外部设备与微机之间进行近距离、大量和快速的信息交换 例如微机与并行接口打印机、磁盘驱动器 微机系统中最基本的信息交换方法 例如系统板上各部件之间接口电路板上各部件之间
8255A简介 包括四个端口——1个控制端口3个数据端口 还包括端口的译码和控制电路、中断控制电路 包括三种输入输出工作方式
一、8255A的内部结构和引脚 1.与外设接口数据端口 端口APA0PA7 A组支持工作方式0、1、2 端口BPB0PB7 B组支持工作方式0、1 端口CPC0PC7 仅支持工作方式0 A组控制高4位PC4PC7 B组控制低4位PC0PC3 端口APA0PA7 常作数据端口功能最强大 端口BPB0PB7 常作数据端口 端口CPC0PC7 可作数据、状态和控制端口 分两个4位每位可独立操作 控制最灵活最难掌握 2.与处理器接口 二、8255A的工作方式
方式0基本输入输出 端口A、端口B、端口C高4位和低4位——输入口或输出口 适用于无条件传送和查询方式的接口电路方式1选通输入输出 端口A、端口B——输入口或输出口 端口C——端口A和端口B的联络信号、输入口或输出口 适用于查询和中断方式的接口电路方式2双向选通输入输出 端口A——输入口和输出口 端口C——一部分作为端口A的联络信号 适用于双向传送数据的外设 适用于查询和中断方式的接口电路
方式1输入引脚A端口 方式1输入引脚B端口
方式1输入联络信号 方式1需借用端口C用做联络信号同时还具有中断请求和屏蔽功能 STB——选通信号低电平有效* 由外设提供的输入信号当其有效时将输入设备送来的数据锁存至8255A的输入锁存器 IBF——输入缓冲器满信号高电平有效 8255A输出的联络信号。当其有效时表示数据已锁存在输入锁存器 INTR——中断请求信号高电平有效 8255A输出的信号可用于向CPU提出中断请求要求CPU读取外设数据 方式1中断控制 8255A的中断由中断允许触发器INTE控制 置位允许中断复位禁止中断 对INTE的操作通过写入端口C的对应位实现只要对那一位置位/复位就可以控制INTE触发器 选通输入方式下 端口A的INTEA对应PC4 端口B的INTEB对应PC2
方式1输出引脚A端口
方式1输出引脚B端口 方式1输出联络信号 OBF——输出缓冲器满信号低有效* 8255A输出给外设的一个控制信号当其有效时表示CPU已把数据输出给指定的端口外设可以取走 ACK——响应信号低有效* 外设的响应信号指示8255A的端口数据已由外设接收 INTR——中断请求信号高有效 当输出设备已接收数据后8255A输出此信号向CPU提出中断请求要求CPU继续提供数据 三、8255A的编程 初始化过程中写入方式控制字 利用控制端口地址A1A011 工作过程中 通过数据端口来读写外设数据 利用端口A、B和C的地址A1A0依次等于00、01、10 通过控制端口来写入端口C的位控制字 利用控制端口地址A1A011 通过端口C来读取状态信息 利用端口C的地址A1A010 1. 写入方式控制字控制字格式 2. 读写数据端口
初始化编程后 当数据端口作为输入接口时CPU执行IN指令将从输入设备得到外设数据 当数据端口作为输出接口时CPU执行OUT指令将把CPU的数据送给输出设备 8255A具有锁存输出数据的能力 对输出方式的端口同样可以输入 不是读取外设数据 读取的是上次CPU给外设的数据
读写数据端口示例 利用8255A的输出锁存能力可实现按位输出控制 对输出端口B的PB7位置位的程序段 mov DX,FFFDH ;设B端口地址为FFFDH in AL,DX ;读出B端口原输出内容 or AL,80H ;使PB71 out DX,AL ;输出新的内容
3. 读写端口C
归纳1 C端口被分成两个4位端口两个端口只能以方式0工作可分别选择输入或输出 在控制上C端口高4位和A端口编为A组C端口低4位和B端口编为B组
归纳2 当A和B端口工作在方式1或方式2时C端口的部分或全部引脚将被征用 其余引脚仍可设定工作在方式0
归纳3 对端口C的数据输出有两种办法 利用端口C的地址 向C端口直接写入字节数据。这一数据被写进C端口的输出锁存器并从输出引脚输出但对设置为输入的引脚无效——字节操作 利用控制端口地址 向控制端口写入端口C的位控制字使C端口的某个引脚输出1或0或置位复位内部的中断允许触发器——位操作 端口C的位控制字 归纳4 读取的C端口数据有两种情况 未被A和B端口征用的引脚 将从定义为输入的部分上半部或下半部读到引脚输入信息 将从定义为输出的部分上半部或下半部读到输出锁存器中的信息 被A和B端口征用作为联络线的引脚 将读到反映8255A状态的状态字 四、8255A的应用
作为通用的并行接口电路芯片8255A具有广泛的应用 应用在IBM PC/XT微机上 应用于打印机接口电路 连接简易键盘 驱动LED数码管 ……
1.开关量的检测
例在工业控制过程中经常需要检测某些开关的状态。例如在某一系统中有8个开关K7K0要求不断地检测它们的通断状态并随时在发光二极管上显示。通过8255A的端口A读入开关状态信息使端口B、端口C连接的发光二极管的状态与端口A开关状态相呼应并重复执行。假设8255A在系统中端口A、B、C及控制口的地址分别为100H101H102H103H试设计出硬件电路图并编写初始化程序。 (1) 硬件电路 (2) 相应的8255A程序为 MOV DX103H 控制端口地址送给DX MOV AL 10010000B 控制字 OUT DXAL 写入控制字 L1 MOV DX100H 端口A地址送给DX IN ALDX 从端口A读入开关状态 MOV DX101H 端口B地址送给DX OUT DXAL 从端口B输出控制LED XOR AL 0FFH AL← AL取反 MOV DX102H 端口C地址送给DX OUT DX AL 从端口C输出 JMP L1 循环
2.LED数码管的驱动
发光二极管LED是最简单的显示设备 由7段LED就可以组成的LED数码管 LED数码管广泛用于单板微型机、微型机控制系统及数字化仪器中 LED数码管可以显示内存地址和数据等 (1) LED数码管的工作原理 主要部分是7段发光管 顺时针分别称为a、b、c、d、e、f、g 有的产品还附带有一个小数点h 通过7个发光段的不同组合 主要显示09 也可以显示AF实现16进制数的显示 还可以显示个别特殊字符如、P 等 LED数码管的结构 (2) 单个LED数码管的显示
3.多个LED数码管的显示
8个数码管用2个8位输出端口控制 硬件上用公用的驱动电路来驱动各数码管 软件上用扫描方法实现数码显示
段控制端口电路 位控制端口电路 控制哪个位数码管显示 共阴极时当位控制端口的控制码某位为高电平时经反相驱动便在相应数码管的阴极加上了低电平这个数码管就可以显示数据
段控制端口作用 控制一个数码管显示什么数码 段控制端口送给数码管要显示字形的段码 段控制端口由所有数码管共用 通过位、段控制端口的共同作用才能确定哪个数码管显示什么数码 总结
到这里这篇文章的内容就结束了谢谢大家的观看如果有好的建议可以留言喔谢谢大家啦