CN113032313A - 数据接收方法、设备、图像形成装置和可读存储介质 - Google Patents
数据接收方法、设备、图像形成装置和可读存储介质 Download PDFInfo
- Publication number
- CN113032313A CN113032313A CN202110170898.7A CN202110170898A CN113032313A CN 113032313 A CN113032313 A CN 113032313A CN 202110170898 A CN202110170898 A CN 202110170898A CN 113032313 A CN113032313 A CN 113032313A
- Authority
- CN
- China
- Prior art keywords
- controller
- data
- interrupt signal
- application layer
- transmitted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000004044 response Effects 0.000 claims abstract description 91
- 238000004891 communication Methods 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 abstract description 15
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
Abstract
本发明属于数据通信技术领域,为了解决现有技术中通过比较数据包大小的数据接收方法不适用于控制系统的技术问题。本发明实施例提供的一种数据接收方法、设备、图像形成装置和可读存储介质,所述方法包括:第一控制器顺序接收数据包,并将所述数据包顺序传输至缓存单元;每当所述数据包的数据量等于预设阈值时,第一控制器生成中断信号,并将所述中断信号传输至第二控制器;其中,所述预设阈值小于或等于所述第一控制器与主机通信对应的数据包长度;第二控制器基于所述中断信号,按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。本发明实施例能够不依赖于0长度字节数据包的情况下使得接收方准确判断数据传输完成,并且适用范围广。
Description
【技术领域】
本发明涉及数据通信技术领域,具体地涉及一种数据接收方法、设备、图像形成装置和可读存储介质。
【背景技术】
按照标准的通用串行总线(Universal Serial Bus,USB)通讯协议,数据传输完成之后,发送方都会发送0长度字节数据包,接收方基于接收到的0长度字节数据包就可以确定数据传输完成。但是很多时候发送方(例如:计算机)的操作系统或者打印驱动不执行标准的USB通讯协议,在数据完成之后并不发送0长度字节数据包,这样与发送方连接的接收方(例如:图像形成装置)就没有办法确认数据是否传输完成。
相关技术中,例如,中国专利申请号为CN201911255624.7的专利公开了一种解决方案:通过比较数据包大小的数据接收方法虽然能够在不依赖于0长度字节数据包的情况下,使得接收方准确判断数据传输完成。但是并非所有图像形成装置的控制系统都支持数据包大小比较功能,因此上述技术方案的使用场景会受到限制。
【发明内容】
有鉴于此,本发明提供一种数据接收方法、设备、图像形成装置和可读存储介质,能够在不依赖于0长度字节数据包的情况下使得接收方准确判断数据传输完成,并且适用范围广。
为了实现上述目的,本发明实施例提供的技术方案包括:
第一方面,本发明实施例提供了一种数据接收方法,应用于图像形成装置,包括:
第一控制器顺序接收数据包,并将所述数据包顺序传输至缓存单元;
每当所述数据包的数据量等于预设阈值时,第一控制器生成中断信号,并将所述中断信号传输至第二控制器;其中,所述预设阈值小于或等于所述第一控制器与主机通信对应的数据包长度;
第二控制器基于所述中断信号,按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,所述第一控制器为图像形成装置中的USB 控制器,所述第二控制器为图像形成装置中的中央处理单元。
本发明实施例优选的实施方式中,所述预定的响应时间设置为:当所述第二控制器在第一预定时间内,第一次接收到中断信号,关闭中断信号的响应;并且在第一预定时间之后,所述第二控制器控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,还包括:所述第二控制器在第一预定时间之后,开启中断信号的响应;并且接收到所述中断信号之后,继续按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,所述预定的响应时间设置为:当所述第二控制器在小于或等于第二预定时间内连续接收到两个中断信号时,关闭中断信号的响应;并且在第二预定时间之后,所述第二控制器控制所述缓存单元中的数据传输到应用层;当所述第二控制器在第二预定时间内连续仅接收到一个中断信号时,直接控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,还包括:所述第二控制器在第二预定时间之后,开启中断信号的响应;并且接收到所述中断信号之后,继续按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,所述预定的响应时间设置为:每次接收到所述第一控制器传输的中断信号,控制所述缓存单元中累计接收的数据包传输至应用层。
第二方面,本发明实施例提供了一种数据接收设备,包括:
第一控制器、第二控制器、缓存单元和应用层;
所述第一控制器用于顺序接收数据包,并将所述数据包顺序传输至缓存单元;
每当所述数据包的数据量等于预设阈值时,所述第一控制器生成中断信号,并将所述中断信号传输至所述第二控制器;其中,所述预设阈值小于或等于所述第一控制器与主机通信对应的数据包长度;
所述第二控制器基于所述中断信号,按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,所述第一控制器为图像形成装置中的USB 控制器,所述第二控制器为图像形成装置中的中央处理单元。
本发明实施例优选的实施方式中,所述预定的响应时间设置为:当所述第二控制器在第一预定时间内,第一次接收到中断信号,关闭中断信号的响应;并且在第一预定时间之后,所述第二控制器控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,所述第二控制器还用于在第一预定时间之后,开启中断信号的响应;并且接收到所述中断信号之后,继续按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,所述预定的响应时间设置为:当所述第二控制器在小于或等于第二预定时间内连续接收到两个中断信号时,关闭中断信号的响应;并且在第二预定时间之后,所述第二控制器控制所述缓存单元中的数据传输到应用层;当所述第二控制器在第二预定时间内连续仅接收到一个中断信号时,直接控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,所述第二控制器还用于在第二预定时间之后,开启中断信号的响应;并且接收到所述中断信号之后,继续按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
本发明实施例优选的实施方式中,所述预定的响应时间设置为:每次接收到所述第一控制器传输的中断信号,控制所述缓存单元中累计接收的数据包传输至应用层。
第三方面,本发明实施例提供了一种图像形成装置,包括:
如上述第二方面所述数据接收设备,
存储器,所述中央控制器能够记载运行存储器中对应的应用层软件,所述应用层软件接收所述数据接收设备传输的数据包。
第四方面,本发明实施例提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现上述第一方面所述的数据接收方法。
本发明实施例提供的一种数据接收方法、设备、图像形成装置和可读存储介质,所述方法包括:第一控制器顺序接收数据包,并将所述数据包顺序传输至缓存单元;每当所述数据包的数据量等于预设阈值时,第一控制器生成中断信号,并将所述中断信号传输至第二控制器;其中,所述预设阈值为小于或等于所述第一控制器与主机通信对应的数据包长度;第二控制器基于所述中断信号,按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。本发明实施例能够不依赖于0长度字节数据包的情况下使得接收方准确判断数据传输完成,并且适用范围广。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1是本发明一实施例所提供的一种图像形成系统的架构图;
图2是本发明一实施例所提供的一种数据接收方法的流程图;
图3是图2中第二控制器基于中断信号,按照预定的响应时间,控制缓存单元中的数据传输到应用层的一种具体流程图;
图4是本发明又一实施例所提供的一种数据接收方法的流程图;
图5是图2中第二控制器基于中断信号,按照预定的响应时间,控制缓存单元中的数据传输到应用层的又一种具体流程图;
图6是本发明又一实施例所提供的一种数据接收方法的流程图;
图7是本发明一实施例所提供的一种数据接收设备的结构示意图;
图8是本发明一实施例所提供的一种图像形成装置的结构示意图;
图9是本发明实施例提供的一种数据接收设备的示意图。
【具体实施方式】
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,甲和/或乙,可以表示:单独存在甲,同时存在甲和乙,单独存在乙这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
图1为本发明一实施例所提供的一种图像形成系统的架构图,如图1所示,该图像形成系统包括:图像形成装置200,以及向图像形成装置200传输数据的数据发送设备,该发送设备可以是主机100。
图像形成装置200可以是打印机,也可以是用于打印成像、图文复印、激光打码或者医学影像的其他装置。主机100包括计算机。具体地,主机100 可以是台式机、笔记本电脑、平板电脑、手机、个人数字助理(Personal Digital Assistant,PDA)等具有打印功能的终端设备,本发明实施例不对图像形成装置200和主机100的具体形式进行限定。主机100与图像形成装置200的连接方式可以是Wi-Fi、蓝牙等无线连接方式,也可以是通过USB数据线连接。本发明实施例针对USB这种通讯方式进行改进,但是对于其他通讯方式如果同样存在类似USB这种通讯方式的问题,可以同样采用本发明实施例提供的技术方案。
具体地,图像形成装置200包括图像形成控制模块。其中,图像形成控制模块用于执行各种程序以整体控制图像形成装置200。具体地,图像形成控制模块可以为SoC。SoC是一个微型的系统,由多个系统的部件和中央处理单元组成,被配置为控制图像形成装置200的成像处理操作,例如对图像数据进行线性纠正、降噪、坏点去除、细节增强等处理,从而提高图像输出的质量,主控制器还用于执行数据收发、命令收发、打印画像的引擎控制相关的处理操作;例如通过接口单元(包括但不限于USB端口、有线网络端口、无线网络端口或者其他接口等)来收发数据、打印引擎控制命令、状态等。
主机100包括第三控制器。图像形成装置200的图像形成控制模块包括第一控制器、第二控制器、缓存单元和应用层。其中,第一控制器为图像形成装置200中的USB控制器(Universal Serial Bus Controller,USBC),第三控制器为主机100中的USB控制器,第二控制器为图像形成装置200中的中央处理单元(Central Processing Unit,CPU)。
其中,主机100的第三控制器用于向图像形成装置200发送数据包。
其中,图像形成装置200的第一控制器用于顺序接收主机100发送的数据包,并将数据包顺序传输至缓存单元;每当数据包的数据量等于预设阈值时,第一控制器生成中断信号,并将中断信号传输至第二控制器;其中,预设阈值小于或等于第一控制器与主机通信对应的数据包长度;第二控制器基于中断信号,按照预定的响应时间,控制缓存单元中的数据传输到应用层。
本发明实施例中,由于预设阈值小于或等于第一控制器与主机通信对应的数据包长度,所以每次第一控制器接收到数据之后,就会通过中断的方式,通知第二控制器有数据来了。第二控制器可以根据提前设置的预定的响应时间,将缓存单元中的数据传输到应用层,这样不会出现数据如果小于预设阈值整数倍对应的数据包,就无法通知到第二控制器的情况。另外,本发明实施例也不需要第二控制器(例如,SoC中的中央处理单元)具有数据包大小比较的功能,所以适用范围更广。
作为一种可选方案,预定的响应时间设置为:当第二控制器在第一预定时间内,第一次接收到中断信号,关闭中断信号的响应;并且在第一预定时间之后,第二控制器控制缓存单元中的数据传输到应用层。本发明实施例能够避免第二控制器在第一预定时间内频繁响应中断信号,减少了第二控制器的资源消耗。
具体地,第二控制器在第一预定时间之后,开启中断信号的响应;并且接收到中断信号之后,继续按照预定的响应时间,控制缓存单元中的数据传输到应用层。
作为另一种可选方案,预定的响应时间设置为:当第二控制器在小于或等于第二预定时间内连续接收到两个中断信号时,关闭中断信号的响应;并且在第二预定时间之后,第二控制器控制缓存单元中的数据传输到应用层;当第二控制器在第二预定时间内连续仅接收到一个中断信号时,直接控制缓存单元中的数据传输到应用层。本发明实施例能够避免第二控制器在第二预定时间内频繁响应中断信号,减少了第二控制器的资源消耗。
具体地,第二控制器在第二预定时间之后,开启中断信号的响应;并且接收到中断信号之后,继续按照预定的响应时间,控制缓存单元中的数据传输到应用层。
作为又一种可选方案,预定的响应时间设置为:每次接收到第一控制器传输的中断信号,控制缓存单元中累计接收的数据包传输至应用层。本发明实施例能够避免出现数据如果小于预设阈值整数倍对应的数据包,就无法通知到第二控制器的情况。
图2为本发明一实施例提供的一种数据接收方法的流程图,该数据接收方法适用于图像形成装置200接收来自主机100发送的打印作业数据,当然本发明实施例还可以应用到其他类似的技术领域中,本发明实施例不对其进行具体的限制。
如图2所示,本发明实施例提供的数据接收方法,应用于上述图像形成装置200,该图像形成装置200通过USB接收来自主机100的打印驱动下发的打印数据。该方法包括:
步骤101、第一控制器顺序接收数据包,并将数据包顺序传输至缓存单元。
本发明实施例中,第一控制器为图像形成装置中的USB控制器。
步骤102、每当数据包的数据量等于预设阈值时,第一控制器生成中断信号,并将中断信号传输至第二控制器;其中,预设阈值小于或等于第一控制器与主机通信对应的数据包长度。
本发明实施例中,第二控制器为图像形成装置中的中央处理单元。
本发明实施例中,主机与图像形成装置之间传输数据以包为单位,每个数据包有固定的包长度,最大包长度通常为512字节。例如,预设阈值为512 字节。
需要说明的是,图像形成装置接收到主机发送的数据包后,若满足以下任一条件,图像形成装置的第一控制器将产生中断。
条件一:
图像形成装置的第一控制器接收到一个数据量预设阈值的数据包,该预设阈值小于或者等于第一控制器与主机通信对应的数据包长度。
需要补充说明的是,图像形成装置的第一控制器(作为从设备的控制器) 通常与主机(作为主设备的控制器)直接会预先约定数据包的大小,例如,512字节、256字节、128字节、64字节、32字节、16字节等。而0长度字节也可以作为产生中断的条件。另外,需要说明的是,图像形成装置的第一控制器接收到一个数据量预设阈值的数据包,该预设阈值小于或者等于第一控制器与主机通信对应的数据包长;也可以等同于是图像形成装置的第一控制器接收到小于或者等于第一控制器与主机通信对应的数据包长。
条件二:
数据包传输至应用层的内存缓冲区后,发现数据包的数据量已达到请求长度(Request Len)字段要求的值。
需要补充说明的是,发现数据包的数据量已达到请求长度(Request Len) 字段要求的值可以是上述提到的预设阈值,也可以是大于上述预设阈值的参数,例如,上述预设阈值的2倍、3倍、4倍、5倍、6倍、7倍、8倍等。
由上述条件一和条件二可知,本发明实施例将预设阈值设置为Request Len字段的大小,则无论主机与图像形成装置之间传输数据的数据量有多少,只要第一控制器接收到有数据,都能达到中断产生条件,从而解决现有技术中小于或者等于上述第一控制器与主机通信对应的数据包长度时,中断无法产生的问题。
由于预设阈值小于或等于第一控制器与主机通信对应的数据包长度,所以每次第一控制器接收到数据之后,就会通过中断的方式,通知第二控制器有数据来了。例如,预设阈值为512字节,将Request Len字段的值设置为 512字节后,图像形成装置的第一控制器每接收到数据量小于或者等于512 字节的数据包,第一控制器都会产生一次中断,相比于将Request Len字段的值设置为其他值,例如将Request Len字段的值设置为64K,中断数量增加了128倍。但是,频繁的中断会影响其他中断的响应,导致系统性能下降。
本发明实施例为避免系统性能下降,必须降低中断的数量。
步骤103、第二控制器基于中断信号,按照预定的响应时间,控制缓存单元中的数据传输到应用层。
该步骤中,第二控制器可以根据提前设置的预定的响应时间,将缓存单元中的数据传输到应用层,这样不会出现数据如果小于预设阈值整数倍对应的数据包,就无法通知到第二控制器的情况。另外,本发明实施例也不需要 USB控制器具有数据包大小比较的功能,所以适用范围更广。
作为一种可选方案,预定的响应时间设置为:每次接收到第一控制器传输的中断信号,控制缓存单元中累计接收的数据包传输至应用层。
具体地,步骤103具体包括:第二控制器每次接收到第一控制器传输的中断信号,控制缓存单元中累计接收的数据包传输至应用层。
本发明实施例虽然能够避免出现数据如果小于预设阈值整数倍对应的数据包,就无法通知到第二控制器的情况;但是该方案中断的数量较多,会增加第二控制器的资源消耗,仍不能避免系统性能下降的问题。作为另一种可选方案,预定的响应时间设置为:当第二控制器在第一预定时间内,第一次接收到中断信号,关闭中断信号的响应;并且在第一预定时间之后,第二控制器控制缓存单元中的数据传输到应用层。
本发明实施例中,如图3所示,步骤103具体包括:
步骤1031、第二控制器在第一预定时间内,第一次接收到中断信号,关闭中断信号的响应。
步骤1032、在第一预定时间之后,第二控制器控制缓存单元中的数据传输到应用层。
例如,第一预定时间包括图像形成装置接收64K数据所需的时间,当计时时间达到图像形成装置接收64K数据包所需的时间后,第二控制器一次性处理接收到的所有数据,从而相比于没有关闭中断响应的技术方案,本发明实施例可将中断的数量降低128倍。
本发明实施例中,如图4所示,步骤103之后,还包括:
步骤104、第二控制器在第一预定时间之后,开启中断信号的响应,接收到中断信号;并继续执行步骤103。
该步骤中,第二控制器在第一预定时间之后,控制缓存单元中的数据传输到应用层,同时,开启中断信号的响应;并且接收到中断信号之后,继续按照预定的响应时间,控制缓存单元中的数据传输到应用层。
本发明实施例能够避免第二控制器在第一预定时间内频繁响应中断信号,减少了中断数量和第二控制器的资源消耗。
作为又一种可选方案,预定的响应时间设置为:当第二控制器在小于或等于第二预定时间内连续接收到两个中断信号时,关闭中断信号的响应;并且在第二预定时间之后,第二控制器控制缓存单元中的数据传输到应用层;当第二控制器在第二预定时间内连续仅接收到一个中断信号时,直接控制缓存单元中的数据传输到应用层。
具体来说,当控制器在小于或等于第二预定时间内连续接收到两个中断信号时,表明第一控制器连续接收多个数据包,为了避免每次接收到数据包第一控制器产生一次中断,第二控制器关闭中断信号的响应;在第二预定时间之后,第二控制器控制缓存单元中的数据传输到应用层。
具体来说,当第二控制器在第二预定时间内连续仅接收到一个中断信号时,表明第一控制器仅接收一个数据包,第一控制器仅产生一次中断,不存在中断次数过多的问题,因此第二控制器没有必要关闭中断信号的响应,直接控制缓存单元中的数据传输到应用层。
本发明实施例中,如图5所示,步骤103具体包括:
步骤1031、第二控制器在小于或等于第二预定时间内连续接收到两个中断信号时,关闭中断信号的响应;
步骤1032、在第二预定时间之后,第二控制器控制缓存单元中的数据传输到应用层。
本发明实施例中,如图6所示,步骤103之后,还包括:
步骤104、第二控制器在第二预定时间之后,开启中断信号的响应,接收到中断信号;并继续执行步骤103。
该步骤中,第二控制器在第二预定时间之后,控制缓存单元中的数据传输到应用层,同时,开启中断信号的响应;并且接收到中断信号之后,继续按照预定的响应时间,控制缓存单元中的数据传输到应用层。
本发明实施例能够避免第二控制器在第二预定时间内频繁响应中断信号,减少了中断数量和第二控制器的资源消耗。
本发明实施例中,第二控制器控制缓存单元中的数据传输到应用层的内存缓冲区。应用层的内存缓冲区由多个内存块连接而成,每个内存块按预定的数据格式TransferDescriptors进行组织。其中,Request Len字段为预期接收的数据长度,Buffer Address字段为存储接收数据的内存地址。在初始化图像形成装置的时候,驱动程序会依次提交多个内存块到第一控制器,第二控制器在控制缓存单元中的数据传输时,会依次将数据传输内存缓冲区的各个内存块中。
本发明实施例在图像形成装置的第一控制器产生中断后,通过第二控制器将中断响应关闭,在预定的响应时间之后,再将中断响应打开,使得中断的数量降低。
另外,根据上述条件二可知,本发明实施例还可以通过提供尽可能多的内存块到应用层的内存缓冲区中来降低中断的数量。
例如,现有技术中,基于微软(Windows)操作系统的USB数据传输协议,计算机发送完打印数据后,打印机接收不到0长度包,造成打印机无法知道数据是否传输完成的问题。
本发明实施例提供的数据接收方法,一方面,将Request Len字段的值设置为预设阈值。例如,预设阈值为512字节,打印机每接收512字节数据都产生一个中断。因此,图像形成装置只要接收一个数据包,第一控制器就产生一个中断,使得图像形成装置自身具备数据传输完成的判断机制,不依赖于0长度字节数据包的情况下使得图像形成装置准确判断数据传输完成,并且适用范围广。另一方面,图像形成装置的第二控制器在接收到第一控制器发送的中断信号后,第二控制器关闭中断响应,并在预定的响应时间后将中断响应打开,控制缓存单元中接收到的多个数据包一起传输到应用层。因此,本发明实施例能够减少CPU处理中断的次数,减少对其他中断响应的影响,提高系统性能。
图7是本发明一实施例所提供的一种数据接收设备的结构示意图,如图7 所示,该设备包括:第一控制器11、第二控制器12、缓存单元13和应用层 14。
第一控制器11,用于顺序接收数据包,并将数据包顺序传输至缓存单元 13;每当数据包的数据量等于预设阈值时,生成中断信号,并将中断信号传输至第二控制器12。
其中,预设阈值小于或者等于上述第一控制器与主机通信对应的数据包长度。
本发明实施例中,第一控制器11为图像形成装置中的USB控制器,第二控制器12为图像形成装置中的中央处理单元。
本发明实施例中,主机与图像形成装置之间传输数据以包为单位,每个数据包有固定的包长度,最大包长度通常为512字节。例如,预设阈值为512 字节。
第二控制器12,用于基于中断信号,按照预定的响应时间,控制缓存单元13中的数据传输到应用层14。
作为一种可选方案,预定的响应时间设置为:每次接收到第一控制器11 传输的中断信号,控制缓存单元13中累计接收的数据包传输至应用层14。
本发明实施例虽然能够避免出现数据如果小于预设阈值整数倍对应的数据包,就无法通知到第二控制器12的情况。
作为另一种可选方案,预定的响应时间设置为:当第二控制器12在第一预定时间内,第一次接收到中断信号,关闭中断信号的响应;并且在第一预定时间之后,第二控制器12控制缓存单元13中的数据传输到应用层14。
本发明实施例中,第二控制器12还用于在第一预定时间之后,开启中断信号的响应;并且接收到中断信号之后,继续按照预定的响应时间,控制缓存单元中的数据传输到应用层。
本发明实施例能够避免第二控制器在第一预定时间内频繁响应中断信号,减少了中断数量和第二控制器的资源消耗。
作为又一种可选方案,预定的响应时间设置为:当第二控制器12在小于或等于第二预定时间内连续接收到两个中断信号时,关闭中断信号的响应;并且在第二预定时间之后,第二控制器12控制缓存单元13中的数据传输到应用层14;当第二控制器12在第二预定时间内连续仅接收到一个中断信号时,直接控制缓存单元13中的数据传输到应用层14。
本发明实施例中,第二控制器12还用于在第二预定时间之后,开启中断信号的响应;并且接收到中断信号之后,继续按照预定的响应时间,控制缓存单元13中的数据传输到应用层14。
本发明实施例提供的数据接收设备可以执行如上述数据接收方法的实施例,具体的执行过程可以参照上述实施例的解释,并且采用本实施例提供的数据接收设备可以同样取得相应的技术效果,在此不再赘述。
本发明实施例提供了一种可读存储介质,可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现上述数据接收方法的实施例的各步骤,具体描述可参见上述数据接收方法的实施例。
图8为本发明实施例提供的一种图像形成装置的示意图。如图8所示,该图像形成装置200包括:
如上述数据接收设备的实施例提及的数据接收设备,
存储器,所述中央控制器能够记载运行存储器中对应的应用层软件,所述应用层软件接收所述数据接收设备传输的数据包。
图9为本发明实施例提供的一种数据接收设备的示意图。如图9所示,该实施例的计算机设备20包括:处理器21、存储器22以及存储在存储22中并可在处理器21上运行的计算机程序23,该计算机程序23被处理器21执行时实现实施例中的应用于数据接收方法,为避免重复,此处不一一赘述。或者,该计算机程序被处理器21执行时实现实施例中应用于数据接收设备中各模型/单元的功能,为避免重复,此处不一一赘述。
计算机设备20包括,但不仅限于,处理器21、存储器22。本领域技术人员可以理解,图9仅仅是计算机设备20的示例,并不构成对计算机设备20的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器21可以是中央处理单元(Central Processing Unit,简称CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器22可以是计算机设备20的内部存储单元,例如计算机设备20的硬盘或内存。存储器22也可以是计算机设备20的外部存储设备,例如计算机设备 20上配备的插接式硬盘,智能存储卡(Smart Media Card,简称SMC),安全数字(Secure Digital,简称SD)卡,闪存卡(Flash Card)等。进一步地,存储器 22还可以既包括计算机设备20的内部存储单元也包括外部存储设备。存储器22 用于存储计算机程序以及计算机设备所需的其他程序和数据。存储器22还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器 (Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (16)
1.一种数据接收方法,应用于图像形成装置,其特征在于,包括:
第一控制器顺序接收数据包,并将所述数据包顺序传输至缓存单元;
每当所述数据包的数据量等于预设阈值时,第一控制器生成中断信号,并将所述中断信号传输至第二控制器;其中,所述预设阈值小于或等于所述第一控制器与主机通信对应的数据包长度;
第二控制器基于所述中断信号,按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
2.根据权利要求1所述的方法,其特征在于,所述第一控制器为图像形成装置中的USB控制器,所述第二控制器为图像形成装置中的中央处理单元。
3.根据权利要求1所述的方法,其特征在于,所述预定的响应时间设置为:当所述第二控制器在第一预定时间内,第一次接收到中断信号,关闭中断信号的响应;并且在第一预定时间之后,所述第二控制器控制所述缓存单元中的数据传输到应用层。
4.根据权利要求3所述的方法,其特征在于,还包括:所述第二控制器在第一预定时间之后,开启中断信号的响应;并且接收到所述中断信号之后,继续按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
5.根据权利要求1所述的方法,其特征在于,所述预定的响应时间设置为:当所述第二控制器在小于或等于第二预定时间内连续接收到两个中断信号时,关闭中断信号的响应;并且在第二预定时间之后,所述第二控制器控制所述缓存单元中的数据传输到应用层;当所述第二控制器在第二预定时间内连续仅接收到一个中断信号时,直接控制所述缓存单元中的数据传输到应用层。
6.根据权利要求5所述的方法,其特征在于,还包括:所述第二控制器在第二预定时间之后,开启中断信号的响应;并且接收到所述中断信号之后,继续按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
7.根据权利要求1所述的方法,其特征在于,所述预定的响应时间设置为:每次接收到所述第一控制器传输的中断信号,控制所述缓存单元中累计接收的数据包传输至应用层。
8.一种数据接收设备,其特征在于,包括:
第一控制器、第二控制器、缓存单元和应用层;
所述第一控制器用于顺序接收数据包,并将所述数据包顺序传输至缓存单元;
每当所述数据包的数据量等于预设阈值时,所述第一控制器生成中断信号,并将所述中断信号传输至所述第二控制器;其中,所述预设阈值为小于或等于所述第一控制器与主机通信对应的数据包长度;
所述第二控制器基于所述中断信号,按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
9.根据权利要求8所述的设备,其特征在于,所述第一控制器为图像形成装置中的USB控制器,所述第二控制器为图像形成装置中的中央处理单元。
10.根据权利要求8所述的设备,其特征在于,所述预定的响应时间设置为:当所述第二控制器在第一预定时间内,第一次接收到中断信号,关闭中断信号的响应;并且在第一预定时间之后,所述第二控制器控制所述缓存单元中的数据传输到应用层。
11.根据权利要求10所述的设备,其特征在于,所述第二控制器还用于在第一预定时间之后,开启中断信号的响应;并且接收到所述中断信号之后,继续按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
12.根据权利要求8所述的设备,其特征在于,所述预定的响应时间设置为:当所述第二控制器在小于或等于第二预定时间内连续接收到两个中断信号时,关闭中断信号的响应;并且在第二预定时间之后,所述第二控制器控制所述缓存单元中的数据传输到应用层;当所述第二控制器在第二预定时间内连续仅接收到一个中断信号时,直接控制所述缓存单元中的数据传输到应用层。
13.根据权利要求12所述的设备,其特征在于,所述第二控制器还用于在第二预定时间之后,开启中断信号的响应;并且接收到所述中断信号之后,继续按照预定的响应时间,控制所述缓存单元中的数据传输到应用层。
14.根据权利要求8所述的设备,其特征在于,所述预定的响应时间设置为:每次接收到所述第一控制器传输的中断信号,控制所述缓存单元中累计接收的数据包传输至应用层。
15.一种图像形成装置,其特征在于,包括:
如权利要求8-14中任意一种所述数据接收设备,
存储器,所述中央控制器能够记载运行存储器中对应的应用层软件,所述应用层软件接收所述数据接收设备传输的数据包。
16.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现权利要求1-7中任意一项所述的数据接收方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110170898.7A CN113032313B (zh) | 2021-02-08 | 2021-02-08 | 数据接收方法、设备、图像形成装置和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110170898.7A CN113032313B (zh) | 2021-02-08 | 2021-02-08 | 数据接收方法、设备、图像形成装置和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113032313A true CN113032313A (zh) | 2021-06-25 |
CN113032313B CN113032313B (zh) | 2024-04-26 |
Family
ID=76460587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110170898.7A Active CN113032313B (zh) | 2021-02-08 | 2021-02-08 | 数据接收方法、设备、图像形成装置和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113032313B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100578655B1 (ko) * | 2005-03-09 | 2006-05-11 | 주식회사 팬택앤큐리텔 | 패킷 전송 시점을 인터럽트로 알리는 무선통신 단말기 및그 방법 |
CN104301066A (zh) * | 2013-07-19 | 2015-01-21 | 华为技术有限公司 | 数据包传输方法及装置 |
CN110505127A (zh) * | 2019-07-09 | 2019-11-26 | 青岛海信日立空调系统有限公司 | 一种指令处理方法及装置 |
CN111026694A (zh) * | 2019-11-01 | 2020-04-17 | 珠海奔图电子有限公司 | 数据接收方法、设备,图像形成装置、系统和电子设备 |
-
2021
- 2021-02-08 CN CN202110170898.7A patent/CN113032313B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100578655B1 (ko) * | 2005-03-09 | 2006-05-11 | 주식회사 팬택앤큐리텔 | 패킷 전송 시점을 인터럽트로 알리는 무선통신 단말기 및그 방법 |
CN104301066A (zh) * | 2013-07-19 | 2015-01-21 | 华为技术有限公司 | 数据包传输方法及装置 |
CN110505127A (zh) * | 2019-07-09 | 2019-11-26 | 青岛海信日立空调系统有限公司 | 一种指令处理方法及装置 |
CN111026694A (zh) * | 2019-11-01 | 2020-04-17 | 珠海奔图电子有限公司 | 数据接收方法、设备,图像形成装置、系统和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113032313B (zh) | 2024-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106951388B (zh) | 一种基于PCIe的DMA数据传输方法及系统 | |
US7461164B2 (en) | Medium access control with software -and hardware- based components in a wireless network | |
CN102138297B (zh) | 图形多媒体集成电路及其运作方法 | |
KR101092112B1 (ko) | 향상된 무선 usb 프로토콜 및 허브 | |
US8964631B2 (en) | Communication apparatus, control method for communication apparatus, and storage medium | |
EP2530599A1 (en) | Method and mobile terminal for realizing audio transmission | |
US8041842B2 (en) | Printing device and logic packet processing method | |
CN108255776B (zh) | 一种兼容apb总线的i3c主设备、主从系统及通信方法 | |
US20130227184A1 (en) | Low latency interconnect bus protocol | |
CN111277988B (zh) | 一种提高微信小程序蓝牙传输速度的方法 | |
US20230152978A1 (en) | Data Access Method and Related Device | |
CN110955625A (zh) | 一种基于spi的全双工实时通信的方法及装置 | |
US20160077986A1 (en) | Electronic apparatus providing real-time switching and sharing of usb electronic devices among hosts | |
CN103019975B (zh) | 通用串行总线传输控制方法及主机设备 | |
CN114510446A (zh) | 串口波特率自适应方法、装置、设备及介质 | |
KR20040041623A (ko) | 버스 시스템 및 버스 인터페이스 | |
EP4124124A1 (en) | Sleep and wakeup method for data interface, and related apparatus and system | |
CN116150054B (zh) | 一种基于pcie的中断信息处理方法 | |
CN113032313B (zh) | 数据接收方法、设备、图像形成装置和可读存储介质 | |
CN116627886A (zh) | 核间通信方法及其设备 | |
KR20040043198A (ko) | 버스 시스템 및 버스 인터페이스 | |
CN111026694B (zh) | 数据接收方法、设备,图像形成装置、系统和电子设备 | |
CN116204487A (zh) | 远程数据访问方法及装置 | |
EP2141606A1 (en) | Apparatus and method for processing high speed data using hybrid DMA | |
JP3846089B2 (ja) | インターフェース装置、その制御方法および情報記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |