存储芯片复位方法及成像设备
技术领域
本发明涉及芯片技术领域,尤其是涉及一种存储芯片复位方法以及成像设备。
背景技术
成像设备,例如打印机、复印件、传真机、文字处理机或多功能一体机等,都设置有方便用户更换的可拆卸的安装有耗材盒,耗材盒上通常需要安装耗材芯片,通过耗材芯片与成像设备的成像设备通信,实现成像设备理想地使用耗材盒及其内耗材例如碳粉、墨水等。耗材芯片中存储有程序及耗材盒数据,耗材盒数据可以版本号、型号、耗材余量等。
随着成像设备的普及,对于成像设备耗材消耗量也在不断提高,但在碳粉盒或者墨盒中的碳粉消耗完后耗材芯片中记录的耗材余量就会变为零,从而导致安装在碳粉盒或者墨盒上的芯片连同废粉盒一起丢弃,不能被重复利用,造成浪费。
虽然,芯片回收者会对废弃后的旧芯片进行复位,实现对废弃旧芯片的重复利用,但是,现有复位方法,对于加密程度高的旧芯片,复位成功率较低,仍旧会造成芯片的浪费。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明的一个目的在于提出一种存储芯片复位方法,该方法可以提高存储芯片复位的成功率,实现对废弃旧芯片的重复利用。
本发明的第二个目的在于提出一种成像设备。
为了达到上述目的,本发明的第一方面实施例提出了一种存储芯片复位方法,该方法包括:获取耗材芯片的数据变化方式;获取所述耗材芯片的耗材信息存储区域及非访问区域;根据所述数据变化方式改写所述耗材信息存储区域及非访问区域存储的数据值,其中,改写耗材信息存储区域的存储数据值为初始数据值,并将非访问区域存储的数据值按照所述数据变化方式变化;其中,所述非访问区域的地址与所述耗材信息存储区域地址相邻。
根据本发明实施例的存储芯片复位方法,通过获取耗材芯片的数据变化方式,以及获取耗材信息存储区域及非访问区域,对耗材信息存储区域与非访问区域的数据值按照数据的变化方式进行改写,实现存储芯片的复位,该复位方法既不影响耗材芯片的数据存储,又可以按照改写规则对加密程度高的废旧芯片进行复位,且复位成功率较高,可以减少废旧芯片的浪费,缓解消费者经济压力。
在一些实施例中,所述数据变化方式包括数据值增大的变化方式和数据值减小的变化方式。
在一些实施例中,所述改写所述耗材信息存储区域及非访问区域存储的数据值包括:将所述耗材信息存储区域及非访问区域存储的数据值作为一个整体,并对该整体的数据值增大或者减小预设值,直至将所述耗材信息存储区域存储的数据值改写为初始数据值;其中,所述非访问区域存储的数据值也随之增大或减小。
在一些实施例中,所述将所述耗材信息存储区域及非访问区域存储的数据值作为一个整体,并对该整体的数据值增大或者减小预设值,直至将耗材信息存储区域存储的数据值改写为初始数据值包括:改写所述耗材信息存储区域中的第N地址存储的数据值为初始数据值,并将第N+1地址位存储的数据值增大或者减小预设值;依次改写所述耗材信息存储区域中的数据值,直至所述耗材信息存储区域存储的所有数据值改写为对应的初始数据值之后,将与所述耗材信息存储区域中最高位地址相邻的非访问区域的地址中存储的数据值随之增大或减小。
在一些实施例中,所述预设值为1。
在一些实施例中,所述将耗材信息存储区域及非访问区域存储的数据值作为一个整体数据还包括:所述预设值等于改写后的整体数据减去改写前的整体数据的绝对值;其中,改写后的整体数据中所述耗材信息存储区存储的数据值为初始值;非访问区域存储的数据值在改写前与改写后不相同。在一些实施例中,所述方法还包括:判断所述耗材信息存储区域是否与所述非访问区域相邻;如果是,根据所述数据变化方式改写所述非访问区域的数据值;如果否,不对所述非访问区域的数据值进行改写,改与写耗材信息存储区域中与最高地址相邻的其他地址位的数据值,对存储区域与非访问区域的位置进行确定,保证顺利改写。
在一些实施例中,判断所述耗材信息存储区域存储的数据值是否为原始数据;如果是,根据所述数据变化方式改写所述耗材信息存储区域及非访问区域的数据值;如果否,则不对所述数据值进行改写,避免无效改写,提高改写效率。
在一些实施例中,所述方法还包括:根据所述耗材信息存储区域的存储数据判断所述耗材芯片的容量是否为满;如果否,执行所述数据变化方式按照从低位地址向高位地址依次改写所述存储数据值。
为了达到上述目的,本发明的第二方面实施例提出的一种成像设备,包括:存储器,所述存储器上存储有计算机程序;与所述存储器连接的处理器,所述计算机程序被所述处理器执行时可实现上面实施例提到的存储芯片复位方法。
根据本发明实施例的成像设备,通过存储器与处理器,执行上面实施例的存储芯片复位方法,为实现芯片复位提供支持。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明的一个实施例的存储芯片复位方法的流程图;
图2是根据本发明的一个实施例的成像设备的框图。
具体实施方式
下面详细描述本发明的实施例,参考附图描述的实施例是示例性的,下面详细描述本发明的实施例。
成像设备例如打印机与耗材芯片的通信规律为:当打印机开机启动时,打印机和耗材芯片通过某种通信协议,比如IIC(Inter-Integrated Circuit,集成电路总线)、UART(Universal Asynchronous Receiver/Transmitter,通用异步收发传输器)和耗材芯片进行通信,进而验证耗材盒的合法性与耗材芯片内存储的有关耗材盒信息。而耗材盒的合法性主要是通过一些加密算法来体现的。也就是说打印机和耗材芯片的数据值都是经过加密的,知道加密算法和密钥才能对数据值进行解密,进而证明耗材芯片的合法性。
其中,耗材芯片的存储信息包括耗材盒型号、区域版本、墨粉消耗量、墨粉容量以及序列号等信息,打印机在验证耗材芯片的合法性后,通过特定的指令读取耗材芯片内存储的信息,例如打印机在上电之后,通过使用算法对打印机和耗材芯片进行解密,进而打印机会通过特定指令访问耗材芯片内存储的有关耗材盒信息,进而读取耗材芯片内存储的区域版本,再读取芯片内存储的序列号和墨粉消耗量并记录。
打印机在工作过程中,会根据打印的任务消耗的墨粉量,按照特定的算法,往耗材芯片中关于墨粉消耗量的区域重新写上剩余的墨粉量的值。例如全新的耗材芯片记录墨粉量的区域为00 00 00 00,当墨粉耗尽时,该区域会被改写成FF FF FF FF。而目的是实现对废弃旧芯片的重复利用。即需要将此区域FF FF FF FF复位成00 00 00 00才能达到的目的。
为了解决上述问题,下面参考图1描述根据本发明实施例的第一方面实施的存储芯片复位方法,如图1所示,本申请实施例的存储芯片复位方法至少包括步骤S1、步骤S2和步骤S3。
步骤S1,获取耗材芯片的数据变化方式。
具体地,根据耗材芯片的说明书或者读取耗材芯片的波形分析,能够得知耗材芯片待复位数据的初始数据值,若初始数据值为最大值,则耗材芯片在使用过程中,待复位的数据变化方式呈减小的变化方式,若初始数据值为最小值,则耗材芯片的数据存储方式呈增大的变化方式。
还可以为耗材芯片随意输入一个数据值,以此来看数据值的变化是增大还是减小,进而确定耗材芯片的数据变化方式。
步骤S2,获取耗材芯片的耗材信息存储区域及非访问区域。
具体地,通过使用加密算法打开耗材芯片的读写权限,进而得到耗材芯片的耗材信息存储区域的存储数据;或者,通过示波器读取耗材芯片的波形分析得知耗材信息存储区域及该区域的初始值等信息。
步骤S3,根据数据变化方式改写耗材信息存储区域及非访问区域存储的数据值。
其中,改写耗材信息存储区域的存储数据值为初始数据值,并将非访问区域存储的数据值按照所述数据变化方式变化;其中,非访问区域的地址与耗材信息存储区域地址相邻。
具体地,以打印机在工作过程中消耗耗材芯片为例,当墨粉消耗尽时,耗材芯片记录的墨粉量的区域的数据可以被改写,此时为了实现对耗材芯片的重复利用,需要对耗材信息存储区域的地址进行改写,改写时会根据耗材芯片的数据变化方式,按照从低地址位向高地址位对相邻的存储数据值进行依次改写,直至将耗材信息存储区域存储的数据值都改写成初始值,由于芯片预先设定了数据变化的方式,因此在改写耗材信息存储区域的数据值时,还需要非访问区域数据随之变化,才能实现对耗材信息存储区域的数据值的改写,但是,由于打印机在工作过程中对非访问区域不访问,因此该区域存储的数据值变化对耗材芯片的容量没有影响,同时非访问区域的数据发生变化也不会影响芯片的正常使用。
在对耗材信息存储区域的存储数据值进行改写时,按照数据存储方式对相邻区域的存储数据值进行依次改写,在改写过程中,为了保证不破坏设定的规则,实现耗材信息存储区域最高地址的存储数据值复位为初始数据值,需要保证耗材芯片的耗材信息存储区域与非访问区域相邻。
根据本发明实施例的存储芯片复位方法,通过获取耗材芯片的数据变化方式,以及获取耗材信息存储区域及非访问区域,并对耗材信息存储区域与非访问区域的数据值按照数据的变化方式进行改写,实现存储芯片的复位,该复位方法既不影响耗材芯片的数据存储,又可以按照改写规则对加密程度高的废旧芯片进行复位,且复位成功率较高,可以提高废旧芯片的利用率,缓解消费者经济压力。
在本一些实施例中,数据变化方式包括数据值增大的变化方式和数据值减小的变化方式。
具体地,数据的变化方式通常设置有权限,若获取的数据变化方式为增大的方式,则按照变化方式只能将存储数据值往大的数据改写,若得到的数据变化方式为减小的方式,则只能将存储数据值往小的数据改写。例如当耗材信息存储区域的存储数据值为000000 11时,为了满足数据变化为增大的方式,此时耗材芯片的数据存储值只能被改写为0000 00 12,而不能够被改写成00 00 00 10。
在本一些实施例中,改写耗材信息存储区域及非访问区域存储的数据值包括:将耗材信息存储区域及非访问区域存储的数据值作为一个整体,并对该整体的数据值增大或者减小预设值,直至将耗材信息存储区域存储的数据值改写为初始数据值;其中,非访问区域存储的数据值也随之增大或减小。
具体地,改写耗材信息存储区域中的第N地址存储的数据值为初始数据值时,将第N+1地址位存储的数据值增大或者减小预设值;并依次改写耗材信息存储区域中的数据值,直至耗材信息存储区域存储的所有数据值改写为对应的初始数据值之后,将与耗材信息存储区域中最高位地址相邻的非访问区域的地址中存储的数据值随之增大或减小。其中,例如该预设值可为1。在将第N+1地址存储的数据值改为初始值时,由于第N地址存储的数据值已经为初始数据,因此,可以不对第N地址存储的数据值进行修改,仅需对第N+1地址及第N+2地址存储的数据值,同时,还需要对与最高地址相邻的非访问区域地址中的存储数据值进行增大或者减小,以实现耗材芯片的成功复位。
对耗材信息存储区域的存储数据值进行改写,当耗材芯片的数据变化方式为增大时,以打印机的耗材芯片的复位过程为例,假设全新的耗材芯片的内部数据值的排列方式如下表1所示,且耗材芯片只支持4字节写入数据值。
表1
若全新的耗材芯片的存储区域记录的存储数据值为00 00 00 00,此时,要将耗材信息存储区域的存储数据值,即表1中打印机耗材盒记录区域的数据值00 11 22 33按照从低位地址向高位地址依次改写为00 12 00 00,具体步骤如下:
即将打印机不访问的区域与打印机耗材盒记录的区域的数据值作为一个整体,对该整体的数据值增大预定值,例如增大1,对打印机耗材盒记录区域的地址1、0处的数据值,即将00 11 22 33从低地址向高地址依次改写,此时,先将地址0处的数据值改为对应的初始数据值,即将数据值22 33改写为00 00,再将与低地址0相邻的地址1的存储数据值增大1,即将数据值00 11改写为00 12,此时符合改写规则,则改写成功,则耗材芯片的内部数据的排列方式变化如表2所示。
表2
按照这样的改写规则,依次将相邻地址的存储数据指改写为对应的初始数据值,直至耗材信息存储区域的最高位地址的存储数据值改写为对应的初始数据值。
为了不破坏改写规则,实现最高位地址的存储数据复位为初始数据,需要对与耗材信息存储区域最高位地址相邻的非访问区域的数据值进行改写,例如对打印机耗材盒记录区域的地址2、1处的数据值,即对00 00 00 12进行改写,由于0位置处的数据值已经改写完成,因此耗材信息存储区域的最低位由地址0变为地址1。此时先将地址1处的数据值0012改为初始数据值00 00,再将地址1相邻的地址2的存储数据值增大1,即将00 00改写为0001,此时耗材芯片复位成功,则耗材芯片的内部数据的排列方式变化如表3所示。
表3
由于地址2处的数据由原来的00 00变为00 01,但此位置为非访问区域,打印机不访问,从而对耗材芯片容量没有影响。
在一些实施例中,将耗材信息存储区域及非访问区域存储的数据值作为一个整体数据,预设值等于改写后的整体数据减去改写前的整体数据的绝对值;其中,改写后的整体数据中耗材信息存储区存储的数据值为初始值;非访问区域存储的数据值在改写前与改写后不相同。
具体地,对耗材信息存区域改的数据值改写时,原始的耗材信息存储区域的数据值为00 11 22 33,经过一次改写,耗材信息存储区域的数据值变为00 12 00 00,即改写前后整体数据值相差的值为预设值,例如差值为1。并在改写完成后,耗材信息存储区域的数据值变为初始值,例如00 00 00 00,且非访问区域的数据值也从00 00 00 00变为00 0000 01。
在另一些实施例中,在耗材芯片的数据变化方式为减小的方式时,根据数据变化方式按照从低位地址向高位地址依次改写存储数据值,包括将耗材信息存储区域的最低位地址的存储数据值改写为对应的初始数据值,且与最低位地址的相邻地址的存储数据值减小1;将相邻地址的存储数据值改写为对应的初始数据值;依次类推,直至耗材信息存储区域的最高位地址的存储数据值改写为对应的初始数据值。
具体地,以打印机的耗材芯片的复位过程为例,假如全新耗材芯片的内部数据值的排列方式如下表4所示,此时耗材芯片只支持4字节写入数据值。
表4
全新的耗材芯片的存储区域记录的存储数据为FF FF FF FF,此时,要将耗材信息存储区域记录的存储数据值,即表4中的打印机耗材盒记录区域数据值FF EE DD CC,按照从向低地址向高地址依次改写为FF ED FF FF,具体过程如下:
将打印机耗材盒记录区域的地址1、0处的数据,即将FF EE DD CC从低地址向高地址依次改写,先将地址0处的数据值改为对应的初始数据,即将数据值DD CC改写为FF FF,再将最低地址0处相邻的地址1的存储数据减小1,即将FF EE改写为FF ED,此时符合改写规则,改写成功,则耗材芯片的内部数据值的排列方式变化如表5所示。
表5
按照这样的改写规则,将相邻地址的存储数据值改写为对应的初始数据值,直至耗材信息存储区域的最高位地址的存储数据值改写为对应的初始数据值。
在另一些实施例中,根据数据变化方式改写非访问区域的数据值,包括将非访问区域中与耗材信息存储区域最高位地址相邻的地址的数据值减小预设值,例如减小1。
具体地,为了不破坏改写规则,实现最高位地址的存储数据复位为初始数据,要对打印机耗材盒记录区域的地址2、1处的数据,即FF FF FF ED进行改写,由于0位置处的数据值已经改写完成,因此耗材信息存储区域的最低位由地址0变为地址1。此时先将地址1处的数据值FF ED改为初始数据值FF FF,再将地址1处相邻的地址2的存储数据值减小1,即将FFFF改写为FF FE,此时耗材芯片复位成功,则耗材芯片的内部数据的排列方式变化如表6所示。
表6
此时地址2的数据由原来的FF FF变成FF FE。但此位置为非访问区域,打印机不访问,所以对耗材芯片容量没有影响。
在一些实施例中,还包括判断耗材信息存储区域是否与非访问区域相邻;如果是,根据数据变化方式改写非访问区域的数据值;如果否,不对存储数据值进行改写,改与写耗材信息存储区域中与最高地址相邻的其他地址位的数据值。具体地,对耗材芯片存储数据的改写时,是根据数据变化方式从低位地址向高位地址对存储数据进行依次改写,直到实现最高位地址的存储数据复位为初始数据值。因此按照改写规则对非访问区域的数据进行改写,确定耗材信息存储区域是否与非访区域相邻,按照不同的判断结果,使用不同的改写规则,可以提高芯片复位的效率,降低出错率。
在本发明一些实施例中,方法还包括:判断耗材信息存储区域存储的数据值是否为原始数据;如果是,根据数据变化方式改写耗材信息存储区域及非访问区域的数据值;如果否,则不对数据值进行改写,即耗材信息存储区域的数据值未经过改写时,根据数据变化方式对耗材信息存储区域及非访问区域的数据值,按照改写规则进行改写,若已经经过改写,则不对数据值进行二次改写,避免改写失败,降低改写效率。
在一些实施例中,还包括根据耗材信息存储区域的存储数据值判断耗材芯片的容量是否为满;如果否,执行根据数据变化方式按照从低位地址向高位地址依次改写存储数据值。
具体地,当耗材芯片的容量不满时,例如耗材芯片容量为非100%,按照数据减小的变化方式,从耗材信息存储区域的最低位地址的存储数据值开始,将最低位存储数据值改为对应初始数据值,再将与最低位相邻的存储数据值增大1,按照这样的改写规则进行依次改写,直至耗材信息存储区域的最高位地址的存储数据改写为对应的初始数据,从而实现耗材芯片的复位。
概括来说,根据本发明实施例的存储芯片复位方法,通过获取耗材芯片的数据变化方式,以及获取耗材信息存储区域及非访问区域,对耗材信息存储区域与非访问区域的数据值按照数据的变化方式进行改写,实现存储芯片的复位,该复位方法既不影响耗材芯片的数据存储,又可以按照改写规则对加密程度高的废旧芯片进行复位,且复位成功率较高,可以减少废旧芯片的浪费,缓解消费者经济压力。
下面参照附图描述根据本发明第二方面实施例的成像设备。
图2是根据本发明一个实施例的成像设备的框图,如图2所示,本发明实施例的成像设备20包括存储器210、处理器220。其中,存储器210上存储有计算机程序;与存储器210连接的处理器220,计算机程序被处理器220执行时可实现上面实施例提到的存储芯片复位方法。
根据本发明实施例的成像设备20,通过存储器210与处理器220,执行上面实施例的存储芯片复位方法,为实现芯片复位提供支持。
需要说明的是,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。