微型智能打印机(Tpup-40A接口电路)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
郑州航空工业管理学院
《单片机原理与应用》
课程设计说明书
09 级电气工程及其自动化专业七二班级
题目微型智能打印机(Tpup-40A接口电路)
姓名吕鹏翀学号 090607221
指导教师王义琴职称讲师
二О一二年 6 月 2 日
一、设计智能微型打印机(TpμP-40A接口电路设计)的基本原理
TpμP-40A的主要技术性能;
1:具有2KB控制程序及标准的Centironic并行接口。
2:具in有较丰富的打印命令,格式简单。
3:可产生全部标准的ASII代码字符,以及128个飞镖准字符和图符。
4:打印格式比较灵活。
5:字符,图符和点阵图可以在宽和高的方向放大2,3,4倍。
6:每行字符的点行数课用命令更换及字符行间距及每行字符的空点航在0-255间任选。
7:带有水平和垂直制表命令便于打印表格。
8:具有重复打印同一字符命令,以减少输送代码的数量。
9:带有重复命令格式的检错功能,当输入错误命令时,打印机立即打出错误的信息代码。
TpμP-40A微型打印机与计算机系统通过机箱后的20芯扁平电缆及插件相连。打印机箱后部接插件引脚号如图所示。各引脚定义如下:
DB0-DB7:数据线,单向由计算机输入打印机。
STROBE:数据选通信号。在该信号的上升沿时,数据线上的8位并行数据被打印机读入机内锁存。
BUSY:打印机忙状态忙状态信号,当该信号有效时,表示打印机正忙于处理数据。此时,CPU不得不使用信号向打印机送入新的数据。
ACKK:打印机的答应信号。此信号为有效电瓶状态,表明打印机已取走数据上的数据。
ERR:出错信号。当送入打印机的命令格式有错误时,打印机立即引出一行错误信息,以提示操作者注意,在打印机打印出信息之前,该信号出现一个负脉冲,脉冲宽度为30ms。
接引信号时序:
TpμP-40A全部代码共256个,其中00H无效,代码01H-0FH为打印命令,代码10H-1FH为用户自定义代码:代码为20H-7FH为标准ASII码:代码80H-FFH为非ASCII代码,其中包括少量汉字,希腊字母,块图图符和一些特殊的字符。
TpμP-40A中全部字符代码为10H-FFH,字符串的结束代码,或回车换行代码为0DH.但是,当输入代码满40个时,打自动回车。
TpμP-40A智能微型打印机的工作原理是其控制命令由一个命令字节和若干参数字节组成,其格式如下;
ccxxo...xxn
其中cc命令代表01H-0FH.XXn;n个参数字节,n=0-250,随不同命令而异,命令结
命令代码命令功能
01H打印字符,图等,增宽(X1,X2,X3,X4)
02H打印字符,图等,增高(X1,X2,X3,X4)
03H打印字符,图等,宽和高同时增加(X1,X2,X3,X4)
04H字符行间距更换定义
05H用户自定义字符点阵
06H驻留代码字符点阵式样更换
07H水平跳区
08H垂直跳区
09H恢复ASCII代码和清除输入缓冲区命令
0AH一个空位后回车换行
0BH-0CH无效
0DH回车换行
0EH重复打印同一字符命令
0FH打印位点阵图命令
命令非法时的出错提示:
当主机向TpμP-40A输入非法命令时,打印机即打印出错代码,用以提示用户,出错代码信息打印格式如图所示,其含义如下:
ERROR:0-----放大系数出界,级放大系数是1,2,3,4以外的数字此错误出现在使用
01H,02H和03H命令时。
ERROR:1-----定义代码非法。及用户自定义代码不是10H-1FH.
ERROR:2-----非法换代码命令只能用10H-1FH去换驻留字符代码,否则视为非法。ERROR:3-----绘图命令错误。既指定图形字节数为0或大于240。
ERROR:4-----垂直命令错误,即制定空行数为0。
二、设计方案
单片机硬件系统设计是以单片机最小系统设计为核心,配置适当外围电路,能够实现应用需求各项指标的电子电路设计,单片机硬件系统设计可以只是单片机最小系统,这是针对以单片机能够运行为目标而言。
三、硬件设计
智能微型打印机(TpμP-40A接口电
路设计)的电路原理图
四、软件设计
MAINA:MOV SP,#60H ; SETB EA MOV 20H,#0 ; MOV R0,#30H
MOV R7,#3 ; MOV A,#11H
ML1: MOV R6,#3
MLO: MOV @R0,A
INC RO
DJNC R7,ML1
SETB 0 ; MOV DPTR,#CHTB1 ; MOV 1CH,DPL
MOV 1FH,#8 ; LCALL MSUB ; WPT1:JBC 2,MLN1
SJMP WPTI ; WLN1:CLR 0
MOV 18H,#30H ; MOV 1FH,#3 ; LCALL MUSB ; WPT2:JBC 2,MTLN2 ;
SJMB WPT2
MLN2:SETB 0
MOV DPTR,#CHTB4 ;
MOV 1CH,DPL ;
MOV 1DH,DPH
MOV 1FH,#8 ;
LCALL MUSB
WPT3:JBC 2,MLN3 ;
SJMB WPT3
MLN3:SETB 0
MOV DPTR,#CHTB2 ;
MOV 1CH,DPL ;
MOV 1DH,DPH
MOV 1FH,#8
LCALL MSUB WPT9: JBC 2,HERE
SJMP WPT9 HERE: SJMP HERE
MSUB: MOV P1,#20H
CLR P3.0
NOP
SETB P3.0
CLR IE1
SETB IT1
SETB EX1
RET
CHTB1: DB 'POWER1: '
CHTB2: DB 'POWER2: '
CHTB3: DB 'POWER3: '
CHTB4: DB ' KWH',0DH,0AH
PRINTA: PUSH ACC
PUSH PSW
PUSH DPL
PUSH DPH
ORL PSW,#18H
CJNE
R7,#0,PRG0
SETB 2
CLR EX1
SJMP PRN2 PRG0: DEC R7