便携热敏打印机开发指令集

 
点击 34回复 0 原帖 2021-12-22 11:10

    

1.1 ESC S0 设置字符倍宽打印

【格式】 ASCII 码 ESC S0

十六进制码 1B 0E

十进制码 27 14

功能:设置打印字符以正常宽度的 2 倍打印。

说明:·在一行内该命定之后的所有字符均以正常宽度的 2 倍打印;

·在该命定后可用 DC4 命令来恢复正常打印。

1.2 ESC DC4 取消字符倍宽打印

【格式】 ASCII 码 ESC DC4

十六进制码 1B 14

十进制码 27 20

功能:取消字符倍宽打印。

说明:·用在 ESC S0 命定之后, 恢复字符的正常宽度打印。

1.3 ESC SP n 设置字符右间距

【格式】 ASCII 码 ESC SP n

十六进制码 1B 20 n

十进制码 27 32 n

功能:设置字符间的右间距。

说明:·其字符间间距为: n*0.125mm, n 的取值为:0 ≤ n≤255(n 默认为 0);

·当字符放大时,右间距随之放大相同的倍数;

1.4 ESC ! n 选择字符打印模式

【格式】 ASCII 码 ESC ! n

十六进制码 1B 21 n

十进制码 27 33 n

功能:根据 n 的值来设置字符打印方式,n 的 D0--D7 位定义如下表:

位 取值 十六进制码 功能

0

0 00 24 点阵字号

1 01 16 点阵字号

1,2 -- -- 未定义

3

0 00 取消加粗模式

1 01 选择加粗模式

4

0 00 取消倍高模式

1 01 选择倍高模式

shijzrev180706

4/25

5

0 00 取消倍宽模式

1 01 选择倍宽模式

6 -- -- 未定义

7

0 00 取消下划线模式

1 01 选择下划线模式

说明:·0 ≤ n≤255(n 默认值为 0),n 的值设定后未重新设定则一直有效;

·当倍宽和倍高模式同时选择时,字符同时在横向和纵向放大两倍;

·当一行中部分字符为倍高或更高,所有字符以底端对齐;

·ESC E 也能选择或取消加粗模式,最后被执行的命令有效;

·ESC – 也能选择或取消下划线模式,最后被执行的命令有效;

·GS ! 也能设置字符大小,最后被执行的命令有效;

1.5 ESC $ nL nH 设置绝对打印位置

【格式】 ASCII 码 ESC $ nL nH

十六进制码 1B 24 nL nH

十进制码 27 36 nL nH

功能:将当前位置设置到距离行首(nL + nH×256)点处。

说明:·其中 0≤nL ≤ 255; 0 ≤nH≤255,如果设置位置在指定打印区域外则该命定被

忽略;

1.6 ESC – n 选择/取消下划线模式

【格式】 ASCII 码 ESC – n

十六进制码 1B 2D n

十进制码 27 45 n

功能:根据 n 的取值来选择或是取消下划线模式。

说明:·0 ≤ n ≤2, 48 ≤n ≤ 50 ;n 默认值为 0,取值及功能如下:

n 功能

0,48 取消下划线模式

1,49 选择下划线模式(1 点宽)

2,50 选择下划线模式(2 点宽)

·下划线可加在所有字符下(包括右间距),但不包括 HT 设置的空格;

·改变字符大小不影响当前下划线宽度;

·下划线选择取消也可以由 ESC !来设置。最后执行的命令有效;

1.7 ESC 2 设置默认行间距

【格式】 ASCII 码 ESC 2

十六进制码 1B 32

十进制码 27 50

功能:选择约 3.75mm 行间距。

5/25

1.8 ESC 3 n 设置行间距

【格式】 ASCII 码 ESC 3 n

十六进制码 1B 33 n

十进制码 27 51 n

功能:设置行间距为 n 点, 0 ≤ n ≤ 255。

1.9 ESC @ 初始化打印机

【格式】 ASCII 码 ESC @

十六进制码 1B 40

十进制码 27 64

功能:清除打印缓冲区数据,打印模式被设为上电时的默认值模式。

1.10 ESC B n t 控制蜂鸣器提示

【格式】 ASCII 码 ESC B n t

十六进制码 1B 42 n t

十进制码 27 66 n t

功能:控制蜂鸣器提示。

说明:·n 值为蜂鸣器鸣叫的次数;

