并行通信及MCS-51与并行打印机接口.ppt_第1页
并行通信及MCS-51与并行打印机接口.ppt_第2页
并行通信及MCS-51与并行打印机接口.ppt_第3页
并行通信及MCS-51与并行打印机接口.ppt_第4页
并行通信及MCS-51与并行打印机接口.ppt_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、实验8 并行通信及MCS-51与并行打印机接口,一、实验目的 二、实验设备与器材 三、实验电路 四、实验内容、过程及要求,一、实验目的 (1) 理解并行通信的概念、握手信号的含义。 (2) 理解并行通信数据传输时序及过程。 (3) 进一步理解8255并行I/O扩展芯片的初始化及应用。 (4) 理解并行打印机接口信号含义、数据传输时序。 理解ESC/P打印命令,掌握打印驱动程序编写要领。,二、实验设备与器材 仿真器及其附件、图1所示的实验电路板各两套,热敏或针式微型打印机一台(并行接口),打印电缆一条。 本实验涉及实验板上的U101、U103、U107,而与其他元器件无关。,三、实验电路 并行打

2、印机一般采用与Centronic标准兼容的DB-25并行接口,各信号含义如表8-1所示,DB-25插座引脚编号、信号时序如图8-1所示。,表8-1 并行打印机接口信号含义,图8-1 并行打印机插座引脚编号及信号时序 (a) DB-25插座引脚编号;(b) 接口信号时序,根据多数微型指针、热敏打印机接口信号时序,一般不能以总线方式与MCS-51直接相连,除非系统晶振频率小于3 MHz,否则数据有效到STB信号有效时间小于打印机所要求的最短时间。 在实验板上MCS-51通过8255并行接口芯片与打印机相连,如图8-2所示,打印电缆一端接J1插座,另一端接打印机即可。,图8-2 与打印机接口电路,四

3、、实验内容、过程及要求 (1) 根据MCS-51与并行打印接口方式,写出U107的初始化指令。 (2) 写出打印输出程序。打印程序编写要领可归纳为:数据送打印机前,先检查打印机状态;当打印机空闲时,将数据送打印机。如果打印机提供和BUSY两种握手信号时,原则上可选择或BUSY方式之一确认打印机是否处于可接收数据的就绪状态,即本实验中8255并行I/O扩展芯片A口可以工作在选通输出方式(采用握手方式),也可以工作在基本I/O输出方式(用BUSY握手方式)。考虑到打印机信号传输时序与8255芯片时序后,采用BUSY查询方式更可靠。,与打印有关的参考程序片段如下。 ;功能:查询握手方式打印驱动程序

4、PRIBUF DATA 50H ;打印缓冲区(50H60H) PRISP DATA 62H ;打印指针 PRIBUFE BIT 00H ;打印缓冲区数据有效标志(1表示打印缓冲区数据有效, ;0表示数据无效) PORTA EQU 9000H ;8255A口地址 PORTB EQU 9100H ;8255B口地址 PORTC EQU 9200H ;8255C口地址 PORTS EQU 9300H ;8255控制/状态口地址,;8225初始化 MOV A,#10000010B ;A口工作在方式0(b6b5为00),输出(b4为0) ;C口高半部处于输出状态(b3=0) ;B口工作基本输入方式(b2

5、=0,b1=1) ;C口低半部处于输出状态(b0=0) MOV DPTR,#PORTS MOVX DPTR,A ;命令送控制寄存器 MOV A,#00001111B ;利用C口复位/置位控制字,将PC7置为高电平 MOVX DPTR,A ;控制字送状态口,;打印前初始化打印缓冲区及打印指针后,反复调用打印模块即可,如下所示 MOV R0,#PRIBUF MOV R0,#1CH INC R0 MOV R0,#26H ;打印机命令 INC R0 MOV R0,#30H INC R0 MOV R0,#38H ;送0、8的ASCII码 INC R0 MOV R0,#0AH ;送“打印并回车”命令 SE

6、TB PRIBUFE ;打印缓冲区数据有效 MOV PRISP,#0 ;初始化打印指针,MOV DPTR,#PORTB MOVX A,DPTR JB ACC.4,NEXT1 ;b4位(PSLCT)为0,没选择,退出 JMP EXIT NEXT1: JB ACC.7,NEXT2 ;打印机错(ERROR有效),退出 JMP EXIT NEXT2: JNB ACC.5,NEXT3 ;PE有效,打印机缺纸,退出 JMP EXIT,NEXT3: JNB ACC.6,NEXT4 ;BUSY有效,打印机忙,退出 JMP EXIT NEXT4: JB PRIBUFE,RUN ;打印缓冲区数据无效 JMP EX

7、IT,RUN: ;数据送打印机 MOV A,PRISP ADD A,#PRIBUF MOV R0,A MOV A,R0 ;取打印缓冲区内打印数据(包括ESC/P打印命令) CJNE A,#0AH,NEXT5 ;0AH为打印机换行命令,其后内容没有定义 CLR PRIBUFE ;打印缓冲区内容无效,NEXT5: INC PRISP ;打印指针加1 MOV DPTR,#PORTA MOVX DPTR,A ;数据送A口 MOV DPTR,#PORTS MOV A,#00001110B ;利用C口复位/置位控制字,将PC7置为低电平 MOVX DPTR,A ;控制字送状态口,SETB ACC.0 MOVX DPTR,A ;将PC7置为高电平,形成打印机送数负脉冲 EXIT: RET END,【思考】 (1) 查阅8255 PPI芯片选通输出方式时序参数及所用打印机数据传输时序参数,验证能否用8255 PPI芯片选通输出方式形成打印机就绪握手信号(即利用缓冲器满信号作为打印机的送数负脉冲,打印机应答信号作8

温馨提示

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

评论

0/150

提交评论