【技术实现步骤摘要】
一种基于逻辑表驱动法的打印机指令控制算法
[0001]本专利技术涉及打印机指令控制
,尤其涉及一种基于逻辑表驱动法的打印机指令控制算法
。
技术介绍
[0002]世面上常见的大部分票据打印机都是使用
ESC/POS
指令,
ESC/POS
指令是
EPSON
公司自己制定的针式打印机的标准化指令集,现在已成为票据打印机控制语言事实上的工业标准
。
但
ESC
指令功能繁杂,指令有上百条,使用普通的逻辑判断语句
(if
…
else
或
switch
…
case)
需要编写的代码量很大,开发难度高,很容易产生冗余代码,后期增加功能需要动到整个代码架构,无形中增加了出错的可能性
。
技术实现思路
[0003]本专利技术的目的在于提供一种基于逻辑表驱动法的打印机指令控制算法,从而解决现有技术中存在的前述问题
。
[0004]为了实现上述目的,本专利技术采用的技术方案如下:
[0005]一种基于逻辑表驱动法的打印机指令控制算法,包括如下步骤,
[0006]S1、
新建两级驱动表,表中每个参数对应到相应的功能函数;
[0007]S2、
打印机创建用于循环解析指令的线程;
[0008]S3、
判断打印机是否从上位机接收到指令数据,若是,则进入
S4
;否则继续等 ...
【技术保护点】
【技术特征摘要】
1.
一种基于逻辑表驱动法的打印机指令控制算法,其特征在于:包括如下步骤,
S1、
新建两级驱动表,表中每个参数对应到相应的功能函数;
S2、
打印机创建用于循环解析指令的线程;
S3、
判断打印机是否从上位机接收到指令数据,若是,则进入
S4
;否则继续等待直至接收到指令数据;
S4、
打印机对接收到的指令数据进行解包分析;
S5、
判断解包分析出的首字节在一级表格中是否存在,若是,则进入
S6
,否则返回
S3
;
S6、
判断解包分析出的第二字节在二级表格中是否存在,若是,则查表并调用对应的功能函数,并返回
S3
;否则直接返回
S3。2.
根据权利要求1所述的基于逻辑表驱动法的打印机指令控制算法,其特征在于:一级表格中存放各个指令大类,二级表格中存放每个指令大类中包含的功能函数
。3.
根据权利要求1所述的基于逻辑表驱动法的打印机指令控制算法,其特征在于:步骤
S4
和
S5
之间还包括,判断解包分析出的首字节是否小于
0x20
,若是,则进入
S5
,否则,表示指令数据为可打印字符,打印机启动打印
。4.
根据权利要求1所述的基于逻辑表驱动法的打印机指令控制算法,其特征在于:步骤
S5
中,若解包分析出的首字节在一级表格中存在,则表示指令数据为不可执行指令,返回步骤
S3
;否则表示指令数据为可执行指令,则根据可执行指令的类别执行步骤
S6
,调用相应的功能函数
。5.
根据权利要求4所述的基于逻辑表驱动法的打印机指令控制算法,其特征在于:当可执行指令为
LF
指令,则打印机执行换行指令;当可执行指令为
ESC
指令,则判断解包分析出的第二字节在二级表格中是否存在,若是,则调用对应的
ESC
功能,否则返回
S3
;当可执行指令为
F...
【专利技术属性】
技术研发人员:葛永江,
申请(专利权)人:艾体威尔电子技术北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。