微型计算机原理及接口技术 作者 林志贵 第10章 可编程并行接口芯片8255A.pptVIP

  • 24
  • 0
  • 约 40页
  • 2015-12-09 发布于广东
  • 举报

微型计算机原理及接口技术 作者 林志贵 第10章 可编程并行接口芯片8255A.ppt

通过定义工作方式控制字可将3个端口分别定义为不同的工作方式。当将端口A定义为方式1或2或将端口B定义为方式1时,端口C的某些位为端口A和端口B提供联络信号。 PC口可以对PC口的某一根I/O线实施单独输出控制,即位控制方式。 方式0:基本输入/输出方式(无条件传送方式),PA、PB、PC口均可选择此方式。 方式1:选通输入/输出方式(条件传送方式或中断方式),PA、PB口可选择此方式 注:此方式一般用于连接需要联络信号的外设,其中PC口为PA、PB口提供控制和联络信号 1. 工作于输入 工作过程: 若8255A中端口A设定为方式1或方式2,以及端口B设定为方式1时,读取端口C口可分别得到相应端口的状态,以便了解8255A的工作状态,供CPU查询。 例10-1 某系统要求8255A的PA口工作于方式1输入;PB口工作于方式0输出;PC口的高4位做联络信号线后剩余的I/O线做输入,低4位做输出。设8255A端口地址范围为60 H~63H,请编写初始化程序。 例10-2 若例10-1中PA口工作于方式1作为输入,并且要求使用中断方式传送,则须写PC.4的按位置位控制字为=09H 例10-3 设8255A的控制寄存器端口地址为63H,试写出令PC.3先置“1”,后置“0”的程序。 分析:题中8255A工作于方式0,而不直接利用带联络信号的方式1,原因是打印机需要一个负脉冲作为数据选通信号,PC7( )端不能满足打印机的要求。另外选用PC0来发送选通脉冲。根据图10-14电路连接,设未用地址线用0表示则可分析8255A的端口地址为00H,02H,04H,06H。本例中,PC口以置位/复位产生打印机的控制信号,控制打印机启/停。 程序: .MODEL SMALL .STACK 100 .DATA BUFF DB ‘HELLO ,WORLD’,13,10,’$’ PORTA EQU 00H PORTB EQU 02H PORTC EQU 04H PORTCN EQU 06H .CODE START PROC FAR PUSH DS MOV AX,0 PUSH AX MOV AX,@DATA MOV DS,AX MOV SI, OFFSET BUFF MOV AL, 88H ;8255初始化 OUT PORTCN, AL ;PC口高4位输入,低4位输出 MOV AL, 01H ;PC.0置1,初始状态=1 OUT PORTCN, AL WAIT: IN AL, PORTC ;查询打印机状态, TEST AL, 40H ;判BUSY=1? JNZ WAIT ;若“忙”则等待 MOV AL, [SI] ;从缓冲区取数 CMP AL, ‘$’ ;判是结束符‘$’否? JZ PRINT_OVER ;若是结束符‘$’,退出 OUT PORTA, AL ;输出字符 MOV AL, 00H ;产生选通信号( =0),启动打印机 OUT PORTCN, AL MOV AL, 01H ;使 =1, 引脚负方波结束 OUT PORTCN, AL INC SI ;修改缓冲区指针 JMP WAIT PRINT_OVER: MOV AH, 4CH ;返回DOS INT 21H START ENDP END 分析: 8255A端口A工作于方式0输出的8位数字信息,经数模转换器DAC0832转换成模拟量。它输出的模拟量是电流值,因此,DAC0832常与运算放大器一起使用,以便将模拟电流放大并转换为模拟电压。当CPU输出的数字量从00H~FFH时,运算放大器输出

文档评论(0)

1亿VIP精品文档

相关文档