第5章输入输出和中断 CPU与外设之间传输数据的控制方式有三 种:即程序方式、中断方式和DMA方式 程序方式 (1)无条件传输方式,如图5.1所示。 例5.1】用一个8位输出锁存器控制8个 发光二极管,使发光管从上向下依次一个 个地闪亮,每个发光管亮一段规定的时 间。设输出锁存器的地址为84H
第5章 输入输出和中断 CPU与外设之间传输数据的控制方式有三 种:即程序方式、中断方式和DMA方式。 1.程序方式 (1)无条件传输方式,如图5.1所示。 【例5.1】用一个8位输出锁存器控制8个 发光二极管,使发光管从上向下依次一个 一个地闪亮,每个发光管亮一段规定的时 间。设输出锁存器的地址为84H
第5章输入输出和中断 D, 80864 D IOJM 锁存器← CE+ A了-A0 地址 译码器 84H4 图51用无条件传送方式的例子
第5章 输入输出和中断 图5.1 用无条件传送方式的例子
第5章输入输出和中断 控制程序如下: START: MOV AL,01H;控制代码01H→AL NEXT: OUT84H, AL: (AL)+84H CALL DELAY;延时一定时间 ROL AL,1;控制代码循环左移1位 JMP NEXT;无条件转NEXT继续程序循环 DELAY:PROC;定义延时子程序 DELAY PUSH AX MOV AX, COUNT TIME: DEC
第5章 输入输出和中断 控制程序如下: START:MOV AL,01H ;控制代码01H→AL NEXT:OUT84H,AL;(AL)→84H CALL DELAY ;延时一定时间 ROL AL,1 ;控制代码循环左移1位 JMP NEXT ;无条件转NEXT继续程序循环 DELAY:PROC ;定义延时子程序DELAY PUSH AX MOV AX,COUNT TIME: DEC AX
第5章输入输出和中断 JNZ TIME POP AX RET;返回调用程序 DELAY ENDP;子程序调用结束 (2)条件传送方式 【例52】假设从某输入设备上输入一组数据送缓 冲区,接口电路如图5.2所示:
第5章 输入输出和中断 (2)条件传送方式 JNZ TIME POP AX RET ;返回调用程序 DELAY ENDP ;子程序调用结束 【例5.2】假设从某输入设备上输入一组数据送缓 冲区,接口电路如图5.2所示:
第5章输入输出和中断 程序如下: DATA SEGMENT MESSI DB“ BUFFER OVERFLOV”,“S” BUFF DB 60 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX.DATA MOV DS.AX
第5章 输入输出和中断 程序如下: DATA SEGMENT MESSI DB “BUFFER OVERFLOW”, “$” BUFF DB 60 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX