十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这个应该是打印机命令格式,不同的打印机命令格式不尽相同,你可以找这一款打印机的命令说明看一看,一般光盘里有带的,或者到官网上下也可以。下面一些你可以先看看:
10年积累的成都网站设计、网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先建设网站后付款的网站建设流程,更有宁县免费网站建设让你可以放心的选择与我们合作。
英文模式下的命令
代码 功能
CR 回车
ESC ! 设置打印方式
ESC % 选择或取消用户自定义字符集
ESC 定义用户自定义字符集
ESC * 设置位映射方式
ESC @ 初始化打印机
ESC ~ LED ON/OFF
ESC 返回行首
ESC 2 选择行间距为1/6英寸
ESC 3 设置行进为最小间距
ESC BEL 蜂鸣器ON/OFF
ESC C 设置单页长度
ESC c0 选择打印页
ESC c1 选择行间距
ESC c3 选择纸结束信号输出
ESC c4 选择打印纸及检测器(终止打印)
ESC c5 禁止/使能面板开关
ESC c6 禁止/使能ON-LINE开关
ESC d 打印及N行进纸
ESC D 设置TAB位置
ESC e 打印病退回N行
ESC f 设单页等待时间
ESC F 选择或取消单页退纸区
ESC i 全切割
ESC J 以最小间距进行打印和进纸
ESC K 以最小间距进行打印和退纸
ESC l 选择或取消倒过来的字符
ESC m 局部切割
ESC o 印章
ESC p 产生指定脉冲
ESC q 释放纸
ESC r 选择打印颜色
ESC R 选择国际字符子集
ESC SP 设置右边界
ESC t 选择字符码表
ESC U 选择或取消单向打印
ESC V 发送打印机状态
ESC z 设置或取消两页并行打印
FF 打印送出单页
HT 水平TAB
LF 换行
RS 流水TAB
中文模式下的命令
代码 功能
FS – n 设置中文字符下划线模式开关
FS ! n 选择中文字体
FS 选择中文字符模式
FS . 取消中文模式
EPSON打印控制指令集
打印命令 功能
格式: ASCII: 以标准ASCII字符序列表示
十进制: 以十进制数字序列表示
十六进制: 以十六进制数字序列表示
说明:该命令功能和使用说明。
HT 水平制表
格式: ASCII: HT
十进制: 09
十六进制: 09
说明:
打印位置进行到下一水平制表位置。
如果当前打印位置超过了最后一个水平制表位置,则HT命令不被执行。
水平制表位置由 ESC D命令设置。
LF 打印并换行
格式: ASCII: LF
十进制: 10
十六进制: 0A
说明:
打印存放在行编辑缓存中的一行数据并按当前设定的行距向前走纸一行。ESC2,ESC3指令可设定行距的长短。
如果行编辑缓存空,则只按当前设定的行距向前走纸一行。
CR 打印回车
格式: ASCII: CR
十进制: 13
十六进制: 0D
说明:
当打印在行编辑缓存中的一行数据之后,不进行走纸操作。
DLE EOT n 实时状态传送
格式: ASCII: DLE EOT n
十进制: 16 04 n
十六进制: 10 04
说明:
1 ≤ n ≤ 4
传送以实时的方式,n代表被选择的打印机状态,基于下列参数:
n = 1: 打印机状态
n = 2: 脱机状态
n = 3: 错误状态
n = 4: 纸检测器状态
返回的字节每位设置如下:
n = 1: 打印机状态
n = 2: 脱机状态
n = 3: 错误状态
n = 4: 纸检测器状态
DLE ENQ n 对打印机的实时请求
格式: ASCII: DLE ENQ n
十进制: 16 05 n
十六进制: 10 5
说明:
n = 0, n = 2
打印机对主机请求作出反应,n值定义如下:
n = 0: 恢复到联机状态
n = 2: 清除接收和打印缓冲区,并恢复错误.
ESC SP n 设置字符右间距
格式: ASCII: ESC SP n
十进制: 2732 n
十六进制: 1B20 n
说明:
以半点为设定单位(1/144英寸),设置字符右边间距为n个半点距。
默认值n=0。
ESC ! n 设置字符打印方式
格式: ASCII: ESC ! n
十进制: 2733 n
十六进制: 1B21 n
说明:
0≤n≤255
ESC ! n是综合性的字符打印方式设置命令,用于选择打印字符的大小和下划线。
打印参数n的每位定义为:
位 功能 值
0 1
0 字模选择 7×9 5×7
1 无定义
2 无定义
3 着重模式 取消 设定
4 倍 高 取消 设定
5 倍 宽 取消 设定
6 无定义
7 下划线 取消 设定
默认值n=0,
ESC % n 允许/禁止用户自定义字符
格式: ASCII: ESC % n
十进制: 2737 n
十六进制: 1B25 n
说明:
参数n为一个字节,只有最低位有效。
当n=<*******1>B时,选择用户自定义字符集;
当n=<*******0>B时,选择内部字符集。
0≤n≤255,默认值n=0。
ESC 设置用户自定义字符
格式: ASCII: ESC y n m x d1 d2……db
十进制: 27 38 y n m x d1 d2……db
十六进制: 1B 26 y n m x d1 d2……db
说明:
该命令用于自定义字符。各参数为:
y:字符的纵向字节数。这里取 y=1,2。
n:自定义字符集的起始ASCII码,n≥32。
m:自定义字符集的终止ASCII码,m≤127。自定义字符个数为m-n+1,最多可定义96个字符。
当只有一个自定义字符时,取m=n。
a:自定义字符的水平方向的点数。
d1 d2……db:自定义字符的数据。每个字符 y×x个字节,m-n+1个自定义字符共有:
(y×x)×(m-n+1)个字节。
每个自定义字符数据的格式:
d1 d3 … d(y×x)×(m-n+1)-1
d2 d4 … d(y×x)×(m-n+1)
样例如下:
发送的命令如下:
ESC y c1 c2 X p1 p2 p3 d4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14
Code 1B 26 02 20 20 07 1F 80 20 00 44 00 80 00 44 00 20 00 1F 80
ESC * 设置图形点阵
格式: ASCII: ESC * m n1 n2 D1,D2 … Dk
十进制: 27 42 m n1 n2 D1,D2 … Dk
十六进制: 1B 2A m n1 n2 D1,D2 … Dk
说明:
该命令用来设置点阵图形模式(m)和横向图形点阵。
m = 0,1: 表示打印密度。
0≤n1≤255,0≤n2≤1,0≤Dk≤255,k= n1+ n2×256。
n1,n2为两位十六进制数,n1这低字节,n2这高字节,k= n1+ n2×256,表示该命令下载的要打印图形的横向点数,该值应小于打印机的最大行宽打印点数。如果下送的点图数据超出一行的最大行宽打印点数时,超出的部分被忽略。
m 垂直方向点数 点密度 最大点数 图形打印模式
0 8 单密度 210 相邻点打印
1 8 双密度 420 相邻点不打印
Dk 定义为:
ESC -n 设置/取消下划线模式
格式: ASCII: ESC - n
十进制: 27 45 n
十六进制: 1B 2D n
说明:
n = 0, 1, 48, 49
n = 0 or 48,取消下划线模式。
n = 1 or 49, 设置下划线模式。
ESC 2 设定1/6英寸换行量
格式: ASCII: ESC 2
十进制: 2750
十六进制: 1B32
说明:
此指令将打印机的换行量设定为1/6英寸。
ESC 3 n 设定 n/144英寸换行量
格式: ASCII: ESC 3n
十进制: 2751 n
十六进制: 1B33 n
说明:
此指令将打印机的换行量设定为 n/144英寸。
n=1 - 255。
ESC 〈 打印头归位
格式: ASCII: ESC 〈
十进制: 2760
十六进制: 1B3C
说明:
执行该指令后,打针头会回到原位(home的位置)。
ESC =n 设备设置/取消
格式: ASCII: ESC = n
十进制: 27 61 n
十六进制: 1B 3D n
说明:
1 ≤n ≤3
默认 n = 1
位 功能 值
0 1
0 打印机选择 取消 设定
1 顾显选择 取消 设定
2 无定义
3 无定义
4 无定义
5 无定义
6 无定义
7 无定义
ESC ?n 取消用户自定义字符
格式: ASCII: ESC ? n
十进制: 27 63 n
十六进制: 1B 3F n
说明:
32 ≤n ≤126
ESC @ 初始化打印机
格式: ASCII: ESC @
十进制: 2764
十六进制: 1B40
说明:
该命令初始化打印机:使打印机恢复到最初的联机状态,清除以前留下的程序。
ESC D NULL 消除所有的水平制表位置
格式: ASCII: ESC D NULL
十进制: 27 68 0
十六进制: 1B44 0
说明:
ESC D NUL命令消除所有的水平制表位置,之后再执行的HT命令将无效。
命令(ASCII) 十六进制 功能说明
HT 9 打印位置进行到下一水平制表位置
LF 0a 打印行缓冲器里的内容,并向前走纸一行
CR 0D 打印回车
ESC SP 1B 20 n 设置字符右边的字间距为n个半点距(1/140英寸)
DLE EOT n 10 04 实时状态传送
DLE ENQ n 10 5 对打印机的实时请求
ESC SP n 1B 20 n 设置字符右间距
ESC ! n 1B 21 n 设置字符打印方式
ESC % n 1B 25 n 允许/禁止用户自定义字符
ESC 1B 26 设置用户自定义字符
ESC * 1B 2A 设置图形点阵
ESC - n 1B 2D n 设置/取消下划线模式
ESC 2 1B 32 设定1/6英寸换行量
ESC 3 n 1B 33 n 设定 n/144英寸换行量
ESC 〈 1B 3C 打印头归位
ESC = n 1B 3D n 设备设置/取消
ESC ? n 1B 3F n 取消用户自定义字符
ESC @ 1B 40 初始化打印机
ESC D NULL 1B 44 0 消除所有的水平制表位置
ESC E n 1B 45 0 设置/取消着重模式
ESC G n 1B 47 0 设置/取消重叠模式
ESC J n 1B 4A n 执行n/144英寸走纸
ESC K n 1B 4B n 打印并反向走纸
ESC R n 1B 52 n 选择国际字符集
ESC U n 1B 55 n 设置/取消单向打印
ESC a n 1B 61 n 选择对齐模式
ESC c 3 n 1B 63 33 n 输出纸尽传感器
ESC c 4 n 1B 63 34 n 设定缺纸时停止打印
ESC c 5 n 1B 63 35 n 允许/禁止走纸按键
ESC d n 1B 64 n 打印并进纸n字符行
ESC e n 1B 65 n 打印并反向进纸n字符行
ESC p 1B 70 产生钱箱驱动脉冲
ESC r n 1B 72 n 选择打印颜色
ESC t n 1B 73 n 选择字符集
ESC { n 1B 7B n 设置/取消倒向打印模式
FS ! 1B 75 n 汉字综合选择
FS & 1C 26 进入汉字打印方式
FS ~ S 1C 7E 53 n 选择汉字打印速度
FS · 1C 2E 退出汉字打印方式
FS 2 1C 32 用户自定义汉字
FS ? c1 c2 1C 3F c1 c2 取消用户自定义汉字
FS C n 1C 43 n 设定日文汉字编码系统
FS S n1 n2 1C 53 n1 n2 设定全角汉字字间距
FS W n 1C 57 n 设定/取消四倍角汉字模式
GS ( F pL pH a m nL nH 1D 28 设置黑标定位偏移量
GS In 1D 49 n 传送打印机ID
GS V 1D 56 m 走纸到切纸位置
1D 56 m n
GS a n 1D 61 n 设定/取消自动返回状态
GS r n 1D 72 n 状态传送
GS z 1D 7A 设置联机恢复等待时间
错!!!
用API...
'在Form1中。。。
Private Declare Function Beep Lib "kernel32.dll" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long
'多给我:zhs490770些分哦
Private sub Form_Load()
msgbox" 下一步你就会听到声音,按确定吧 ",VBOKONLY,"给我分哦"
Beep 2000 , 300
'发出声音频率值为2000,长度为300的蜂鸣器声音
End Sub
三菱蜂鸣器叫一声编程方法:
1、响两秒停一秒的话,就用两个定时器一个设为两秒,另一个设为一秒交替工作,输出端口控制蜂鸣器的电源就可以了。
2、输入端采用边沿触发,两秒定时器采用脉冲触发。
蜂鸣器编程的话,有个API函数,VB中的声明为
Declare Function Beep Lib "kernel32" Alias "Beep" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long
调用方法是Beep 声音频率,持续时间(毫秒为单位)
比如 beep 2000,1000
如果是声卡编程的话,也有相应的API函数,比如你可以用DirectSound(也就是DirectX的一部分),功能比较强大,也很专业。事实上,如果你使用的是专业级的声卡和音响设备,它可以在一定范围内回放出超出人耳听觉范围的声音。当然也可以用简单一点的API,以下是几个需要的函数:
Private Declare Function midiOutGetDevCaps Lib "winmm.dll" Alias "midiOutGetDevCapsA" (ByVal uDeviceID As Long, lpCaps As MIDIOUTCAPS, ByVal uSize As Long) As Long
Private Declare Function midiOutGetNumDevs Lib "winmm" () As Integer
Private Declare Function MIDIOutOpen Lib "winmm.dll" Alias "midiOutOpen" (lphMidiOut As Long, ByVal uDeviceID As Long, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal dwFlags As Long) As Long
Private Declare Function midiOutClose Lib "winmm.dll" (ByVal hMidiOut As Long) As Long
Private Declare Function midiOutShortMsg Lib "winmm.dll" (ByVal hMidiOut As Long, ByVal dwMsg As Long) As Long
Private Declare Function midiOutGetErrorText Lib "winmm.dll" Alias "midiOutGetErrorTextA" (ByVal err As Long, ByVal lpText As String, ByVal uSize As Long) As Long
Private Const MAXERRORLENGTH = 128 ' max error text length (including NULL)
Private Const MIDIMAPPER = (-1)
Private Const MIDI_MAPPER = (-1)
'MIDIOUTCAPS结构描述了Musical Instrument Digital Interface(MIDI)输入设备的性能
Type MIDIOUTCAPS
wMid As Integer
wPid As Integer ' 产品 ID
vDriverVersion As Long ' 设备版本
szPname As String * 32 ' 设备 name
wTechnology As Integer ' 设备类型
wVoices As Integer
wNotes As Integer
wChannelMask As Integer
dwSupport As Long
End Type
Public Sub note_on(ch As Integer, ByVal kk As Integer, v As Integer)
' 发音主函数。参数分别为通道编号,音调,速度
Call midi_outshort(H90 + ch, kk, v)
End Sub
Sub midi_outshort(b1 As Integer, b2 As Integer, b3 As Integer)
Dim midi_error As Integer
midi_error = midiOutShortMsg(hMidi, b3 * H10000 + b2 * H100 + b1)
If Not midi_error = 0 Then
Call midi_outerr(midi_error)
End If
End Sub
Sub midi_outerr(ByVal midi_error As Integer)
Dim s As String
Dim x As Integer
s = Space(MAXERRORLENGTH)
x = midiOutGetErrorText(midi_error, s, MAXERRORLENGTH)
MsgBox s
End Sub