并行通信接口技术.ppt_第1页
并行通信接口技术.ppt_第2页
并行通信接口技术.ppt_第3页
并行通信接口技术.ppt_第4页
并行通信接口技术.ppt_第5页
已阅读5页,还剩85页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

7.3 可编程并行接口,微型计算机与I/O设备的接口按照数据传送格式的不同,可分为并行接口和串行接口两种。 实现并行通信的接口就是并行接口 实现串行通信的接口就是串行接口,并行通信与串行通信 数据通信的基本方式可分为并行通信与串行通信两种: 并行通信:是指利用多条数据传输线将一个数据的各位同时传送。传输速度快,适用于短距离通信。 串行通信:是指利用一条传输线将数据一位位地顺序传送。通信线路简单,利用电话或电报线路就可实现通信,降低成本,适用于远距离通信,但传输速度慢。,以计算机的字长,通常是8位、16位或32位为传输单位,一次传送一个字长的数据 适合于外部设备与微机之间进行近距离、大量和快速的信息交换 例如:微机与并行接口打印机、磁盘驱动器 微机系统中最基本的信息交换方法 例如:系统板上各部件之间,接口电路板上各部件之间,并行通信的特点,串行通信的特点 将数据分解成二进制位用一条信号线,既传送数据信息,又传送控制信息 要求数据格式固定,分为异步和同步数据格式 串行通信中对信号的逻辑定义与TTL不兼容,需进行逻辑关系和逻辑电平转换 串行传送信息的速率需要控制,要求双方约定通信传输的波特率,可编程并行接口芯片8255A,18255A有两个8位(端口A与端口B)和两个4位(端口C高/低4位)的并行输入/输出端口 2端口A有三种工作方式:方式0、方式1、方式2;端口B口有两种工作方式:方式0、方式1;可适应CPU与I /O接口的多种数据传送方式,如无条件传送、查询式传送和中断方式传送等 3端口C的使用较特殊,除工作在方式0作为数据端口之外,当工作在方式1和方式2时,它的大部分引脚被用作联络信号,端口C还可以进行按位置位/复位操作,8255A的内部结构,1数据总线缓冲器 28位端口PA、PB和PC,端口A:PA0PA7 1个8位的数据输入锁存器和1个8位的数据输出锁存/缓冲器 端口B:PB0PB7 1个8位的数据输入缓冲器和1个8位的输入/输出、锁存/缓冲器 端口C:PC0PC7 1个8位数据输入缓冲器和1个8位输出锁存/缓冲器,也可以分两个4位端口使用,3A组和B组的控制电路 A组控制部件用来控制端口PA和端口PC的高4位(PC7PC4), B组控制部件用来控制端口PB和端口PC的低4位(PC3PC0)。 4读/写控制逻辑,8255A芯片的引脚信号,8255A为双列直插式封装,除了电源和地线以外,其外部引脚信号可分为两组,一组是面向CPU的信号,一组是面向外设的信号。,1.面向CPU一侧的引脚信号,D7D0:8位,双向,三态数据线 RESET:复位信号,复位后所有内部寄存器 清零,三个数据端口自动设为输入方式 CS*:片选信号 RD*:读信号 WR*:写信号 A1 、A0:端口选择信号,8255A的读/写操作控制,2.面向外设一侧的引脚信号,端口A:PA0PA7 A组,支持工作方式0、1、2 端口B:PB0PB7 B组,支持工作方式0、1 端口C:PC0PC7 仅支持工作方式0 A组控制高4位PC4PC7 B组控制低4位PC0PC3,8255A的工作方式,方式0:基本输入输出方式 适用于无条件传送和查询方式的接口电路 方式1:选通输入输出方式 适用于查询和中断方式的接口电路 方式2:双向选通传送方式 适用于与双向传送数据的外设 适用于查询和中断方式的接口电路,1.方式0,方式0的特点 (1)A口、C口的高4位、B口以及C口的低4位可分别定义为输入或输出,各端口互相独立,故共有16种不同的组合。 (2)定义为输出的口均有锁存数据的能力,而定义为输入的口则无锁存能力。 (3)在方式0下,C口有按位进行置位和复位的能力,方式0适合于两种情况:一种是无条件传送,另一种是查询方式传送,2. 方式1,一种选通的输入/输出工作方式 三个端口分为两组,即A组和B组 A组包括8位数据端口A和PC7PC3五位控制/状态端口,B组为8位数据端口B和PC2PC0三位状态控制端口 每一个8位数据端口均可设置为输入/输出方式,且两种工作方式均可锁存 控制/状态口除了指示两组数据口的状态及选通信号外,还可用做I/O口,如PC6和PC7,用位控方式传送,端口A方式1作输入:,数据选通信号 表示外设已经准备好数据,输入缓冲器满信号 表示A口已经接收数据,中断请求信号 请求CPU接收数据,端口B方式1作输入:,方式1输入联络信号定义,STB*选通信号,低电平有效 由外设提供的输入信号,当其有效时,将输入设备送来的数据锁存至8255A的输入锁存器 IBF输入缓冲器满信号,高电平有效 8255A输出的联络信号。当其有效时,表示数据已锁存在输入锁存器 INTR中断请求信号,高电平有效 8255A输出的信号,可用于向CPU提出中断请求,要求CPU读取外设数据 INTE 中断允许信号,高电平有效 用于控制中断允许或中断屏蔽,PC4(PC2)置1,允许中断,PC4(PC2)置0,禁止中断,8255A方式1作输入时的各联络信号对应关系,状态信号可以通过读取端口C得到(P287),8255A工作在方式1下的输入时序,端口A方式1作输出:,外设响应信号 表示外设已经接收到数据,输出缓冲器满信号 表示CPU已经输出了数据,中断请求信号 请求CPU再次输出数据,端口B方式1作输出:,方式1输出联络信号,OBF*输出缓冲器满信号,低有效 8255A输出给外设的一个控制信号,当其有效时,表示CPU已把数据输出给指定的端口,外设可以取走 ACK*响应信号,低有效 外设的响应信号,指示8255A的端口数据已由外设接受 INTR中断请求信号,高有效 当输出设备已接受数据后,8255A输出此信号向CPU提出中断请求,要求CPU继续提供数据 INTE 中断允许信号,高电平有效 用于控制中断允许或中断屏蔽,PC6(PC2)置1,允许中断,PC6(PC2)置0,禁止中断,8255A方式1作输出时的各联络信号对应关系,状态信号可以通过读取端口C得到(P287),8255A工作在方式1下的输出时序,3. 方式2(双向选通方式),(1)工作方式2只适用于A口,B口仍按方式0或方式1工作 (2) A口可工作于双向方式,C口的PC7PC3位作为A口的控制/状态信号端口,PC2PC0用于B组 (3)A口的输入/输出均有锁存功能。在方式2工作状态下,A口既可工作于查询方式,又可工作于中断方式 (4)状态字可以通过读C端口得到(P288),方式2的信号定义,用PC6设置INTE1(输出) 用PC4设置INTE2(输入) 输入和输出中断通过 或门输出INTRA信号,8255A工作在方式2下的工作时序,8255A的控制字,8255A有两种控制字: 方式控制字 端口C按位置位/复位控制字 由于使用同一个控制端口,控制字采用特征位的方法,控制字中最高位D7为特征位 D7=0:当前控制字是按位置位/复位控制字 D7=1,当前控制字是方式控制字。,工作方式选择控制字D7=1,方式控制字的作用是确定A、B、C 3个并行口的工作方式及端口功能,由方式控制字可知: 8255A有3种基本工作方式: 方式0基本的输入/输出方式。 方式1选通输入/输出方式。 方式2双向传输方式。 在方式1工作时,方式控制字总是把A、B、C 3个端口分为两组来设定工作方式。其中,A组为端口A和端口C的高4位(PC7PC4);B组为端口B和端口C的低4位(PC3PC0)。 端口A可工作于3种方式中的任一种,端口B只能工作于方式0或方式1。在方式0时,端口C可以分成2个4位端口,用作数据输入/输出端口;还可以分别用来为A端口、B端口输入/输出时提供控制信号和状态信号,例如果把端口A设定为方式1,输出,端口B设定为方式0,输入,端口C上半部设定为输入,下半部设定为输出,则方式选择控制字应为:10101010B=AAH。设控制口地址为303H,初始化的程序段为: MOV DX,303H ;8255A的控制口地址 MOV AL,AAH ;控制字,10101010 OUT DX,AL ;控制字写入控制端口,按位置位/复位控制字(D7=0),按位置位/复位控制字的作用是使端口C的某一位输出为高电平或低电平,以用于控制或应答信号。,例 如果要使端口C的PC4端输出高电平,则按位置位/复位控制字应为00001001B=09H,设控制口地址为63H,则程序段如下: MOV AL, 09H ;控制字,PC4置1 OUT 063H,AL ;控制字写入控制端口,8255A的编程,初始化编程 采用控制I/O地址:A1A011 工作过程中通过数据端口对外设数据进行读写 数据读写利用端口A、B和C的I/O地址,A1A0依次等于00、01、10 IBM PC/XT机上,端口A、B、C和控制端口的I/O地址为60H、61H、62H和63H,(1)写入方式控制字:示例,要求: A端口:方式1输入 C端口上半部:输出,C口下半部:输入 B端口:方式0输出 方式控制字:10110001B或B1H 初始化的程序段: MOV DX,303H ;假设控制端口为303H MOV AL,0B1H ;方式控制字 OUT DX,AL ;送到控制端口,(2)读写数据端口,初始化编程后: 当数据端口作为输入接口时,执行输入IN指令将从输入设备得到外设数据 当数据端口作为输出接口时,执行输出OUT指令将把CPU的数据送给输出设备 8255A具有锁存输出数据的能力 对输出方式的端口同样可以输入,但不是读取外设数据,读取的是上次CPU给外设的数据,读写数据端口:示例,利用8255A的输出锁存能力,可实现按位输出控制 对输出端口B的PB7位置位的程序段: MOV DX,301H ;B端口假设为301H IN AL,DX ;读出B端口原输出内容 OR AL,80H ;使PB71 OUT DX,AL ;输出新的内容,(3)读写端口C,C端口被分成两个4位端口,两个端口只能以方式0工作,可分别选择输入或输出 在控制上,C端口上半部和A端口编为A组,C端口下半部和B端口编为B组 当A和B端口工作在方式1或方式2时,C端口的部分或全部引脚将被征用,其余引脚仍可设定工作在方式0,对端口C的数据输出有两种办法: 通过端口C的I/O地址:向C端口直接写入字节数据。这一数据被写进C端口的输出锁存器,并从输出引脚输出,但对设置为输入的引脚无效 通过控制端口:向C端口写入位控字,使C端口的某个引脚输出1或0,或置位复位内部的中断允许触发器,读取的C端口数据有两种情况: 未被A和B端口征用的引脚:将从定义为输入的端口读到引脚输入信息;将从定义为输出的端口读到输出锁存器中的信息 被A和B端口征用作为联络线的引脚:将读到反映8255A状态的状态字,8255A的应用,1.开关量的检测 例:在工业控制过程中,经常需要检测某些开关的状态。例如,在某一系统中,有8个开关K7K0,要求不断地检测它们的通断状态,并随时在发光二极管上显示。通过8255A的端口A读入开关状态信息,使端口B、端口C连接的发光二极管的状态与端口A开关状态相呼应,并重复执行。假设8255A在系统中端口A、B、C及控制口的地址分别为100H,101H,102H,103H,试设计出硬件电路图,并编写程序。,(1) 硬件电路如图8-11所示,MOV DX,103H ;控制寄存器的地址送给DX MOV AL, 90H ;控制字,10010000 OUT DX, AL ;写入控制字 L1:MOV DX,100H ;端口A 地址的送给DX IN AL,DX ;从端口A读入开关状态 MOV DX,101H ;指向端口B端口 OUT DX,AL ;从端口B输出,控制LED XOR AL,0FFH ;AL AL取反 MOV DX,102H ;端口C 的地址送给DX OUT DX,AL ;从端口C输出 JMP L1 ;循环,(2) 相应的8255A初始化程序为:,例:甲乙两台微机之间并行传送1KB数据。甲机发送,乙机接收。甲机的8255A采用方式1工作,乙机的8255A采用方式0工作。两台微机的CPU与接口之间都采用查询方式交换数据 (1)接口电路设计。 甲机的8255A用方式1发送,端口PA指定为输出,发送数据,而PC7和PC6引脚分别固定作联络线 乙机的8255A用方式0接收数据,端口PA定义为输入,选用引脚PC7和PC0作为联络线,2.查询方式的双机并行通信,(2)接口软件编程。接口驱动程序包括发送程序和接收程序。 甲机发送如下程序段: MOV DX,303H ;8255A命令端口 MOV AL,l0100000B ;初始化工作方式字 OUT DX,AL MOV AL,00001101B ;PC6=1,允许中断 OUT DX,AL MOV SI,OFFSET BUFS ;设置发送数据区的指针 MOV CX, 3FFH ;发送字节数 MOV DX,300H ;向端口A写第1个数,产生第1个OBF信号 MOV AL,SI ;送给乙方,以便获取乙方的ACK信号,OUT DX,AL INC SI ;内存地址加1 DEC CX ;传送字节数减1 L: M0V DX,302H ;8255A状态端口(端口C) IN AL,DX ;查看中断标志位INTRA=1 AND AL,00001000B ;是否PC3=1 JZ L ;若无中断请求,则等待 ;若有中断请求,则向端口A写数 M0V DX,300H ;8255A端口 PA地址 M0V AL,SI ;从内存取数 0UT DX,AL ;通过端口A向乙机发送第2个数据 INC SI ;内存地址加1 DEC CX ;字节数减1 JNZ L ;字节未完,继续 M0V AX,4COOH ;己完,退出 INT 21H ;返回DOS BUFS DB. ;定义1024个数据,乙机接收如下程序段: MOV DX,303H ;8255A命令端口 MOV AL,10011000B ;初始化工作方式字 OUT DX,AL MOV AL,00000111B ;置=1(PC3=1) OUT DX,AL MOV DI,OFFSETBUFR ;设置接收数据区的指针 MOV CX,3FFH ;接收字节数 L1: MOV DX,302H ; 8255A端口PC IN AL,DX ;查甲机的PC7=O? AND AL,80H ;即查甲机是否有数据发来 JNZ L1 ;若无数据发来,则等待 ;若有数据,则从端口A读数,MOV DX,300H ;8255A端口PA地址 IN AL, DX ;从端口A读入数据 M0V DI,AL ;存入内存 MOV DX,303H ;产生信号,并发回给甲机 MOV DX,OO000110B ;PC3置“O” OUT DX,AL NOP NOP MOV AL,00000111B ;PC3置“1” OUT DX,AL INC DI ;内存地址加1 DEC CX ;字节数减1 JNZ L1 ;字节未完,则继续 MOV AX,4COOH ;已完,退出 INT 2lH ;返回DOS BUFR DB l024 DUP(?),并行打印接口,打印机的主要接口信号和时序 STB*:数据选通,打印机在其上升沿读数据(输入) ACK*:应答脉冲,低表示数据已被打印机接 收,可以传输下一数据(输出) BUSY:打印机忙(输出) D0-D7:数据(输入),查询方式打印字符 当CPU准备输出打印的数据时,先查询打印机忙信号(BUSY),如果打印机正在打印字符时,忙信号为1(BUSY=1),不能接收数据。当打印机不忙后,CPU对打印机接口输出8位二进制数,并使选通信号为负脉冲,将数据送入打印机中的数据端口,分析: 8255A工作在方式0, 端口A输出,端口C高4位输出,低4位输入,控制字为:10000001B=81H 8255A端口地址:244H,245H,246H,247H 待打印字符在内存的首地址为2000H,字节数100H 编写打印机驱动程序如下: MOV DX,247H ;8255A控制端口地址 MOV AL, 81H ;8255A控制字 OUT DX, AL,MOV AL, 0DH OUT DX,AL ;使PC6置“1”,即STB*1 MOV SI,2000H ;数据段内偏移地址送给SI MOV CX,0FFH ;打印字节数 NEXT: MOV DX,246H ;8255A的PC口地址 IN AL,DX ;读端口C数据,查询PC30? AND AL,08H JNZ NEXT ;打印机忙,则等待 MOV DX,244H ;端口A地址送给DX MOV AL,SI ;从内存取出一个字节 OUT DX,AL,MOV DX,247H ;端口C地址送给DX MOV AL,0CH ;设置PC6为“0”, OUT DX,AL ;使STB*选通信号为低电平 NOP NOP NOP ;适当延时 MOV AL,0DH OUT DX,AL ;STB*1 INC SI ;内存地址加1 LOOP NEXT ,中断方式打印 8255A的端口A工作在方式1输出,外加一片中断控制器8259A PC6为ACK*信号输入端,PC3为中断请求输出端,PC0用于产生打印机需要的STB信号 (P290,图7-30),键盘的工作原理: 最简单的键盘中每个键对应I/O端口的一位,没有键闭合时,各位均处于高电平;当有一个键按下时,就使对应位接地而成为低电平。CPU只要检测到某一位为“0”,便可判别对应键已经按下。 这种键盘的缺点是当键盘上的键较多时,占用的I/O端口太多。如一个有64键的键盘,就需要64条连线,需占用8个8位端口,所以,这种简单结构只用在仅有几个键的系统中。,键盘接口,通常使用的键盘采用矩阵结构,对于88=64个键的键盘,采用矩阵方式就只要用16条引线(2个8位端口)。以33=9个键为例,这个矩阵分为3行3列,如果键4按下,则第1行和第1列线接通而形成通路。如果第1行线接地电位,则由于键4的闭合,会使第1列线也输出地电位。矩阵式键盘工作时,就是按行线和列线的电平来识别闭合键的。,键的识别方法 为了识别键盘上的闭合键,通常可以采用两种方式:逐行扫描法和行列反转法 1逐行扫描法 图为一个8行8列组成的键盘。行线与8255的A端口相连,列线与8255的B端口相连。CPU使8255的A端口某一位为0,相当于将该行线接地;某位为1,相当于将该行线接高电平,行扫描法识别按键的原理如下: (1)使所有行线为低电平,然后读入列线值并进行检查。如果列线有一位为低,则说明必有键被按下。 (2)使第0行输出低电平,然后读入列线值并进行检查。如果有某列线变为低电平,则表示第0行和此列线相交的位置上的键被按下。如果没有任何一条列线为低电平,则说明第0行没有任何键被按下。 (3)将第1行接低电平,然后读入列线值并进行检查。检测列线是否有变为低电位的线。如此往下一行一行地扫描,直到最后一行。在扫描过程中,当发现某一行有键闭合时,也就是读入的列线值中有一位为低时,即可识别出此刻是哪一键被按下,例: 第一步是判断是否有键按下。为了消除键的抖动,所以调用了延迟程序。这段程序如下: KY1:MOV AL,00 MOV DX,ROWPORT ;ROWPORT为行线端口地址 OUT DX,AL ;使所有行线为低 MOV DX,COLPORT ;COLPORT为列线端口地址 IN AL,DX ;读取列值 CMP AL,0FFH ;判定是否有列线为低电平 JZ KY1 ;没有,无闭合键,则循环等待 CALL DELAY ;有,则延迟20ms清除抖动,第二步是判断哪一个键被按下了 MOV AH,0FEH ;扫描初值送AH MOV CX,8 ;行数送CX KEY2:MOV AL,AH MOV DX,ROWPORT OUT DX,AL ;输出行值(扫描值) MOV DX,COLPORT IN AL,DX ;读进列值 CMP AL,0FFH ;判断有无接地线 JNZ KEY3 ;有,则转下一步处理 ROL AH,1 ;无,则移位扫描值 LOOP KEY2 ;准备下一行扫描 JMP KEY1 ;所有行都没有键按下,则返回继续检测 KEY3: ;此时,AL=列值,AH=行值,进行后续处理,2行列反转法 行列反转法也是识别按键的常用方法。它的原理为: (1)判断是否有键按下(同行扫描法)。 (2)将行线工作在输出方式,将列线工作在输入方式,CPU通过8255的A端口往各行线上全部送低电平,然后从8255的B端口读入列线值。如果此时有某键被按下,则必定会使某列线值为低。,(3)程序再对两个端口进行行列反转,使接行线的A端口设为输入方式,将列线的B端口设为输出方式。然后将刚才读得的列值从列线所接端口输出,再读取行线的输入值,那么,闭合键所在的行线值必定为0。这样,当一个键被按下时,必定可以读得一对唯一的行值和列值。 键值表: 为查找键代码,键盘程序设计时,可将各个键对应的行、列值放在一个表中,程序通过查表来确定具体按下的为哪一个键,进而在这个表中找到这个键的代码。从而确定是哪一个键。 如果遇到多个键同时闭合的情况,则输入的行值或者列值中一定有一个以上的0,而由程序预先建立的键值表中不会有此值,因而可以判为重键而重新查找。所以,用这种方法可以方便地解决重键问题。,行反转法键盘扫描程序如下: KEY1: ;设置行线接输出端口ROWPORT,列线接输入端 ;COLPORT ;并判断是否有键按下(同行扫描法) KEY2: MOV AL,00 MOV DX,ROWPORT OUT DX,AL ;行线全为低 MOV DX,COLPORT IN AL,DX ;读取列值 CMP AL,0FFH JZ KEY2 ;无闭合键,循环等待 PUSH AX ;有闭合键,保存列值 PUSH AX ;设置行线接输入端口ROWPORT,列线接输出端 ;COLPORT,MOV DX,COLPORT POP AX OUT DX,AL ;输出列值 MOV DX,ROWPORT IN AL,DX ;读取行值 POP BX ;结合行列值,此时 MOV AH,BL ;AL=行值,AH=列值 ;查找键代码 MOV SI,OFFSET TABLE ;TABLE为键值表 MOV DI,OFFSET CHAR ;CHAR为键对应的代码 MOV CX,64 ;键的个数,KEY3: CMP AX,SI ;与键值比较 JZ KEY4 ;相同,说明查到 INC SI ;不相同,继续比较 INC SI INC DI LOOP KEY3 JMP KEY1 ;全部比较完,仍无相同,说明是重键 KEY4:MOV AL,DI ;获取键代码送AL ;判断按键是否释放,没有则等待 CALL DELAY ;按键释放,延时消除抖动 ;后续处理,TABLE DW 0FEFEH ;键0的行列值(键值) DW 0FDFEH ;键1的行列值 DW 0FBFEH ;键2的行列值 ;全部键的行列值 CHAR DB ;键0的代码 DB ;键1的代码 ;全部键的代码,3抖动和重键问题 当用手按下一个键时,往往会出现按键在闭合位置和断开位置之间跳几下才稳定到闭合状态的情况;在释放一个键时,也会出现类似的情况,称为抖动。 抖动的持续时间随操作员而异,不过通常总是不大于l0ms,抖动问题会引起对闭合键的错误识别。,抖动消除: 用硬件电路很容易消除抖动,例如采用带滞环的施密特硬件消抖电路。 在键数很多的情况下,可以使用软件的方法,通过延时20ms来等待抖动消失,然后再读入键值。 重键: 所谓重键就是指两个或多个键同时闭合。出现重键时,读取的键值必然出现有一个以上的0,于是就产生了到底是否给予识别和识别哪一个键的问题。,对重键问题的处理,简单的情况下,可以不予识别。 连锁法:通常情况,则是只承认先识别出来的键,对此时同时按下的其他键均不作识别,直到所有键都释放以后,才读入下一个键。 巡回法:等被识别的键释放以后,就可以对其他闭合键作识别,而不必等待全部键释放。显然巡回法比较适合于快速键入操作。 行列反转法可以方便地解决重键问题。,LED显示器及其接口,七段LED显示器原理 LED的主要部分是7段发光管,分别为ag段,有些产品还附带小数点h。通过7个发光段的不同组合,可以显示09和AF共16个字母数字及其他特殊字符。例如当a、b、c段亮,显示“7”;当a、b、c、d、e、g段亮,则显示“d”。 LED可以分为共阳极和共阴极两种结构,共阳极结构数码显示端输入低电平有效,当某一段得到低电平时,便发光;共阴极结构数码显示端输入高电平有效,当某段处于高电平时便发光,共阴极数码管,共阳极数码管,为了在LED上显示数据,首先必须把显示数据转换为LED的7位显示代码。实现这种转换可以采用下面两种方法: (1)专用芯片。即采用专用的带驱动器的LED段译码器,如CD 4511,可以实现对BCD码的译码,但不能对大于9的二进制数译码。CD4511有4位显示数据输入,7位显示段输出,3位控制信号输入,使用时,只要将CD 4511的输入端与微机系统输出端口的某4个数据位相连,而CD4511的输出直接与LED的ag相接,便可实现对l位BCD码的显示。,(2)软件译码法。图中所示的是采用8255A的LED接口,在软件设计时,在数据段定义0F共16个数字(也可以为09或其他符号)的显示代码表,在程序中利用XLAT指令进行软件译码。,例:假设用共阳极LED来显示数据,0F的显示代码表就可以按0F的顺序定义如下: DISPCODE DB 0C0H,0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论