一种应用于打印机的USB多通道同步下载工具及其工作方法与流程

文档序号:16996455发布日期:2019-03-02 01:24阅读:269来源:国知局
一种应用于打印机的USB多通道同步下载工具及其工作方法与流程

本发明涉及数据管理领域,特别是一种应用于打印机的usb多通道数据同步下载工具及其工作方法。



背景技术:

传统打印机设备在生产过程中,对于引导程序、主控程序和字体数据的下载,均在pc端采用一个下载工具窗口对应一个打印机设备的下载,且下载过程都需要操作人员手动去点击工具窗口的控制按钮来进行操作,程序下载过程人工介入较为频繁,其中包括pc端下载工具操作的介入,如点击启动下载、下载完成后的确认、当usb打印机未准备好时提示信息的处理等。同时进行多台打印机进行程序下载时,下载工具的窗口过多,整个显示器界面过于拥挤,且随着同时下载打印机数量的增加,人工介入操作pc端工具的时间将会线性增加,不利于提高生产效率。



技术实现要素:

有鉴于此,本发明的目的是提出一种应用于打印机的usb多通道数据同步下载工具及其工作方法,能够提高打印机设备在主控程序、引导程序的下载过程中的生产效率,实现降低了人工介入操作的频率,提高了数据下载的工作效率,从而降低生产成本。

本发明采用以下方案实现:一种应用于打印机的usb多通道同步下载工具,包括pc端、usb打印机以及供电模块;所述供电模块与所述usb打印机电性相连,用以提供电能,所述usb打印机与pc端电性相连;所述usb打印机上设置有usb设备,用以将pc端的文件自动下载到所述usb打印机上;

一个pc端能够同时与一个以上的usb打印机电性相连,并自动对接入的一个以上的usb设备进行指定文件数据的自动下载。

进一步地,本发明还提供一种应用于打印机的usb多通道同步下载工具的工作方法,包括以下步骤:

步骤s1:在所述pc端上设置好供应商id、产品识别码及所要下载的文件数据所在的目录;

步骤s2:pc端自动侦测是否有指定供应商id、产品识别码的usb设备的接入,并自动对接入的符合供应商id、产品识别码的多个所述usb设备进行步骤s1中指定文件数据的自动下载;

步骤s3:pc端自动识别所述usb设备是否断开并且在文件数据的下载过程中进行超时处理;

步骤s4:实时统计和反映步骤s2中多个所述usb设备数据下载的状态。

进一步地,所述步骤s2具体包括以下步骤:

步骤s21:启动同步下载工具,pc端创建一个侦测线程,启动侦测线程,并令usb端口号的初始值为0;

步骤s22:从usb端口号值从0开始进行累加,判断usb端口号值是否大于127,如果usb端口号值大于127则usb端口号值为1,并引入openusbport函数判断返回值,如果usb端口号值不大于127则直接引入openusbport函数判断返回值;

步骤s23:如果返回值小于0则表示无设备接入,返回步骤s22,如果返回值不小于0则表示有设备接入,新建一个操作线程,启动新建的操作线程,并返回步骤s22。

进一步地,步骤s23中,启动新建的操作线程具体包括以下步骤:

步骤s231:在操作线程上对刚接入的usb设备进行数据下载,而侦测线程此时会继续循环侦测是否有新的usb设备接入,实现一个线程负责一个usb设备数据的下载,实现了多线程即多通道的同步下载操作;

步骤s232:自动加载设置好的待下载的文件目录列表并统计文件个数,判断文件个数,如果文件个数不大于0则将ui界面上的完成下载数量加1,通过pc操作系统提供的closeusbport函数对已打开的usb端口进行关闭,将已关闭的usb端口号回收到usb端口列表中,结束操作线程;如果文件个数大于0则进行步骤s233;

步骤s233:继续判断文件数据个数是否大于0,如果文件数据个数不大于0则文件个数减1并返回到步骤s232,如果文件数据个数大于0则进行步骤s234;

步骤s234:从文件中读取64字节文件数据,将读到的数据通过writeusbport函数下载到接入的usb设备,并将文件数据个数减去实际读到的数据个数后,返回步骤s233。

进一步地,所述步骤s3的具体内容为:当一个设备的操作线程启动后,自动新建一个定时器,用于判断数据下载过程是否超时,设定时器的定时时间为30秒,每当执行完一次writeusbport函数后,会对定时器进行清0,使定时器再次从0重新开始计时,如果定时器超时,则当前操作线程上的usb设备数据下载异常,操作线程会将这种异常反馈到ui界面上,对异常的数量进行累加,并向操作人员提示当前异常,然后引用pc操作系统提供的closeusbport函数对已打开的usb端口进行关闭,将已关闭的usb端口号回收到usb端口列表中,可以重复使用,并结束当前线程。

进一步地,所述的pc端只要装有微软的netframework3.5框架程序的运行库即能够正常运行usb多通道同步下载工具。

