THERMAL RECEIPT PRINTER
1
格式说明
本手册适用于公司生产的80mm系列热敏票据打印机GP-80XXX系列的产品。
本编程手册的命令说明包括以下部分:
1) 命令名称及功能概述。这是命令描述的第一部分。给出了 ASCII 码形式的命令及该命令的功
能概述。
2) 格式。这部分使用了 ASCII 码编码形式,十六进制码形式,十进制码形式 3 种形式描述该命
令。
其中的取值范围部分无特殊说明则为十进制数,例如下例中 1 ≤ n ≤ 4,其中 1 为十进制数的
1,而不是 ASCII 码编码表中的“1”。
3) 范围。给出了变量的范围。
4) 描述。给出了命令的详细的解释。
5) 注释。给出了命令的注意事项。由于命令在不同模式下,和不同命令配合时,将可能导致相
互影响,而此部分给出了这些细节。
6) 参考。给出了与此命令相关、相似的其他命令。
---> DLE EOT n 实时状态传送
---> [格式] ASCII码 DLE EOT n
十六进制码 10 04 n
十进制码 16 4 n
---> [范围] 1 ≤ n ≤ 4
---> [描述] 实时传送由参数n指定的打印机状态:
…..
---> [注释] • 打印机收到该命令后立即返回相关状态
….
---> [参考]
1、HT 水平定位
[格式] ASCII码 HT
十六进制码 09
十进制码 9
[描述] 移动打印位置到下一个水平定位点的位置。
[注释] • 如果没有设置下一个水平定位点的位置,则该命令被忽略。
• 如果下一个水平定位点的位置在打印区域外,则打印位置移动到为 [打印区域宽度 +
1]。
• 通过ESC D 命令设置水平定位点的位置。
THERMAL RECEIPT PRINTER
2
• 打印位置位于 [打印区域宽度+ 1] 处时接收到该命令,打印机执行打印缓冲区满打
印当前行,并且在下一行的开始处理水平定位。
• 默认值水平定位位置是每8个标准ASCII码字符(12×24)字符跳一格(即第9,17,25,…
列)。
• 当前行缓冲区满时,打印机执行下列动作:
标准模式下,打印机打印当前行内容并将打印位置置于下一行的起始位置。
页模式下,打印机进行换行并将打印位置置于下一行的起始位置。
[参考] ESC D
2、LF 打印并换行
[格式] ASCII码 LF
十六进制码 0A
十进制码 10
[描述] 将打印缓冲区中的数据打印出来,并且按照当前行间距,把打印纸向前推进一行。
[注释] 该命令把打印位置设置为行的开始位置。
[参考] ESC 2, ESC 3
3、FF 打印并回到标准模式(在页模式下)
[格式] ASCII码 FF
十六进制码 0C
十进制码 12
[描述] 在页模式下将打印缓冲区中的数据全部打印出来并返回标准模式。
[注释] • 打印后,清除缓冲区中的数据。
• 将由ESC W设置的打印区域复位到缺省设置。
• 打印机不执行切纸动作。
• 该命令设置打印位置为行的起始点。
• 该命令仅在页模式下有效。
[参考] ESC FF, ESC L, ESC S
4、CAN 页模式下取消打印数据
[格式] ASCII码 CAN
十六进制码 18
十进制码 24
[描述] 在页模式下,删除当前打印区域中的所有打印数据。
[注释] • 该命令只在页模式下有效。
• 如果先前设定区域与当前区域有重叠部分,重叠部分也被删除。
[参考] ESC L, ESC W
THERMAL RECEIPT PRINTER
3
5、DLE EOT n 实时状态传送
[格式] ASCII码 DLE EOT n
十六进制码 10 04 n
十进制码 16 4 n
[范围] 1 ≤ n ≤ 4
[描述] 根据下列参数,实时传送打印机状态,参数 n 用来指定所要传送的打印机状态:
n = 1:传送打印机状态
n = 2:传送脱机状态
n = 3:传送错误状态
n = 4:传送纸传感器状态
[注释] • 打印机收到该命令后立即返回相关状态
• 该命令尽量不要插在2个或更多字节的命令序列中。
• 即使打印机被ESC =(选择外设)命令设置为禁止,该命令依然有效。
• 打印机传送当前状态,每一状态用1个字节数据表示。
• 打印机传送状态时并不确认主机是否收到。
• 打印机收到该命令立即执行。
• 该命令只对串口打印机有效。打印机在任何状态下收到该命令都立即执行。
n = 1: 打印机状态
位
0/1
十六进制码 十进制码 功能
0 0 00 0
固定为0
1 1 02 2
固定为1
2 0 00 0
一个或两个钱箱打开
1 04 4
两个钱箱都关闭
3 0 00 0
联机
1 08 8
脱机
4 1 10 16
固定为1
5,6 --- ---
未定义
7 0 00 00
固定为0
n = 2: 脱机状态
位
0/1
十六进制码 十进制码 功能
0 0 00 0
固定为0
1 1 02 2
固定为1
2 0 00 0
上盖关
1 04 4
上盖开
3 0 00 0
未按走纸键
1 08 8
按下走纸键
4 1 10 16
固定为1
5 0 00 0
打印机不缺纸
1 20 32
打印机缺纸
6 0 00 0
没有出错情况
1 40 64
有错误情况
7 0 00 0
固定为0
THERMAL RECEIPT PRINTER
4
n = 3: 错误状态
位
0/1
十六进制码 十进制码 功能
0 0 00 0
固定为0
1 1 02 2
固定为1
2 --- ---
未定义
3 0 00 0
切刀无错误
1 08 8
切刀有错误
4 1 10 16
固定为1
5 0 00 0
无不可恢复错误
1 20 32
有不可恢复错误
6 0 00 0
打印头温度和电压正常
1 40 64
打印头温度或电压超出范围
7 0 00 0
固定为0
n = 4: 传送纸状态
位
1/0
十六进制码 十进制码 功能
0 0 00 0
固定为0
1 1 02 2
固定为1
2,3 0 00 0
有纸
1 0C 12
纸将尽
4 1 10 16
固定为1
5,6 0 00 0
有纸
1 60 96
纸尽
7 0 00 0
固定为0
[参考] DLE ENQ, GS a, GS r
6、DLE ENQ n 实时对打印机请求
[格式] ASCII码 DLE ENQ n
十六进制码 10 05 n
十进制码 16 5 n
[范围] 1
≤n ≤ 2
[描述] 打印机响应主机请求。N指定下列请求
n
请求内容
1
从错误状态恢复并且继续被中断的打印
2
在清除命令接收缓冲区和打印缓冲区从错误状态恢复
[注释] • 该命令只在切刀出错时有效。
• 串口模式下,打印机接收该命令后立即执行。
• 并口模式下,打印机忙的时候该命令不执行。
• 该命令尽量不要插在2个或更多字节的命令序列中。
• 即使打印机被ESC =(选择外设)命令设置为禁止,该命令依然有效。
[参考] DLE EOT