·t 值为蜂鸣器每次鸣叫的时间,时间为(t × 50)ms。

1.11 ESC C m t n 控制蜂鸣器提示及指示灯闪烁

【格式】 ASCII 码 ESC C m t n

十六进制码 1B 43 m t n

十进制码 27 67 m t n

功能:控制蜂鸣器提示, 同时报警灯闪烁。

说明:·m 值为蜂鸣器鸣叫的次数, 同时也是指示灯闪烁的次数;

·n 值为指示灯每次常亮的时间,时间为(t × 50)ms。

1.12 ESC D n1... nk NUL 设置横向跳格位置

【格式】 ASCII 码 ESC D n1... nk NUL

十六进制码 1B 44 n1... nk 00

十进制码 27 68 n1... nk 0

功能:设置横向跳格位置:由行首起第 n(1 ≤ n ≤ 255)列设置一个跳格位置;共

有 k(0 ≤ k ≤ 32)个跳格位置

说明:·横向跳格位置由下式计算:

·当 n = 8 时,当前位置为第九列;

·最多设置 32 个( k = 32) 跳格位置,超过 32 的跳格位置数据被作为普通数据处

理;

·跳格位置按升序排列 ,结束符为 NUL;

·当 nk 小于或等于前一个值 nk -1 值时,跳格设置结束。后面的数据作为普通数

6/25

据处理;

·默认跳格设置是每 8 个标准 ASCII 码(12×24)一个跳格位置(列 9,17,25,…)。

1.13 ESC E n 选择/取消加粗模式

【格式】 ASCII 码 ESC E n

十六进制码 1B 45 n

十进制码 27 69 n

功能:根据 n 取值选择或取消加粗模式。

说明:·0 ≤ n ≤ 255,但只有 n 的最低位有效;

·当最低位为 0 时,取消加粗模式;

·当最低位为 1 时,选择加粗模式;

·ESC ! 同样可以选择/取消加粗模式,最后接收的命令有效;

·n 默认为 0。

1.14 ESC G n 选择/取消双重打印模式

【格式】 ASCII 码 ESC G n

十六进制码 1B 47 n

十进制码 27 71 n

功能:根据 n 选择/取消双重打印模式。

·当最低位为 0 时,取消双重打印模式;

·当最低位为 1 时,选择双重打印模式;

·该命令与加粗打印效果相同;

·n 默认为 0。

1.15 ESC J n 打印并走纸 n 点行

【格式】 ASCII 码 ESC J n

十六进制码 1B 4A n

十进制码 27 74 n

功能:打印缓冲区数据并走纸 n 点行,0≤n≤255。

说明:·打印结束后,将当前打印位置置于行首;

1.16 ESC M n 选择字号

【格式】 ASCII 码 ESC M n

十六进制码 1B 4D n

十进制码 27 77 n

功能:根据 n 值选择字体,n 值可取:0、1、48、49。

说明:·n 值对应字体如下表:

n 功能

0,48 选择 24 点阵字号

1,49 选择 16 点阵字号

7/25

1.17 ESC N n m 设置打印机参数并保存到 Flash 中

【格式】 ASCII 码 ESC N n m

十六进制码 1B 4E n m

十进制码 27 78 n m

注意: 因该指令涉及 FLASH 操作, 所以, 发送该指令后要至少延时 100 毫秒.

1.18 ESC U n 设置字符倍宽

【格式】 ASCII 码 ESC U n

十六进制码 1B 55 n

十进制码 27 85 n

功能:设置字符倍宽打印

n 功能

1 字符不倍宽

2 字符宽度放大两倍

1.19 ESC W n 设置字符倍宽倍高

【格式】 ASCII 码 ESC W n

十六进制码 1B 57 n

十进制码 27 87 n

功能:设置字符倍宽倍高打印

n 功能

1 字符不倍宽不倍高

说明

1B 4E 00 00 恢复出厂设置

1B 4E 02 m 设置串口波特率(取值范围 1~8, 默认 m=6, 波

特率 230400)

m=1:波特率 9600 m=2:波特率 19200

m=3:波特率 38400 m=4:波特率 57600

m=5 波特率 115200 m=6:波特率 230400

m=7 波特率 460800 m=8:波特率 921600

1B 4E 04 m 设置打印浓度级别(取值范围 0~9, 默认 m=0)