与现有技术相比,本发明有以下有益效果:本发明能够自动把通过usb接入pc的打印机设备识别出来,并自动将指定的文件数据通地usb下载到打印机设备,并能实时反馈和统计各打印机设备的下载状态,有效地减少了人工介入操作的频率,提高生产效率。

附图说明

图1为本发明实施例的结构框图。

图2为本发明实施例的自动侦测方案流程图。

图3为本发明实施例的多通道方案流程图。

图4为本发明实施例的自动下载方案流程图。

图5为本发明实施例的自动反馈和统计数据下载情况方案流程图。

图6为本发明实施例的下载进度对比图。

具体实施方式

下面结合附图及实施例对本发明做进一步说明。

如图1所示,本实施例提供了一种应用于打印机的usb多通道同步下载工具,包括pc端、usb打印机以及供电模块;所述供电模块与所述usb打印机电性相连,用以提供电能,所述usb打印机与pc端电性相连;所述usb打印机上设置有usb设备,用以将pc端的文件自动下载到所述usb打印机上;

一个pc端能够同时与一个以上的usb打印机电性相连,并自动对接入的一个以上的usb设备进行指定文件数据的自动下载。

较佳的,本实施例还提供一种应用于打印机的usb多通道同步下载工具的工作方法,包括以下步骤:

步骤s1:在所述pc端上设置好供应商id、产品识别码及所要下载的文件数据所在的目录;

步骤s2:pc端自动侦测是否有指定供应商id、产品识别码的usb设备的接入,并自动对接入的符合供应商id、产品识别码的多个所述usb设备进行步骤s1中指定文件数据的自动下载;

步骤s3:pc端自动识别所述usb设备是否断开并且在文件数据的下载过程中进行超时处理;

步骤s4:实时统计和反映步骤s2中多个所述usb设备数据下载的状态。

在本实施例中,如图2所示,所述步骤s2具体包括以下步骤:

步骤s21:启动同步下载工具,pc端创建一个侦测线程,启动侦测线程,并令usb端口号的初始值为0;

步骤s22:从usb端口号值从0开始进行累加,判断usb端口号值是否大于127,如果usb端口号值大于127则usb端口号值为1,并引入openusbport函数判断返回值,如果usb端口号值不大于127则直接引入openusbport函数判断返回值;

步骤s23:如果返回值小于0则表示无设备接入,返回步骤s22,如果返回值不小于0则表示有设备接入,新建一个操作线程,启动新建的操作线程,并返回步骤s22。

在本实施例中,如图4所示,步骤s23中,启动新建的操作线程具体包括以下步骤:

步骤s231:如图3所示,在操作线程上对刚接入的usb设备进行数据下载,而侦测线程此时会继续循环侦测是否有新的usb设备接入,实现一个线程负责一个usb设备数据的下载,实现了多线程即多通道的同步下载操作;

步骤s232:自动加载设置好的待下载的文件目录列表并统计文件个数,判断文件个数,如果文件个数不大于0则将ui界面上的完成下载数量加1,通过pc操作系统提供的closeusbport函数对已打开的usb端口进行关闭,将已关闭的usb端口号回收到usb端口列表中,结束操作线程;如果文件个数大于0则进行步骤s233;

步骤s233:继续判断文件数据个数是否大于0,如果文件数据个数不大于0则文件个数减1并返回到步骤s232,如果文件数据个数大于0则进行步骤s234;

步骤s234:从文件中读取64字节文件数据,将读到的数据通过writeusbport函数下载到接入的usb设备,并将文件数据个数减去实际读到的数据个数后,返回步骤s233。

在本实施例中,如图5所示,所述步骤s3的具体内容为:当一个设备的操作线程启动后,自动新建一个定时器,用于判断数据下载过程是否超时,设定时器的定时时间为30秒,每当执行完一次writeusbport函数后,会对定时器进行清0,使定时器再次从0重新开始计时,如果定时器超时,则启动定时器超时线程,当前操作线程上的usb设备数据下载异常,操作线程会将这种异常反馈到ui界面上,对异常的数量进行累加,并向操作人员提示当前异常,然后引用pc操作系统提供的closeusbport函数对已打开的usb端口进行关闭,将已关闭的usb端口号回收到usb端口列表中,可以重复使用,并结束当前线程。

在本实施例中,所述的pc端只要装有微软的netframework3.5框架程序的运行库即能够正常运行usb多通道同步下载工具。

特别的,在本实施例中将基础的usb接口操作功能代码封装成可被其他线程引用的dll库文件,根据所接入的usb设备数量,使用多线程技术原理将每个接入的usb设备自动为其分配一个单独的操作线程并单独引用dll库文件来进行数据的交换。

特别的,在本实施例中,(1)自动侦测的具体技术方案是:工具启动时,会新建一个自动侦测的线程(称为侦测线程),在侦测线程上开始在调用pc操作系统提供的openusbport函数的返回值进行循环扫描usb端口列表,判断usb端口列表上的127个端口是否有符合设置的vid和pid值的usb设备的接入,返回值如果小于0表示无设备接入,如果等于0表示有设备接入。这样即可实现自动侦测符合vid和pid值的设备是否接入的技术方案。流程见图2。

