资讯详情

一种Linux系统的微型针式打印机及其驱动方法与流程

本发明涉及打印机技术,特别是微型打印机及其驱动 动方法。

背景技术:

传统的微针打印机芯驱动模式必须使用特殊的MCU 控制芯片、电机控制芯片、字库芯片。为使用微型打印机芯,应使用微型打印机芯 用程序必须首先通过串口将待打印字符的编码和打印位置信息 ESC命令发送至MCU,MCU根据ESC存储命令和字库IC中的字 图形转换为打印头控制信号,纸电机控制信号,字车电机控制 只有在可以打印信号等。

传统的微型打印机需要多个芯片的协同工作,特别是由于字库存储IC 价格昂贵,只能支持2-3种英文点阵字库,如5x7,7x7两种。以及 以宋体或黑体为基础的宋体或黑体GB宋体中文字库编码2312,字库数量少, 字体大小固定,不能满足各种字体、字体大小的票据打印场景需求。

传统的微针打印机MCU,多任务操作系统无法操作 统,针对票据打印无线、有线云端处理的微型打印机,必须使用嵌 入式CPU,如ARM或MIPS芯片,运行Linux内核,Linux或Android 操作系统。而嵌入式CPU,由于没有打印机控制器,外部专用 打印机MCU芯片实现打印功能。由于需要外部部专用打印机 MCU而字库芯片,大大增加了新型微型打印机的成本。同时因为 双CPU降低了系统的可靠性。

技术实现要素:

针对现有技术的不足,本发明的目的是提供新的微型 使用嵌入式打印机及其驱动方法ARM CPU直接驱动打印头 系统自带的存储器不需要额外的特殊运动驱动MCU,字库芯片。 同时,使用Linux系统中英文矢量字库配合字库的排版和处理 程序,可针对任意大小的字体实现打印,特别适用于有多种字体, 各种品牌的票据打印场景。

本发明的技术方案如下:一种基于Linux微针打印系统 机器:包括驱动打印机的驱动电路,驱动电路:

走纸电机采用嵌入式CPU上的GPIO或PWM控制器和电机 芯片输入端连接,电机控制芯片输出端与打印机芯的纸电机连接;

嵌入式打印头CPU上的GPIO经过MOS管或达林顿管与打 打印机芯的打印头控制信号连接;

回位传感器采用嵌入式CPU上的GPIO与打印机芯回位传感器 信号连接;

嵌入式黑标传感器CPU上的GPIO黑标传感器与打印机芯一起打印 信号连接;

缺纸传感器采用嵌入式CPU上的GPIO与打印机芯缺纸传感器 信号连接;

温度传感器采用嵌入式CPU上的ADC控制器和打印机芯的温度 传感器信号连接。

可选择电机驱动芯片GPIO或PWM一个信号。

根据实际硬件选择打印头MOS管或达林顿管。

优选的,根据回位传感器GPIO状态判断打印头是否归位,但 然后根据打印头的位置对字车电机进行相应的控制。

根据黑标传感器,优选GPIO判断打印纸是否检测到黑色 标记,然后根据打印驱动程序设置的配置,制作相应的纸电机 控制。

根据缺纸传感器GPIO状态判断打印纸是否存在。 根据打印驱动程序设置的配置,对打印程序进行相应处理。

根据温度传感器优化ADC判断打印头是否过热,然后根 根据打印驱动程序设置的配置,制定相应的打印速度和打印模式 处理。

一种基于Linux微针打印机打印驱动方法,其中,打印 驱动方法包括:

第一步:在有打印需求的应用程序中,向打印驱动发出打印请求 在这种情况下,向电机芯片发出控制信号,要求字车电机移动 将打印头移动到车架指定位置的装置;

步骤2,根据应用程序发送的打印数据,将打印请求转换为 逐列打印头支持的驱动信号装置;

第三步:将打印数据的行间距转换为走纸请求,并请走纸 转换为打印机走纸电机支持的驱动信号进行走纸移动控制 置;

步骤4,将打印机的必要属性信息返回发送请求的应用程序 的装置;

此外,步骤还包括:根据接收到的打印机语言安排打印 打印操作。

此外,步骤还包括:将打印状态信息发送到打印驱动接口。

打印机的必要属性信息包括以下部分或全部信息:缺失 纸张状态,打印纸黑标状态。

在上述打印机驱动程序步骤中,步骤1根据实际驱动程序 接口,接收打印机请求和数据,执行相应的打印动作和走纸动作。

在上述打印机驱动程序步骤中,步骤2根据实际驱动 报告打印机状态Linux内核UEVENT事件。

在上述打印机驱动程序步骤中,步骤3根据实际驱动 接口、回送打印机缺纸状态、打印纸黑标状态。

应用本发明只需嵌入式CPU及Linux系统上,增加马达 驱动IC,打印头驱动MOS安装打印机驱动程序管或达林顿管 可以打印序列、字库排版和处理程序。这种驱动方式不仅可以 为了降低硬件成本,提高系统可靠性,Linux操作系统下的微 针式打印提供了一种操作方便、成本低、有效的方法。

