一种打印机制造技术

技术编号:2874674 阅读:148 留言:0更新日期:2012-04-11 18:40
一种打印机,包括采用可编程器件FPGA或CPLD进行硬件逻辑配置的打印机控制器,所述可编程器件FPGA或CPLD与打印机端口协议通信,配置文件通过打印机端口写入,其特征在于: 所述打印机控制器内置一个编程硬件电路或者能实现编程的模块,该模块通过总线缓冲和总线接口与打印机端口进行通讯,并用于将打印机端口写入的配置文件数据按所述可编程器件FPGA或CPLD的编程接口时序写入可编程器件FPGA或CPLD。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术属于打印设备
,尤其涉及包括采用可编程器件FPGA(可编程门阵列,Field Programable Gate Array)或CPLD(以并行走线的可编程逻辑器件,Complex Programmable Logic Device)设计的打印机控制器的打印机。如附图说明图1所示,对于FPGA的编程,在生产的调试阶段,可以通过JTAG编程端口进行编程,JTAG编程方式是对FPGA直接编程。在产品上,是用配置芯片的方式进行编程,在打印机每次上电时,FPGA通过自带的编程接口自行读取存放在配置芯片的文件,从而对FPGA进行编程;打印机每次掉电时,FPGA的编程即删除。总之,对于FPGA,无论是JTAG编程方式还是配置芯片编程方式,都需要专用编程器和专用软件工具。对于CPLD的编程,生产时通过专用编程器和专用软件工具由人工通过JTAG编程端口进行。具体到采用FPGA或CPLD设计的打印机控制器的打印机,尽管在修正或升级打印机控制器的硬件设计时无须更换打印机控制器,但是,需要对FPGA或CPLD重新编程。当对FPGA重新编程时,必须打开打印机机壳替换相应的配置芯片;当对CPLD重新编程时,必须打开打印机机壳,用专用软件工具和硬件编程工具进行重编程。因此,这种打印机在对控制器硬件逻辑进行修正或升级的时候,不仅成本高,而且用户无法自己对打印机控制器进行修正和升级,需要专业维护人员才能完成重新编程工作。
技术实现思路
本专利技术的目的是提供一种打印机,该打印机的控制器不需要配置芯片,并且用户可以方便地对打印机控制器地硬件逻辑配置进行修正或升级。本专利技术的技术方案如下一种打印机,包括采用可编程器件FPGA或CPLD进行硬件逻辑配置的打印机控制器,所述可编程器件FPGA或CPLD与打印机端口协议通信,配置文件通过打印机端口写入。所述打印机控制器内置一个编程硬件电路或者能实现编程的模块,该模块通过总线缓冲和总线接口与打印机端口进行通讯,并将打印机端口写入的配置文件数据按所述可编程器件FPGA或CPLD的编程接口时序写入可编程器件FPGA或CPLD。所述打印机端口可以是IEEE1284端口、USB端口、Standard TCP/IP端口或其它打印机协议端口。本专利技术的打印机,其打印机控制器采用可编程器件FPGA或CPLD进行硬件逻辑配置。对于可编程器件FPGA,其编程的实现过程是1.在指定目录下存储配置文件。2.打印机驱动程序(如打印监控器程序)或者设备驱动在每个开始打印作业时通过读取打印机状态(如用GetDeviceID)来确定FPGA是否需要编程,打印机控制器每次上电后需要编程,因此在开始打印作业时(如在StartDocPort()函数中)判断是否要编程,若控制器上电后第一次打印作业则进行编程。3.当确认FPGA需要进行编程时,打印机驱动程序或者设备驱动负责打开指定目录下的配置文件、读该文件、写到相应的打印机端口,由打印机控制器内置的编程硬件电路或能实现编程的模块负责打印机端口的数据通讯,并将打印机端口写入的配置文件数据按FPGA的编程接口时序写入FPGA(编程接口时序由FPGA供应商提供)。写配置文件过程中可能需要插入一些配置相关的命令(如加入‘FPGA配置开始命令’,‘FPGA配置结束命令’)。当打印机驱动程序或设备驱动完成写配置文件后,检测编程是否成功(如用GetDeviceID函数)。如果编程不成功,可以进行第二次编程,再次检测编程是否成功;若还是失败,打印监控程序提示错误信息。4.在FPGA编程成功完成后,FPGA将获得打印机端口的控制权,此时编程硬件电路或能实现编程的模块将打印机端口的通讯工作交付FPGA(例如,打印机端口采用IEEEE1284端口时,具体可用FPGA的CfigDone信号控制,如图3所示)。对于可编程器件CPLD,其编程的实现过程是1.在指定目录下存储配置文件,并在打印机相关目录的注册库中设置标志位;2.打印机驱动程序(如打印监控器程序)或者设备驱动在每个开始打印作业时通过读取注册库中的标志位确定CPLD是否需要重新编程,若注册库中设置标志位被设置则进行编程(编程可以在StartDocPort()函数进行)。3.当确认CPLD需要重新编程时,打印机驱动程序(如打印监控器程序)或者设备驱动负责打开指定目录下的配置文件、读该文件、写到相应的打印机端口,由打印机控制器内置的编程硬件电路或能实现编程的模块负责打印机端口的数据通讯,并将打印机端口写入的配置文件数据按CPLD的编程接口时序写入CPLD(编程接口时序由CPLD供应商提供)。过程中可能需要插入一些配置相关的命令(如加入“CPLD配置开始命令”,“CPLD配置结束命令”)。当打印机驱动程序或设备驱动完成写配置文件后,检测编程是否成功(如用GetDeviceID函数)。如果编程不成功,可以进行第二次编程,再次检测编程是否成功;若还是失败,打印监控程序提示错误信息。4.在CPLD编程成功完成后,清相应注册库中的标志位。CPLD将获得打印机端口的控制权,此时编程硬件电路或能实现编程的模块将打印机端口的通讯工作交付CPLD。(例如,打印机端口采用IEEEE1284端口时,具体可用CPLD的CfigDone信号控制,如图3所示。)一般情况下,都是打印机驱动程序或者设备驱动负责判断可编程芯片FPGA或者CPLD是否需要编程并进行写配置文件。当打印机被作为一PnP(即插即用)设备时(如USB打印机),也可以将编程操作设计在设备驱动的StartDevice例程中。本专利技术的打印机,实质是将对可编程器件进行编程的专用编程软件设计在打印机驱动程序(如打印监控器程序)或打印设备驱动中,并加入一些和打印机驱动程序相关的控制,使编程过程能随打印过程一起按要求自行完成(如通过读取打印机状态或者注册库中的设置标志位来分别确定FPGA和CPLD是否需要编程、加入PJL命令‘配置开始命令’和‘配置结束命令’等);将硬件编程工具的硬件电路或实现该电路功能的模块设计在打印机控制器上(如图2所示)。本专利技术的打印机,如果需要修正或升级当前打印机控制器,打印机用户只需运行打印机控制器生产商提供的修正程序或升级程序,修正程序或升级程序将更新当前存放在指定目录下的配置文件(编程文件),重新启动打印机即可完成对打印机控制器硬件逻辑的修正或升级,有时需要在打印机相关目录的注册库中设置标志位(针对CPLD)。打印机控制器无须配置芯片(针对FPGA)或在生产时无须预编程(针对CPLD),因此生产时无须用专用编程器和专用软件工具进行编程(写配置芯片或对CPLD编程)。本专利技术的优点和积极效果打印机用户可以象软件升级一样方便地修正或升级打印机控制器;打印机控制器开发商可以方便地升级打印机控制器,无需专业人员现场升级;打印机控制器的生产流程中可以省去编程这一环节;对于FPGA更可以省配置用芯片、节省控制器成本。打印机,包括采用可编程器件FPGA或CPLD进行硬件逻辑配置的打印机控制器,如图2所示,可编程器件FPGA或CPLD与打印机端口协议通信,配置文件通过打印机端口写入。打印机控制器内置一个编程硬件电路或者能实现编程的模块,该模块通过总线缓冲和总线接口与打印机端口进行通讯,并用于将打印本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:徐忠良陈文先
申请(专利权)人:上海北大方正科技电脑系统有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1