m =1:打印浓度级别 1

m =2:打印浓度级别 2

m =3:打印浓度级别 3

m =4:打印浓度级别 4

m =9:打印浓度级别 9

1B 4E 05 m 设置代码页(默认 m=15 CP_936, 简体中文)

m 的值与 [ESC t n]指令中的 n 值意义相同.

8/25

2 字符宽度高度都放大两倍

1.20 ESC \ nL nH 设置相对横向打印位置

【格式】 ASCII 码 ESC \ nL nH

十六进制码 1B 5C nL nH

十进制码 27 92 nL nH

功能:设置横向相对位移,

说明:·该命令将打印位置设置到距当前位置( nL + nH×256)处,

0≤nL≤255;0≤nH≤255。

·超出可打印区域的设置将被忽略;

·当打印位置向右移动时:nL+ nH×256 = N;

·打印起始位置从当前位置移动到 N 点位置处.

1.21 ESC a n 选择对齐方式

【格式】 ASCII 码 ESC a n

十六进制码 1B 61 n

十进制码 27 97 n

功能:使所有的打印数据按某一指定对齐方式排列。

说明:·0≤n ≤2,48≤n ≤50, n 默认为 0。取值与对齐方式对应关系如下:

n 对齐方式

0,48 左对齐

1,49 中间对齐

2,50 右对齐

·该命令只在行首有效;

·该命令在打印区域执行对齐;

1.22 ESC d n 打印并向前走纸 n 字符行

【格式】 ASCII 码 ESC d n

十六进制码 1B 64 n

十进制码 27 100 n

功能:打印缓冲区里的数据并向前走纸 n 字符行, 0≤n≤255。

说明:·该命令将打印机的打印起始位置设置在行首;

·该命令不影响由 ESC 2 或 ESC 3 设置的行间距;

1.23 ESC i 打印机全切纸

【格式】 ASCII 码 ESC i

十六进制码 1B 69

十进制码 27 105

9/25

功能:打印机全切纸

1.24 ESC l o a d n1 n2 n3 n4 m1 m2 m3 … mk 升级新版固件

【格式】 ASCII 码 ESC l o a d n1 n2 n3 n4 m1 m2 m3 … mk

十六进制码 1B 6C 6F 61 64 n1 n2 n3 n4 m1 m2 m3 … mk

十进制码 27 108 111 97 100 n1 n2 n3 n4 m1 m2 m3 … mk

功能:升级新版固件

说明: n1 n2 n3 n4 用四个字节来表示固件长度 k.

m1 m2 m3 … mk 表示固件数据, k = (n1 << 24)+ (n2 << 16) + (n3 <<8 )+ n4;

1.25 ESC m 打印机半切纸

【格式】 ASCII 码 ESC m

十六进制码 1B 6d

十进制码 27 109

功能:打印机半切纸

1.26 ESC t n 设置代码页

【格式】 ASCII ESC t n

十六进制 1B 74 n

【范围】 0 ≤ n ≤128

【描述】 从字符代码表中选择页 n

n 代码页

0 CP 437 [美国,欧洲标准]

2 CP 850 [多语言, 西欧语]

3 CP 860 [葡萄牙语]

4 CP 863 [加拿大-法语]

5 CP 865 [北欧- 德语,日耳曼语]

6 CP 1252 [West Europe]

7 CP 737 [Greek]

8 CP 862 [Hebrew]

11 CP 775 [波罗的海语]

13 CP 949 [韩文]

14 CP 950 [繁体中文]

15 CP 936 [简体中文]

16 CP 1252

17 CP 866 [Cyrillice*2]

18 CP 852 [Latin2]

19 CP 858 [西欧语]

21 CP 866 [斯拉夫语/俄语]

10/25

22 CP 855 [斯拉夫语 保加利亚]

23 CP 857 [土耳其语]

24 CP 864 [阿拉伯语]

34 CP 1251[西里尔文 斯拉夫语 俄语]

35 CP 1252[西欧(拉丁文 I)]

36 CP 1253[希腊文]

37 CP 1254[土耳其文]

38 CP 1255[希伯来文]

39 CP 1256[阿拉伯文]

40 CP 1257[波罗的海文]

备注:

CP1251, 西里尔文, 如:保加利亚语,俄语,乌克兰语,比利时语,马其顿语