附图说明

图1是本发明的打印驱动功能框图。

图2是本发明的打印驱动程序流程图。

具体实施方法

本发明实施例中的技术将结合本发明实施例中的附图 方案清晰、完整地描述,显然,所描述的实施例只是本发明 部分实施例,而不是全部实施例。基于本发明中的实施例 普通技术人员在没有创造性劳动的情况下获得的所有其他东西 实施例均属于本发明的保护范围。

首先,增加打印机芯驱动所需设备的打印需求 电路的功能框图如图1所示。微型打印机包括嵌入式打印机 CPU10,马达驱动IC通过电路或电线连接打印机芯30, 其中,打印机芯30包括电路通信连接的走纸电机31、字车电机32、 其中:

走纸马达31嵌入式CPU上的GPIO或PWM控制器和电机控制 芯片输入端连接,电机控制芯片输出端与打印机芯的纸电机连接 接;

字车马达32嵌入式CPU上的GPIO或PWM控制器和字车马 大控制芯片输入端连接,电机控制芯片输出端与打印机芯的字车马 达连接;

嵌入式打印头33CPU上的GPIO经过MOS管或达林顿管与 打印机芯的打印头控制信号连接。

回位传感器34嵌入式CPU上的GPIO与打印机芯的回位传 传感器信号连接。

黑标传感器35嵌入式CPU上的GPIO黑标传输与打印机芯 传感器信号连接。

缺纸传感器采用嵌入式CPU上的GPIO与打印机芯缺纸传感器 信号连接。

温度传感器36CPU上的ADC控制器和打印机芯的温度 度传感器信号连接。

根据选择马达驱动芯片20GPIO或PWM一个信号。

打印头33根据实际硬件选择MOS一种管道或达林顿管。

根据回位传感器34,GPIO判断打印头是否归位,然后根部 根据驱动程序设置的打印头位置印头位置进行调整和控制。

根据黑标传感器35的GPIO状态判断打印纸是否检测到黑标, 然后根据打印驱动程序设置的配置调整和控制走纸电机。

根据缺纸传感器GPIO判断打印纸是否存在状态。然后根据情况。 打印驱动程序设置的配置,打印程序提示故障。

根据温度传感器36的优选ADC判断打印头是否过热, 然后根据打印驱动程序设置的配置,制作打印速度和打印模式 调整或待机。

在本发明的具体实施例中,电机驱动芯片20支持微针 打印机由纸电机和字车电机驱动。电机芯片在Linux下的驱动程 在顺序中,需要根据实际的硬件配置参数进行修改。根据实际电机相位 控制,驱动电流控制,加减速控制,修改驱动程序。 Linux可在系统下完成字车电机和走纸电机的控制。

所需的打印头驱动MOS管道或达林顿管支持微针打印 机器的打印头驱动。打印头在Linux在下一个驱动程序中,需要根据实际情况 修改硬件配置参数。根据实际打印头针数9针或18针,打印 头回针时间,打印头线圈最大负载时间,修改驱动程序。 样在Linux系统下就可以进行打印头的控制。

回位传感器、缺纸传感器、黑标传感器、温度传感器 GPIO或ADC支持微针打印机回位检测和缺纸检测的信号 黑标检测,温度检测。Linux在驱动程序中,需要根据实际需要 修改配置参数。Linux打印机可以在系统下回位,缺失 检测纸张、黑标、温度状态。

图2作为本发明的具体实施例,给出了应用本发明的打印驱动 程序流程图在有打印要求的设备上运行,驱动程序步骤 包括:

S100、初始化打印机驱动程序;

S接收应用程序的打印请求;

S120.接收待打印的字符行预处理数据到共享内存Buffer1, Buffer2;

S130、检查单向Buffer1.数据合法性;

S140、驱动字车马达加速至字符行起始打印位置;

S150、根据Buffer1对应点位置的值驱动9针或18针打印头 针或不针;

S160.将字车电机驱动到下列位置;

循环执行步骤S150、S160,直到所有列数据都打印完毕。

S170检查双向Buffer2.数据合法性;

S180如果Buffer如果不是空的,控制电机反向;

S190驱动字车电机加速到字符行起始打印位置;

S200根据Buffer2对应点位置的值驱动9针或18针打印头 针或不出针;

S210驱动字车电机至下列位置;

循环执行步骤S200,S210直到所有列数据都打印完毕。

S根据打印请求的行间距,驱动纸电机到指定距离 的步数。

S230打印结束。

按实际驱动接口执行打印机驱动程序, 接收打印机请求和数据,执行相应的打印动作和纸动作,并报告 打印机状态Linux内核UEVENT事件,回送打印机缺纸,打印 纸黑标状态。

虽然本发明的实施例已经展示和描述,但该领域的普通技术 对于手术人员来说,他们可以理解在不脱离本发明原则和精神的情况下 本发明对这些实施例进行了多种变化、修改、替换和变化围由 所附权利要求及其等同物限定。

标签: s110传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台