炜煌热敏打印机说明书
目 录
第一部分 性能指示 ................................................................................ 2
第二部分 操作说明 ................................................................................ 3
第三部分 打印命令祥解 ...................................................................... 21
第四部分 西文字符集 1、2 ................................................................. 41
第五部分 命令速查表 .......................................................................... 42
http://www.whkj.com.cn
- 1 -
炜煌热敏打印机说明书
第一部分 性能指示
1、打印方法: 直接热敏打印
2、打印纸宽: 57.5±0.5mm
3、打印密度: 8 点/mm,384 点/行
4、打印头寿命: 6×106字符行
5、有效打印宽度: 48mm
6、走纸速度: 25%的字符率的情况下为 50mm/s
7、打印字符: 6*8 点阵西文字符集 1、2;20h—7fh 间的标准 ASCII 码半角字符。国标一、二级汉
字(16*16 点阵、24*24 点阵两种,可根据需要选用不同点阵类型的打印机)
8、接口形式: 并行接口 20 针插座,TTL 电平
串行接口 10 针插座,232 电平或 TTL 电平
http://www.whkj.com.cn
- 2 -
炜煌热敏打印机说明书
9、操作温度: 5~50℃
10、操作相对湿度: 10~80%
11、储存温度: -20~60℃
12、储存相对湿度: 10~90%
13、电源: DC5V,3A / DC3.5V-9V 15W (请参考所选打印机型号)
第二部分 操作说明
2.1 并行接口连接
2.1.1 接口与引脚定义
并行接口插座引脚序号如下图所示:
http://www.whkj.com.cn
- 3 -
炜煌热敏打印机说明书
并行接口插座引脚序号
IDE 20 针并行接口各引脚信号的定义如下图表所示:
面板式引脚
信 号 方向 说 明
1
3
5
7
9
11
13
15
17
18
19
20
4
-STB 入
数据选通触发脉冲,上升沿时读入数据
这些信号分别代表并行数据的第一至第八位信号,每
个信号当其逻辑为“1”时为“高”电平,逻辑为“0”
为“低”电平。
DATA1 入
DATA2 入
DATA3 入
DATA4 入
DATA5 入
DATA6 入
DATA7 入
DATA8 入
-ACK 出
回答脉冲,“低”电平表示数据已被接受而且打印机准
BUSY 出
“高”电平表示打印机正“忙”,不能接收数据
PE
出
缺纸信号,有纸时为低电平,缺纸为高电平
-ERR 出
打印机内部经电阻上拉“高”电平,表示无故障
http://www.whkj.com.cn
- 4 -
炜煌热敏打印机说明书
2,6,8
10,12,14,16 GND
—
2 为空脚,6,8 为保留引脚,禁止用户应用
接地,逻辑“0”电平
注: 1.“入”表示输入到打印机。 2.“出”表示从打印机输出。 3.信号的逻辑电平为 TTL 电平。
2.1.2 并行接口引脚信号时序
并口时序如下图所示:
BU SY
/A CK
DA TA
/S TB
0.5μS
0.5μS
0. 5μS
0. 5μS
0. 5μS
并行接口信号时序图
http://www.whkj.com.cn
- 5 -
炜煌热敏打印机说明书
2.1.3 并口例程
单片机控制打印机时汇编例程
EQU P3.2
EQU P3.7
EQU P3.3
; 定义 BUSY 信号引脚
; 定义 nSTB 信号引脚
; 定义纸检测信号引脚
; 定义应答信号引脚
; 定义错误检测信号引脚
; 定义在线检测信号引脚
BUSY
nSTB
PE
nACK EQU P3.4
nERR EQU P3.1
nSEL EQU P3.0
start:
main:
ORG 0000H
JMP start
MOV DPTR, #print_content
MOV R0, #9 ; 存待打印数据的字节数
A
CLR
A, @ A + DPTR
MOVC
PRINTB
LCALL
DPTR
INC
DJNZ R0, MAIN
MOV A, #0DH
http://www.whkj.com.cn
- 6 -
炜煌热敏打印机说明书
LCALL
SJMP $
PRINTB
;打印结束死循环
PRINTB:
;PRINTB 子程序将累加器 A 中的一字节数据发送到打印机
BUSY, $
P1 , A
nSTB
; 等待打印机到空闲
; 送数据到数据口
; 置 nSTB 为低电平
; 延长 nSTB 信号脉冲宽度以满足时序要求
JB
MOV
CLR
NOP
nop
nop
SETB nSTB
RET
; 置 nSTB 为高电平(此时数据将被读入打印机)
print_content:
单片机 C51 例程
DB '北京炜煌'
DB 0dh
END
http://www.whkj.com.cn
- 7 -
炜煌热敏打印机说明书
// 北京炜煌科技打印机示例程序
// Nocky Tian
// 2007-07-17
#include
// Hardware configuration
#define PRINTER_DATA P1
sbit BUSY = P3^2;
sbit nSTB = P3^7;
sbit PE
sbit nACK = P3^2;
sbit nERR = P3^1;
sbit nSEL = P3^0;
#define CR
#define LF
void PrintByte(unsigned char byte_data);
void PrintString(char* str);
void PrintByteN(unsigned char* data_src,unsigned char N);
// 定义打印机数据线端口
// 定义打印机忙信号引脚
// 定义打印机 nSTB 信号引脚
// 定义打印机应答信号引脚
// 定义打印机错误检测信号引脚
// 定义打印机在线检测信号引脚
0x0d
0x0a
= P3^3;
// 定义打印机纸状态检测信号引脚
http://www.whkj.com.cn
- 8 -