具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明实施例做进一步详细说明。在此,本发明实施例的示意性实施方式及其说明用于解释本发明实施例,但并不作为对本发明实施例的限定。
本发明实施例提供一种即插即用设备及其固件升级方法和装置,以下结合附图对本发明进行详细说明。
实施例一:
图1是本发明实施例提供的一种即插即用设备固件升级方法流程图,如图1所示,所述的方法包括:
步骤S101,接收用户终端发送的固件升级指令。
在本发明实施例中,即插即用设备的固件可以包括该设备的驱动程序和后台程序等,固件升级指令由用户终端发送,在本实施例中,固件升级指令可以是端口模式切换指令,模式切换指令的格式可以是AT*PS CDROM=0。
步骤S102,根据所述固件升级指令将即插即用设备存储单元的端口模式切换为闪存模式。
在本发明实施例中,即插即用设备在闪存模式下,可以很方便的与PC机连接,通过USB接口可以快速、方便的拷贝数据。数据拷贝完成后,通过下发AT命令,将此空间转换为ISO格式的文件。在设备再次上电时,设备会映射出一个光驱,并将ISO格式的文件(此时类似于一张光盘)放入虚拟的光驱中,借助与windows操作的自动运行功能,自动运行虚拟光驱中的相关文件。
在本实施例中,即插即用设备可以是数据卡、鼠标、键盘、声卡、优盘等设备,与计算机、笔记本电脑等用户终端连接。即插即用设备根据固件升级指令将即插即用设备存储单元的端口模式由光驱模式切换为闪存模式。
步骤S103,通过所述闪存模式接收所述用户终端发送的固件升级数据并将所述固件升级数据储存在所述即插即用设备的存储单元。
在本实施例中,即插即用设备通过闪存模式接收用户终端发送的固件升级数据并将固件升级数据储存在即插即用设备的存储单元中,固件升级数据可以是驱动程序升级数据和/或后台程序升级数据。
步骤S104,将所述即插即用设备存储单元的端口模式切换为光驱模式。
在本实施例中,在所述的固件升级数据接收完成后,即插即用设备将存储单元的端口模式由闪存模式切换为光驱模式,以便于在即插即用设备拔出后再次插入用户终端时,用户终端会根据即插即用设备将存储单元存储的升级固件进行安装。
图2是本发明实施例提供的一种即插即用设备固件升级方法流程图,如图2所示,所述的方法包括:
步骤S201,向所述用户终端发送所述即插即用设备存储单元的端口模式信息。
在本发明实施例中,即插即用设备向用户终端发送即插即用设备存储单元的端口模式为光驱模式的信息。
步骤S202,接收用户终端根据即插即用设备端口模式信息发送的固件升级指令。
在本发明实施例中,当对即插即用设备的固件进行升级时,用户终端向即插即用设备发送一固件升级指令,即插即用设备接收用户终端根据即插即用设备端口模式信息发送的固件升级指令。
根据本实施例,该固件升级指令可以是端口模式切换指令,通过AT命令实现,如AT*PS CDROM=0,以指示即插即用设备将端口模式由光驱模式切换为闪存模式,以便接收升级文件。
步骤S203,根据所述固件升级指令将即插即用设备存储单元的端口模式切换为闪存模式。
在本发明实施例中,即插即用设备根据固件升级指令将存储单元的端口模式切换为闪存模式。此步骤与图1所述的步骤S102相同,故在此不再赘述。
步骤S204,向所述用户终端发送所述即插即用设备存储单元的端口模式为闪存模式的信息。
在本实施例中,即插即用设备向用户终端发送其存储单元的端口模式为闪存模式的信息,以便用户终端根据该信息通过闪存模式的端口发送升级文件到该即插即用设备。
步骤S205,通过所述闪存模式接收所述用户终端发送的固件升级数据并将所述固件升级数据储存在所述即插即用设备的存储单元。
步骤S206,将所述即插即用设备存储单元的端口模式切换为光驱模式。
在本发明实施例中,步骤S205与S206分别与图1所述的步骤S103和S104相同,故在此不再赘述。
本发明实施例在升级即插即用设备的固件时,通过先将即插即用设备存储单元的端口模式切换为闪存模式,然后再进行固件的升级,缩短了固件的升级时间、提高了升级效率,克服了现有技术中固件升级耗费时间长、升级效率低下的缺陷。
实施例二:
图3是本发明实施例提供的一种即插即用设备固件升级装置300的模块图,如图3所示,所述的装置300包括指令接收单元301、端口模式切换单元303和数据接收单元305,其中:
指令接收单元301,用于接收用户终端发送的固件升级指令。
在本实施例中,指令接收单元301接收用户终端向即插即用设备发送的一固件升级指令,以便根据该固件升级指令完成该指令中所要求的工作。
端口模式切换单元303,用于根据固件升级指令将即插即用设备存储单元的端口模式切换为闪存模式。
在本实施例中,即插即用设备可以是数据卡、鼠标、键盘、声卡、优盘等设备,与计算机、笔记本电脑等用户终端连接。即插即用设备的固件可以包括该设备的驱动程序和后台程序等,固件升级指令由用户终端发送,在本实施例中,固件升级指令可以是端口模式切换指令,模式切换指令的格式可以是AT*PS CDROM=0,端口模式切换单元303根据该指令将即插即用设备存储单元的端口模式由光驱模式切换为闪存模式。
数据接收单元305,用于通过闪存模式接收用户终端发送的固件升级数据并将固件升级数据储层到即插即用设备的存储单元。
在本实施例中,数据接收单元305通过闪存模式接收用户终端发送的固件升级数据并将固件升级数据储存在即插即用设备的存储单元中,固件升级数据可以是驱动程序升级数据和/或后台程序升级数据。
在本发明实施例中,端口模式切换单元303在固件升级数据接收完成后还会将即插即用设备存储单元的端口模式由闪存模式切换为光驱模式。
在本发明的一实施例中,即插即用设备固件升级装置300还可以包括:
端口模式发送单元307,用于在指令接收单元301接收固件升级指令之前,向用户终端发送即插即用设备存储单元的当前端口模式信息,例如光驱模式信息或闪存模式信息,以便用户终端根据该端口模式信息确定发送模式切换指令或升级文件到即插即用设备。
在本发明实施例中,端口模式发送单元307还在所述端口模式切换单元303将即插即用设备存储单元的端口模式切换为光驱模式之后,向用户终端发送即插即用设备存储单元的当前端口模式信息。
例如,当端口模式发送单元307上报给用户终端的端口模式为光驱模式时,用户终端会发送模式切换指令到即插即用设备,指示即插即用设备切换其端口模式到闪存模式,以便通过闪存模式端口发送升级文件;当端口模式发送单元307上报给用户终端的端口模式为闪存模式时,用户终端会将升级文件通过该闪存模式的端口发送至即插即用设备。
在本发明实施例中,指令接收单元301具体用于接收用户终端根据端口模式信息发送的固件升级指令。
根据本实施例,该固件升级指令可以由用户终端和即插即用设备协商,通过AT(Attention,引起注意)命令实现,由于AT命令是控制用户终端TE(Terminal Equipment,如PC等)和移动终端MT(Mobile Equipment,如移动台、数据卡等)之间交互的规则,因此在本实施例中,可以通过AT命令控制即插即用设备的升级装置完成相关的功能,如切换端口模式。
在本发明提供的一实施例中,使用现有技术对一个大小为9.77M的固件进行升级,共需要耗时1分45秒,其中寻找端口、判断下载条件和选择下载模式耗时27秒,文件下载时间需要1分18秒。利用本发明实施例提供的即插即用设备固件升级装置300,对一个大小为18.6M的固件进行升级,不需要寻找端口、判断下载条件和选择下载模式,文件下载时间仅为10秒。
本发明实施例在升级即插即用设备的固件时,通过先将即插即用设备存储单元的端口模式切换为闪存模式,然后再进行固件的升级,缩短了固件的升级时间、提高了升级效率,克服了现有技术中固件升级耗费时间长、升级效率低下的缺陷。
实施例三:
图4是本发明实施例提供的一种即插即用设备400的模块图,如图4所示,所述的即插即用设备400包括存储单元401和固件升级装置403,其中:
存储单元401用于存储即插即用设备400的固件信息,如后台安装文件、用户终端的驱动程序等。
固件升级装置403用于对存储单元401内储存的固件进行升级,该固件升级装置403主要包括:指令接收单元405、端口模式切换单元407、数据接收单元409以及端口模式发送单元411。
在本实施例中,固件升级装置403与本发明第二实施例所述的即插即用设备固件升级装置300结构和功能相同,故在此不再赘述。
本发明实施例利用U盘和光盘上报给操作系统的名称均为USB MASSStorage的特点,将放置后台程序、驱动的flash部分模拟为U盘或者光盘。往flash中写入后台程序时,将此部分模拟为U盘;需要数据卡自启动安装后台程序时,将此部分模拟为光盘。本发明实施例通过已经设定好的AT命令使即插即用设备(如数据卡)上报的端口在光盘与U盘之间进行切换,实现将flash模拟为U盘或光盘的功能,通过USB的高速传输速率,在很短的时间内完成数据写入,并在写入数据后,也即后台程序升级完成后,再将端口模式切换为光盘,再次插入该即插即用设备后会自动安装更新后的后台软件。如此,即缩短了固件的升级时间、提高了升级效率,克服了现有技术中固件升级耗费时间长、升级效率低下的缺陷。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。