微机原理与接口技术学习笔记 打印机接口

发布日期:2018-05-23 编辑整理:甘肃省自考网 【字体:

 9.4.1 并行接口标准Centronics

    并行接口的点阵式打印机普遍遵从Centronics并行标准,该标准规定了一个36芯的连接口,对每个引脚信号作了明确的规定,如表9-1所示。

    表中信号说明如下:

    STB:数据选通信号。由主机送往打印机的选通信号,有效时,打印机接收主机送来的8位并行数据。

    DATA1~8:数据信号。主机送往打印机的8位并行数据。

    ACK:响应信号。打印机接收数据后,向主机发出的回答信号,主机在收到该信号后,才能继续发送下一个数据。

    BUSY:忙信号。由打印机送给主机的状态信息,无效时(低电平),表示打印机正处于空闲(准备好)状态,主机可以向打印机传送数据。有效时(高电平),表示打印机现在不能接收数据。可能由如下原因产生:(二)打印数据缓冲器已满;(2)正在打印;(3)打印机处于脱机状态;(4)打印机有故障。

             表9-1  并行接口标准Centronics的信号规定

 

    PE:纸尽信号。打印机处于无打印纸状态下向主机发出的信号,通知主机停止送数。I

    SLCT:选中信号。打印机向主机发送的信号,有效时,说明打印机正处于同主机联机的状态。

    INIT:初始化信号。主机向打印机送出的控制信号,有效时(低电平),打印机开始初始化工作。

    ERR:出错信号。当打印机的打印缓冲区溢出,或其它控制出错时,向主机发出该信号,要求主机停止送数。

    AUTO FEEDXT:自动走纸信号。主机向打印机送出的控制信号,有效时(低电平)表示打印完一行,打印机自动走纸。

    表中信号方向是相对于打印机而言的。在Centronics标准定义的信号线中,最主要的是 8位并行数据线,2条握手联络线STB、ACK和一条忙线BUSY,这4种信号线工作时序如图9-6所示。

 

图9-6 并行打印机接口时序

    从图9-6可见,当CPU通过接口要求打印机打印数据时,先要查看BUSY信号,BUSY=“L”时,才能向打印机输出数据,在把数据送上DATA线后,先发STB信号通知打印机,打印机接到STB后,发出BUSY=“H”,接收数据,当数据接收好并存入内部打印缓冲器后,送出ACK信号,表示打印机已准备好接收新数据,并撤销BUSY信号(为低电平)。

    9.4.2 打印机接口

 

    1.打印机的工作过程及接口电路

    当接通打印机电源后,在打印机控制电路中的CPU控制下,先完成初始化,然后打印机开始处于接码状态,接受由主机送来的信息,并进行判断。若是功能码,则进入相应的处理;若是字符码,则送入字符缓冲器。再从点阵字库中找出相应的字符点阵信息存入打印码缓冲区。当接收的数据为打印命令(如回车、换行符等)或一行缓冲打印码已满,则进入打印过程。

    打印机接口电路也称打印机适配器,可以用锁存器、三态缓冲器等器件实现,也可用通用的可编程并行接口芯片实现。图9-7就是用8255A作为接口电路的逻辑图。

 

图9-7 打印机接口原理图

    图中,8255A的PA口工作于方式1,并为数据输出端口,用于传送主机送来的数据信息DATA1-DATA8。此时,PC6、PC7和PC3分别规定为配合方式1工作的ACK、OBF和INTR信号。PC4定义为输入,作为打印机送来的SLCI状态信息。8255A的B组工作于方式:0,PB口作为输出控制口,利用PB3-PB0产生AUTOFEEDXT、SLCTIN、INIT和STROBE控制信号,而PC2-PC0用作输入状态口,分别定义为打印机的PE、ERROR和BUSY状态信号。图中非门来增强驱动能力和缓冲作用。

 

    2.8255A的应用编程

    图9-7所示的打印机接口电路可采用程序控制I/O方式或中断控制I/O方式实现数据的输出传送。若采用中断控制I/O方式,中断请求INTRA应连接到中断优先权控制器8259A的IR输入端,作为一个中断源,由8259A产生中断类型码,以便CPU响应本中断请求时,自动进入打印中断服务程序。下面就是采用中断控制I/O方式时,8255A的初始化程序段和打印中断服务程序。

    (l)8255A的初始化程序段。若8255A的I/O端口地址为2COH-2C3H,则8255A的初始化程序段如下:

     :

    MOV DX,02C3H         ;写方式控制字。A组方式1,PA输出,PC4、PC5为输

                            入;B组方式0,PB输出,PC2~PC0为输入

    MOV AL,1010100lB

    OUT DX,AL

    MOV AL,0000110lB     ;使INTEA=1;允许PA口中断

    OUT DX,AL

    MOV DX,02C1H         ;使SLCTIN、AUTOFEEDXT为低电平,INIT和STB为高电平

    MOV AL,00001100B

    OUT DX,AL

    (2)打印机中断服务程序。打印机中断服务程序的任务是从主机的打印数据缓冲区中输出一个字符到打印机。假定输出数据的有效地址已存于BX中,则中断服务程序如下所示:

  PRINT  PROC NEAR

         PUSH AX

         PUSH DX

         MOV DX,02COH      ;读取一个打印数据,送入PA口.

         MOV AL,[BX]

         OUT DX,AL

         MOV DX,02C1H      ;输出选通脉冲STROBE

         IN AL,DX

         OR AL,01H

         OUT DX,AL

         AND AL,OFEH

         OUT DX,AL

         INC BX

         POP DX

         POP AX

         IRET

  PRINT  ENDP



免责声明

1、由于各方面情况的调整与变化,本网提供的考试信息仅供参考,考试信息以省考试院及院校官方发布的信息为准。

2、本网信息来源为其他媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。联系邮箱:952056566@qq.com


甘肃自考便捷服务

  • 微信交流群
  • 微信公众号


微信扫一扫加入考生微信群
①学习交流、②考试提醒、③自考解答
④自考资料、⑤新闻通知、⑥备考指导


  • 视频课程
  • 真题下载
英语(二)

英语(二)

行政法学

行政法学

文学概论(一)

文学概论(一)

内科护理学(一)

内科护理学(一)

思修(03706)

思修(03706)

中国近现代史纲要

中国近现代史纲要