(2)多通道的具体技术方案是:

当侦测线程侦测到有usb设备(如设备1)接入后,侦测线程会新建一个针对新接入的usb设备的操作线程(如操作线程1),在操作线程1上对设备1进行数据下载。而侦测线程此时会继续循环侦测是否有新的usb设备接入。这样子就实现一个线程负责一个usb设备数据的下载,实现了多线程(多通道)的同步下载操作。流程见图3。

(3)自动下载的具体技术方案是:

当一个设备的操作线程启动后,会自动去加载设置好的待下载的文件目录列表,并引用pc操作系统提供的writeusbport函数,依次地将列表中的文件数据每次按64个字节的数量通过该函数下载到usb设备中去;当所有文件都下载完成后,引用pc操作系统提供的closeusbport函数对已打开的usb端口进行关闭;将已关闭的usb端口号回收到usb端口列表中,可以重复使用。最后结束当前线程。这样就通过上面的技术方案可以实现将文件数据自动下载到usb设备中去。流程见图4。

(4)自动反馈和统计数据下载情况的具体技术方案是:

当一个设备的操作线程启动后,会自动新建一个定时器,用于判断数据下载过程是否超时,具体是这样子的:设定时器的定时时间为30秒,每当执行完一次writeusbport函数后,会对定时器进行清0,使定时器再次从0重新开始计时。如果定时器一旦超时,就表示当前操作线程上的usb设备数据下载异常,操作线程会将这种异常反馈到界面上,对异常的数量进行累加,并向操作人员提示当前的异常,接着引用pc操作系统提供的closeusbport函数对已打开的usb端口进行关闭;将已关闭的usb端口号回收到usb端口列表中,可以重复使用,结束当前线程,流程见图5。

特别的,在本实施例中,根据图1-5所示,具体工作步骤如下:

步骤1:新建一个侦测线程,并引用openusbport函数和所要侦测的端口号对usb端口进行侦测,进入步骤2。

步骤2:使用侦测线程循环地对127个端口进行侦测,如果有符合pid及vid的usb设备接入进入步骤3,否则继续步骤2;

步骤3:新建一个操作线程,并启动该操作线程。而侦测线程则继续步骤2。

步骤4:在操作线程中,新建一个定时器(即启动一个定时器超时线程),该定时器用于实时监控数据下载是否超时,获取待下载的文件目录和个数,进入步骤5。

步骤5:判断文件个数是否大于0,如果文件个数不大于0,则转到步骤6;否则转到步骤7。

步骤6:将ui界面上的完成下载数量加1,并引用closeusbport函数来关闭已开启的usb端口,释放usb端口号,关闭实时监控定时器,最后结束该操作线程。完成一个usb设备数据的下载。

步骤7:判断文件数据个数是否大于0,如果文件数据个数不大于0,则将文件个数减1,转到步骤5。否则转到步骤8。

步骤8:从文件中读取64个数据,刷新30秒的定时器,将读到的数据通过writeusbport函数下载到usb设备,并将文件数据个数减去实际读到的数据个数后,转到步骤7。

步骤9:定时器超时线程启动后,在定时器线程上将ui界面上的异常数量加1;并通过引用closeusbport函数来关闭已开启的usb端口,释放usb端口号,关闭实时监控定时器,强制结束操作线程,最后结束定时器线程。

步骤10:在图1中,与供电模块连接的线是为打印机的供电线;与pc端连接的线为usb连接线,可以同时连接多台打印机,对多台打印机进行同时数据下载。如果某一台打电机下载完成后,可以将完成的打印机进行更换,而不影响其他在下载的打印机设备。

较佳的,在本实施例中,能够灵活地根据所设置usb设备的vid和pid的值,来识别不同的usb设备;在本实施例中,只要一有符合vid及pid的usb设备接入后,就会自动地将指定目录下的多个文件数据依次下载到usb设备;在本实施例中能实时统计和反映多个usb设备数据下载的状态。

较佳的,如图6所示,在本实施例中,提供了一种应用于打印机的usb多通道数据同步下载工具及其工作方法,所述工具能够在装有.netframework3.5框架的普通pc端上使用;所述工具能够自动侦测指定pid和vid的usb设备是否接入;所述工具能够自动对接入的多个usb设备进行指定数据的同步下载;所述工具能够自动监控数据下载过程的状态;所述工具能够自动统计各状态所出现的数量。最终实现降低了人工介入操作的频率,提高了数据下载的工作效率,从而降低生产成本。

较佳的,本实施例提供一种基于usb多通道同步下载的辅助生产工具,该工具不仅集多个通道下载操作于一个窗口,避免操作窗口过多而导致屏幕拥挤;同时增加自动侦测usb打印机是否接入;自动对已接入的usb打印机进行引导程序、主控程序和字体数据的下载;并在图形化ui界面上实时自动显示各通道usb打印机的下载进度及状态。

以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1