(FYROM),哈萨克语,吉尔吉斯语,鞑靼语,蒙古语,阿塞拜疆语,乌兹别克语,塞尔维亚语

CP1252, 西欧(拉丁文 I), 如:加泰隆语,丹麦语,德语,英语,西班牙语,芬兰语,法语,冰

岛语,意大利语,荷兰语,挪威语,葡萄牙语,印度尼西亚语,巴士克语,南非语,法罗语,马来语,斯瓦

希里语,加里西亚语,瑞典语

CP1253, 希腊文, 如:希腊语

CP1254, 土耳其文, 如:土耳其语,阿塞拜疆语,乌兹别克语

CP1255, 希伯来文, 如:希伯来语

CP1256, 阿拉伯文, 如:乌都语,波斯语,阿拉伯语(伊拉克,埃及,利比亚,阿尔及

利亚,摩洛哥,突尼斯,阿曼,也门,叙利亚,约旦,黎巴嫩,科威特,阿联酋,巴林,卡塔尔)

CP1257, 波罗的海文, 如:爱沙尼亚语,拉脱维亚语,立陶宛语,

1.27 ESC v 查询打印机状态

【格式】 ASCII 码 ESC v

十六进制码 1B 76

十进制码 27 118

功能: 查询打印机状态 N,N 的 D0—D4 位定义如下表:

位 取值 十六进制码 功能

0

0 00 停止打印

1 01 正在打印

1

0 00 电压正常

1 01 电压过低

2

0 00 温度正常

1 01 温度过高

3

0 00 有纸

1 01 缺纸

5

0 00 未插入外部电源

1 01 已插入外部电源

6

0 00 胶辊已到位

1 01 胶辊未到位

11/25

1.28 ESC w 查询打印结果

【格式】 ASCII 码 ESC w

十六进制码 1B 77

十进制码 27 119

功能: 查询打印结果 N, N 的值定义如下表:

N 打印结果

0 有纸, 缓冲区数据未打印完毕, 正在打印

1 有纸, 缓冲区数据打印完毕, 打印成功

2 缺纸, 缓冲区数据未打印完毕, 打印失败

1.29 ESC { n 选择/取消倒置打印模式

【格式】 ASCII 码 ESC { n

十六进制码 1B 7B n

十进制码 27 123 n

功能:根据 n 值选择或取消倒置打印模式,0 ≤ n ≤ 255 但 n 值只有最低位有效。

说明:·当 n 的最低位为 0 时,取消倒置打印模式;

·当 n 的最低位为 1 时,选择倒置打印模式;

·n 默认值为 0;

12/25

第2章 FS 指令

2.1 FS ! n 设置字符模式

【格式】 ASCII 码 FS ! n

十六进制码 1C 21 n

十进制码 28 33 n

功能: 设置字符模式, n 的值定义如下表:

2.2 FS - n 设置字符下划线

【格式】 ASCII 码 FS – n

十六进制码 1C 2D n

十进制码 28 45 n

n 功能

2.3 FS C n 设置字符编码格式

【格式】 ASCII 码 FS C n

十六进制码 1C 43 n

十进制码 28 67 n

功能:根据 n 的取值来选择字符编码格式。

说明:取值范围: 0≤ n ≤1, 48≤ n ≤19, 255;n 默认值为 0,取值及功能如下:

n 功能

0,48 设置为 GB18030 编码格式

1,49 设置为 BIG5 编码格式

13/25

255 设置为 UTF-8 编码格式

2.4 FS W n 选择/取消字符放大两倍打印

【格式】 ASCII 码 FS W n

十六进制码 1C 57 n

十进制码 27 87 n

功能:根据 n 值选择或取消字符放大两倍打印,0 ≤ n ≤ 255 但 n 值只有最低位有效。

说明:·当 n 的最低位为 0 时,取消字符放大两倍打印;

·当 n 的最低位为 1 时,选择字符放大两倍打印;

·n 默认值为 0;

14/25

第 3 章 GS 指令

3.1 GS ! n 选择字符大小

【格式】 ASCII 码 GS ! n

十六进制码 1D 21 n

十进制码 29 33 n

功能:用 n 的 0 到 2 位选择字符高度,4 到 7 位选择字符宽度。

位 0/1 十六进制码 十进制码 功能

0-3 字符高度选择,见表 1

4-7 字符高度选择,见表 2

表 1 表 2

字符高度选择 字符宽度选择

十六进制码 十进制码 纵向放大 十六进制码 十进制码 横向放大

00 0 1(正常) 00 0 1(正常)

01 1 2(2 倍高) 10 16 2(2 倍宽)

说明:·0 ≤ n ≤255;n 默认为 0,1 ≤,纵向放大倍数≤ 2;1 ≤横向放达倍数≤ 2。

·该条命令对所有字符(ASCII 码字符和汉字)都有效.

·n 值如果超出了规定的范围,则该命令被忽略;

·同一行字符的放大倍数不同时,所有的字符以底线对齐;

·ESC ! 命令也可以选择或者取消字符倍宽和倍高,最后接收的命令有效。

3.2 GS B n 选择/取消反白打印模式

【格式】 ASCII 码 GS B n

十六进制码 1D 42 n

十进制码 29 66 n

功能:根据 n 值选择或取消反白打印模式,0 ≤ n ≤ 255 但 n 值只有最低位有效。

说明:·当 n 的最低位为 0 时,取消反白打印模式;

·当 n 的最低位为 1 时,选择反白打印模式;

·n 默认值为 0;

3.3 GS H n 选择 HRI 字符的打印位置

【格式】 ASCII 码 GS H n

十六进制码 1D 48 n

15/25

十进制码 29 72 n

功能:打印条码时,为 HRI 字符选择打印位置。

说明:·0 ≤ n ≤ 3, 48 ≤ n ≤ 51(n 默认为 0),n 指定 HRI 打印位置如下表:

n 值 打印位置

0,48 不打印

1,49 条码上方

2,50 条码下方

3,51 条码上、下方都打印

·HRI 是对条码内容注释的字符;

·HRI 字符的字体是由 GS f 命令来指定。

3.4 GS L nL nH 设置左边距

【格式】 ASCII 码 GS L nL nH

十六进制码 1D 4C nL nH

十进制码 29 76 nL nH

功能:用 nL 和 nH 设置左边距,左边距设置为( nL + nH×256)点。

说明:·0 ≤ nL ≤ 255;0 ≤ nH ≤ 255,nL 和 nH 默认值均为 0;

3.5 GS W nL nH 设置打印区域宽度

【格式】 ASCII 码 GS W nL nH

十六进制码 1D 57 nL nH

十进制码 29 87 nL nH

功能:用 nL 和 nH 设置打印区域宽度。

说明: 将打印区域宽度设置为[( nL + nH × 256)点。

如果[左边距 + 打印区宽度]超出可打印区域,则打印区域宽度为可打印区域宽度 减

去左边距。

0 ≤ nL ≤ 255;0 ≤ nH ≤ 255,nL 和 nH 默认值均为 0;

16/25

3.6 GS h n 选择条码高度

【格式】 ASCII 码 GS h n

十六进制码 1D 68 n

十进制码 29 104 n

功能:选择条码高度,条码高度为 n 点(1 ≤ n ≤ 255,n 默认为 162)。

3.7 ①GS k m d1...dk NUL②GS k m n d1...dn 打印条码

【格式】①ASCII 码 GS k m d1...dk NUL

十六进制码 1D 6B m d1...dk 00

十进制码 29 107 m d1...dk 0

②ASCII 码 GS k m n d1... dn

十六进制码 1D 6B m n d1... Dn

十进制码 29 107 m n d1... dn

【范围】①0 ≤ m ≤ 6 (k 和 d 的取值范围是由条码类型来决定)

②65 ≤ m ≤ 73 (k 和 d 的取值范围是由条码类型来决定)

功能:选择一种条码类型并打印条码,m 用来选择条码类型,如下所示:

m 条码类型 字符个数 字符 备注

0 UPC-A 11 ≤ k ≤ 12 0~9 48 ≤ d ≤ 57

1 UPC-E 11 ≤ k ≤ 12 0~9 48 ≤ d ≤ 57

2 JAN13(EAN13) 12 ≤ k ≤ 13 0~9 48 ≤ d ≤ 57

3 JAN8(EAN8) 7≤ k ≤8 0~9 48 ≤ d ≤ 57

4 CODE39

1 ≤ k ≤ 255

0~9,

A~Z,

SP,$,%,+,-,

., /

*(开始/结束字符)

48 ≤ d ≤ 57,

65 ≤ d ≤ 90,

d = 32, 36, 37, 43,

45,46,47

d = 42(开始/结束字符)

5 ITF 1 ≤ n ≤255(偶

数)

0~9 48 ≤ d ≤ 57

6 CODABAR

1 ≤ k ≤ 255

0~9

A~D

$, +, -, .,

/,:

48 ≤ d ≤ 57,

65 ≤ d ≤ 68,

d = 36, 43, 45, 46,

47,58,

65 UPC-A 11 ≤ k ≤ 12 0~9 48 ≤ d ≤ 57

66 UPC-E 11 ≤ k ≤ 12 0~9 48 ≤ d ≤ 57

67 JAN13(EAN13) 12 ≤ k ≤ 13 0~9 48 ≤ d ≤ 57

68 JAN8(EAN8) 7≤ k ≤8 0~9 48 ≤ d ≤ 57

69

CODE39

0~9,

A~Z,

48 ≤ d ≤ 57,

65 ≤ d ≤ 90,

17/25

1 ≤ k ≤ 255 SP,$,%,+,-,

., /

*(开始/结束字符)

45,46,47

70 ITF 1 ≤ n ≤255(偶

数)

0~9 48 ≤ d ≤ 57

71

CODABAR 1 ≤ k ≤ 255

0~9

A~D

$, +, -, .,

/,:

48 ≤ d ≤ 57,

65 ≤ d ≤ 68,

47,58,

72 CODE93 1 ≤ k ≤ 255 NU~SP(7FH) 0 ≤ d ≤127

73 CODE128 2 ≤ k ≤ 255 NU~SP(7FH) 0 ≤ d ≤127

说明:对于指定①:

·该命令在这种格式下以 NUL 结束;

·当选择 UPC-A 或者 UPC-E 码时,打印机接收到 12 字节条码数据后,剩余的字

符被当作普通字符处理;

·当选择 JAN13 (EAN13)类型时,打印机接收到 13 字节条码数据后,剩余的字符

被当作普通字符处理;

·当选择 JAN8 (EAN8),类型时,打印机接收到 8 字节条码数据后,剩余的字符被

当作普通字符处理;

·ITF 码数据个数必须是偶数。如果输入奇数个条码数据,最后一个数据被忽略。

对于指定②:

·n 用来指示条码数据的个数,打印机将其后边 n 字节数据作为条码数据处理;

·如果 n 超出了规定的范围,打印机不处理这条命令,将其后的数据作为普通数

据处理。

在标准模式下,对于这两条命定:

·如果条码数据 d 超出了规定的范围,该命令无效;

·如果条码横向超出了打印区域,无效;

·这条命令不管由 ESC 2 或 ESC 3 命令设置的行高是多少,走纸距离都与设定的条

码高度相等;

·这条命令只有在打印缓冲区没有数据时才有效,如果打印缓冲区有数据,该命令

被忽略;

·打印条码后,将打印位置设置在行首;

·打印模式设置(如加粗、双重打印、下划线、字符大小、反色以及字符顺时针旋

转 90°等)不影响这条命令,但是倒置模式对条码打印有影响。

·这条命令只将条码图形生成到打印缓冲区,但是并不打印。处理完条码数据后将

打印位置移到条码的右边;

·如果 d 超出了规定的范围,该命令将被忽略;

·如果条码宽度超出了打印区域,该命令被忽略。

18/25

3.8 GS v 0 m xL xH yL yH d1...dk 打印光栅位图

【格式】 ASCII 码 GS v 0 NUL xL xH yL yH d1...dk

十六进制码 1D 76 30 0 xL xH yL yH d1...dk

十进制码 29 118 48 0 xL xH yL yH d1...dk

功能:打印光栅位图

各参数范围: 0 ≤ xL ≤ 255 , 0 ≤ xH ≤ 255

0 ≤ yL ≤ 255 , 0 ≤ d ≤ 255

k = ( xL + xH × 256) × ( yL + yH × 256) ( k ≠ 0)。

说明:·xL、xH 表示水平方向位图字节数(xL+ xH × 256);

·yL、yH 表示垂直方向位图点数( yL+ yH × 256);

·只有打印机缓冲区无数据时该命令才有效;

·字符放大、加粗、双重打印、倒置打印、下划线、黑白反显等打印模式对该命

令无效;

·位图超出打印区域的部分不打印;

·ESC a(选择对齐模式)对光栅位图有效;

·宏定义的过程中,该命令将停止宏定义而执行该命令。该命令不作为宏定义的

一部分;

·d 代表位图数据。每个字节的相应位为 1 表示打印该点,为 0 不打印该点。

3.9 GS w n 选择条码模块宽度

【格式】 ASCII 码 GS w n

十六进制码 1D 77 n

十进制码 29 119 n

功能:选择条码模块宽度, 1 ≤ n ≤ 5,n 默认为 3。

19/25

第 4 章 RS 指令

4.1 RS SOH 进入休眠模式

【格式】 ASCII 码 RS SOH

十六进制码 1E 01

十进制码 30 01

功能: 打印机立即进入休眠模式

4.2 RS STX N1 N2 N3 N3 N5 设置自动进入休眠超时时间

【格式】 ASCII 码 RS STX N1 N2 N3 N4 N5

十六进制码 1E 02 N1 N2 N3 N4 N5

十进制码 30 02 N1 N2 N3 N4 N5

功能: 设置自动进入休眠超时时间.

说明: N1=1. 开启自动进入休眠功能; N1=0. 关闭自动进入休眠功能; 当 N1=0 时,

N2 N3 N4 N5 的值应全部为 0.

系统自动进入休眠的时间

t = (long)(N2<<24)+(long)(N3<<16)+(long)(N4<<8)+N5 毫秒.这个时间不能小于 10 秒.

4.3 RS ETX N1 N2 N3 N4 N5 允许/禁止打印

【格式】 ASCII 码 RS ETX N1 N2 N3 N4 N5

十六进制码 1E 03 N1 N2 N3 N4 N5

十进制码 30 03 N1 N2 N3 N4 N5

功能:允许/禁止打印

说明: N2 N3 N4 N5 的值必须为 16 进制格式的 BF D8 D6 C6

N1=1. 允许打印 N1=0 禁止打印.

4.4 RS EOT N1 N2 N3 N4 N5 设置自动禁止打印超时时间

十六进制码 1E 04 N1 N2 N3 N4 N5

十进制码 30 04 N1 N2 N3 N4 N5

功能:设置自动禁止打印超时时间

N1> 0 使能自动禁止打印功能. 超时时间为 N1 秒;

N = 0 关闭自动禁止打印功能. 一直开启打印功能.

20/25

4.5 RS ENQ 查询系统电源电压

【格式】 ASCII 码 RS ENQ

十六进制码 1E 05

十进制码 30 05

功能:查询系统电源电压

说明: 打印机返回两个字节 nH, nL .

电压值计算方法: Vbat = nH*256+ nL (单位:mv)

4.6 RS SPACE 查询软件版本

【格式】 ASCII 码 RS SPACE

十六进制码 1E 20

十进制码 30 32

功能:查询软件版本

说明: 打印机返回字符串 s .

4.7 RS 0xde 进入串口调试模式

【格式】 ASCII 码 RS 0xde

十六进制码 1E de

十进制码 30 222

功能:进入串口调试模式

4.8 RS 0xdf r e s e t 打印机复位

【格式】 ASCII 码 RS 0xdf r e s e t

十六进制码 1E df 72 65 73 65 74

十进制码 30 32 114 101 115 101 116

功能:打印机接收到此指令后立即复位

4.9 RS 0xf0 U n l o c k 清除 Flash 读保护, 擦除打印机固件.

【格式】 ASCII 码 RS 0xf0 U n l o c k

十六进制码 1E f0 55 6E 6C 6F 63 6B

十进制码 30 240 85 110 108 111 99 107

功能:打印机接收到此指令后清除 Flash 读保护, 擦除打印机固件.

注意: 此指令会擦除打印机固件. 打印机所有功能将都不能使用.

此指令用于加密认证失败后自毁打印程序.

此指令也用于清除 Flash 读保护重新烧录新版打印机程序.

请慎用此指令.

21/25

第 5 章 US 指令

5.1 US SOH 打印自检信息

【格式】 ASCII 码 US SOH

十六进制码 1F 01

十进制码 31 01

功能: 打印自检信息

说明: 打印机接收到此指令后会先把缓冲区内的数据打印完毕, 在打印自检信息前打印

机会将各项参数初始化为默认值.

5.2 US DC1 nH nL n1 n2 n3 … nk 打印 QrCode 二维码

【格式】 ASCII 码 US DC1 nH nL n1 n2 n3 … nk

十六进制码 1F 11 nH nL n1 n2 n3 … nk

十进制码 31 17 nH nL n1 n2 n3 … nk

功能:打印 QrCode 二维码

说明: k 为二维码的字符数目, k = nH*256+nL;

例如: 打印二维码”ABC”, 则发送 16 进制格式的 1F 11 00 03 41 42 43

5.3 US DC2 n 设置 QrCode 二维码对齐方式

【格式】 ASCII 码 US DC2 n

十六进制码 1F 12 n

十进制码 31 18 n

功能:设置 QrCode 二维码对齐方式

说明: n 的取值范围 0 <= n <= 2

n 功能

0 左对齐

1 居中对齐

2 右对齐

5.4 US DC3 n 设置 QrCode 二维码顶部空白高度

【格式】 ASCII 码 US DC3 n

十六进制码 1F 13 n

十进制码 31 19 n

功能:设置 QrCode 二维码顶部空白高度

说明: n 的取值范围 0 <= n <= 255, n 默认取值 24

22/25

5.5 US DC3 n 设置 QrCode 二维码底部空白高度

【格式】 ASCII 码 US DC4 n

十六进制码 1F 14 n

十进制码 31 20 n

功能:设置 QrCode 二维码底部空白高度

5.6 US NAK n 设置 QrCode 二维码最小模块单元宽度

【格式】 ASCII 码 US NAK n

十六进制码 1F 15 n

十进制码 31 21 n

功能:设置 QrCode 二维码最小模块单元宽度

说明: n 的取值范围 2,4,8 n 默认取值 4

5.7 US 0 nH nL n1 n2 n3 … nk 打印 Unicode 字符

【格式】 ASCII 码 US 0 nH nL n1 n2 n3 … nk

十六进制码 1F 30 nH nL n1 n2 n3 … nk

十进制码 31 48 nH nL n1 n2 n3 … nk

功能:打印 Unicode 字符

说明: k 表示 Unicode 字符的数目 k = nH*256+nL;

23/25

第 6 章 其他指令

6.1 HT 从下一制表符位置开始打印

【格式】 ASCII 码 HT

十六进制码 09

十进制码 9

功能:·从下一制表符位置开始打印.

6.2 LF 打印并换行

【格式】 ASCII 码 LF

十六进制码 0A

十进制码 10

功能:·将打印缓冲区中的数据打印出来,并且按照当前行间距,把打印纸向

前推进一行

6.3 FF 进纸到下一主黑标/间隙处

【格式】 ASCII 码 FF

十六进制码 0C

十进制码 12

功能:·进纸到下一黑标/间隙处.

6.4 CR 打印缓冲区内容

【格式】 ASCII 码 CR

十六进制码 0D

十进制码 13

功能:·将打印缓冲区中的数据打印出来.

说明:·如果缓冲区内无数据此指令则无效.

6.5 SO 进纸到下一副黑标处

【格式】 ASCII 码 SO

十六进制码 0E

十进制码 14

功能:·进纸到下一副黑标处.

24/25

附录 1: 版本说明

Feishifs Release: 2018/07/06

说明: 修改 ESC v 指令协议及说明.

Feishifs Release: 2018/05/05

说明: 补充 FS C n 设置字符编码格式指令

Feishifs Release: 2018/04/18

说明: 修改 codepage 命名.

Feishifs Release: 2017/05/06

说明: 在上一版本的基础上:

1. 优化[ESC N n m 设置打印机参数并保存到 Flash 中]指令. 波特率范围增加

230400, 460800, 921600. 修改打印浓度级别说明. 修改设置代码页说明.

2. 增加[US SOH 打印自检信息]指令.

Feishifs Release: 2017/04/19

1. 将打印 unicode 字符指令[US SPACE m nH nL n1 n2 n3 … nk]改为

[US 0 nH nL n1 n2 n3 … nk].

2. 删除了[ESC t n 选择代码页]指令中日文代码页类型.

Feishifs Release: 2017/04/08

3. 纠正了[GS w n 选择模块宽度指令]中错误的描述.

4. 删除了[ESC t n 选择代码页]指令中一些无效的代码页类型.

Feishifs Release: 2017/03/16

说明: 首次发布的标准版本.


举报收藏 0打赏 0