一种usb3.0数据采集模块自动下载固件程序的方法

文档序号:6649163阅读:217来源:国知局
一种usb3.0数据采集模块自动下载固件程序的方法
【专利摘要】本发明公开了一种USB3.0数据采集模块自动下载固件程序的方法,包括:主机检测USB3.0数据采集模块接入后,从USB3.0数据采集模块中获取设备描述符,判断是否为首次连接,若是,为USB3.0数据采集模块安装设备驱动程序,否则加载设备驱动程序;设备驱动程序初始化,获取USB3.0数据采集模块的VID/PID,判断是否需要下载固件程序,若需要下载固件程序,将固件程序下载到控制芯片内存中,升级固件;若已下载固件程序时主机通过调用驱动程序与USB3.0数据采集模块进行通讯。本发明固件程序代码由设备驱动程序调用自动下载至USB3.0数据采集模块,不需要flash存储,大大降低了成本。
【专利说明】—种USB3.0数据采集模块自动下载固件程序的方法

【技术领域】
[0001]本发明涉及USB3.0数据传输领域,尤其涉及一种USB3.0数据采集模块自动下载固件程序的方法。

【背景技术】
[0002]现有USB3.0数据采集模块,以其高速、安全、稳定、良好的兼容性得以广泛应用。但是存储USB3.0控制程序的flash价格贵,成本高,难以推广。为了降低成本,USB3.0低成本数据采集模块没有用于存储固件程序的flash,仅保留USB3.0控制芯片,芯片每次上电后需要手动下载固件程序至芯片内存后设备才能进行工作,操作麻烦。


【发明内容】

[0003]为了克服现有技术中存在的不足,本发明提供一种USB3.0数据采集模块自动下载固件程序的方法。
[0004]为实现上述目的,本发明采取如下技术方案:
一种USB3.0数据采集模块自动下载固件程序的方法,包括如下步骤:
(1)主机检测USB3.0数据采集模块接入后,从USB3.0数据采集模块中获取设备描述符,判断是否为首次连接,若是,为USB3.0数据采集模块安装设备驱动程序,否则加载设备驱动程序;
(2)设备驱动程序初始化,获取USB3.0数据采集模块的VID/PID,判断是否需要下载固件程序,若需要下载固件程序,将固件程序下载到USB3.0数据采集模块控制芯片内存中,控制芯片升级固件,USB3.0数据采集模块复位变为可控制数据传输的采集卡设备;若已下载固件程序,驱动程序进入就绪状态,此时主机上位机软件通过调用驱动程序与USB3.0数据采集模块进行通讯。
[0005]更进一步的,所述USB3.0数据采集模块复位变为可控制数据传输的采集卡设备,即成为一个厂商定义的支持USB3.0的新设备,此时主机检测到有新设备接入,重新获取USB3.0数据采集模块的设备描述符,跳转至步骤(2)。
[0006]更进一步的,所述主机检测到有新的设备接入,重新获取USB3.0数据采集模块的设备描述符后,根据已经安装的设备驱动程序的驱动安装信息文件,为USB3.0数据采集模块加载已经安装的驱动程序,驱动程序初始化时获取设备VID/PID后得知此时设备已经升级固件,不需再次对设备进行升级固件操作,驱动程序进入就绪状态,此时主机上位机软件通过调用驱动程序与USB3.0数据采集模块进行通讯。
[0007]更进一步的,所述USB3.0数据采集模块安装设备驱动程序前为支持Bulk-Only传输协议的大容量存储设备。
[0008]更进一步的,所述步骤(1)中主机检测USB3.0数据采集模块接入后,从USB3.0数据采集模块中获取设备描述符,识别出USB3.0数据采集模块是一个支持Bulk-Only传输协议的大容量存储设备,则首次连接时为USB3.0数据采集模块安装设备驱动程序。
[0009]更进一步的,所述步骤(2)中若需要下载固件程序,设备驱动程序通过Bulk-Only传输协议向控制芯片发送与下位机约定的私有控制命令以建立连接,连接成功后将固件程序下载到控制芯片内存中。
[0010]更进一步的,所述固件程序代码存放在上位机设备驱动程序中,设备驱动程序初始化后,由设备驱动程序调用下载至USB3.0数据采集模块。
[0011]优选的,固件程序代码存放在设备驱动程序中,若步骤(2)设备驱动程序自动加载初始化后,若需要下载固件程序,作为回调过程自动由驱动程序读取固件程序并下载至USB3.0数据采集模块控制芯片中。
[0012]有益效果:(1)本发明固件程序代码存放到上位机中,由设备驱动程序调用自动下载至USB3.0数据采集模块,不需要flash存储,大大降低了成本。(2)本发明通过一个设备驱动程序可以直接驱动两个不同的设备(下固件前和下固件后),操作简单,降低实际应用的复杂度。

【专利附图】

【附图说明】
[0013]图1为本发明提供的USB3.0数据采集模块自动下载固件程序方法流程图。
[0014]图2为本发明提供的USB3.0数据采集模块自动下载固件程序方案设计示意图。

【具体实施方式】
[0015]下面结合附图对本发明作更进一步的说明。
[0016]如图1所示,本发明提供的一种USB3.0数据采集模块自动下载固件程序的方法,其固件程序存放在该模块的设备驱动程序中,当USB3.0数据采集模块接入主机时,此时由于模块中没有固件程序,无法建立内部控制芯片FPGA与主机之间的通路,而主机检测到USB3.0数据采集模块接入后,会从模块中获取到设备描述符,从而识别出该模块是一个支持Bulk-Only传输协议的大容量存储设备,则首次连接时需要为本模块先安装设备驱动程序,设备驱动程序会为没有固件程序的设备安装驱动,驱动安装成功后,驱动程序初始化时会获取本模块的VID/PID,判断本模块是否已经下载了固件程序,如果没有下载固件程序,驱动会通过Bulk-Only传输协议向控制芯片发送与下位机约定的私有控制命令建立连接,连接成功后将固件程序下载到芯片内存中,芯片升级固件后会进行复位,复位后的模块此时已经变为一个厂商定义的支持USB3.0的设备,主机检测到有新的设备接入,会重新获取设备描述符,并根据已经安装的设备驱动程序的驱动安装信息文件(inf文件),为设备加载已经安装的驱动程序,驱动程序初始化时获取设备VID/PID后得知此时设备已经升级固件,不需再次对设备进行升级固件操作,驱动程序进入就绪状态,此时主机上位机软件可以通过调用驱动程序与USB3.0数据采集模块进行通讯。
[0017]当USB3.0数据采集模块再次连接到PC端,由于之前已经安装了设备驱动程序,驱动程序会自动加载,并在初始化时通过设备的VID/PID判断是否已经下载固件程序,如果没有下载固件程序,驱动会通过Bulk-Only传输协议将固件程序下载到芯片内存中,升级固件成功后设备复位,复位后的设备会被驱动程序重新加载。
[0018]本实施例优选将固件程序代码存放到上位机设备驱动程序,而不需要单独增加一个flash存储驱动,驱动升级固件分为两个环节,首先是识别出没有固件的设备,然后通过Bulk-Only传输协议下载固件程序;固件下载到设备中,设备复位后驱动再重新加载新的设备。
[0019]以上所述仅是本发明的优选实施方式,应当指出:对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【权利要求】
1.一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于包括如下步骤: (O主机检测USB3.0数据采集模块接入后,从USB3.0数据采集模块中获取设备描述符,判断是否为首次连接,若是,为USB3.0数据采集模块安装设备驱动程序,否则加载设备驱动程序; (2)设备驱动程序初始化,获取USB3.0数据采集模块的VID/PID,判断是否需要下载固件程序,若需要下载固件程序,将固件程序下载到USB3.0数据采集模块控制芯片内存中,控制芯片升级固件,USB3.0数据采集模块复位变为可控制数据传输的采集卡设备;若已下载固件程序,驱动程序进入就绪状态,此时主机上位机软件通过调用驱动程序与USB3.0数据采集模块进行通讯。
2.根据权利要求1所述的一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于:所述USB3.0数据采集模块复位变为可控制数据传输的采集卡设备,即成为一个厂商定义的支持USB3.0的新设备,此时主机检测到有新设备接入,重新获取USB3.0数据采集模块的设备描述符,跳转至步骤(2)。
3.根据权利要求2所述的一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于:所述主机检测到有新的设备接入,重新获取USB3.0数据采集模块的设备描述符后,根据已经安装的设备驱动程序的驱动安装信息文件,为USB3.0数据采集模块加载已经安装的驱动程序,驱动程序初始化时获取设备VID/PID后得知此时设备已经升级固件,不需再次对设备进行升级固件操作,驱动程序进入就绪状态,此时主机上位机软件通过调用驱动程序与USB3.0数据采集模块进行通讯。
4.根据权利要求1或2所述的一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于:所述USB3.0数据采集模块安装设备驱动程序前为支持Bulk-Only传输协议的大容量存储设备。
5.根据权利要求4所述的一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于:所述步骤(I)中主机检测USB3.0数据采集模块接入后,从USB3.0数据采集模块中获取设备描述符,识别出USB3.0数据采集模块是一个支持Bulk-Only传输协议的大容量存储设备,则首次连接时为USB3.0数据采集模块安装设备驱动程序。
6.根据权利要求4所述的一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于:所述步骤(2)中若需要下载固件程序,设备驱动程序通过Bulk-Only传输协议向控制芯片发送与下位机约定的私有控制命令以建立连接,连接成功后将固件程序下载到控制芯片内存中。
7.根据权利要求1所述的一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于:所述固件程序代码存放在上位机设备驱动程序中,由设备驱动程序调用下载至USB3.0数据采集模块。
8.根据权利要求1所述的一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于:所述固件程序代码存放在上位机设备驱动程序中,若步骤(2)判断需要下载固件程序,将固件程序载入到USB3.0数据采集模块控制芯片内存中。
【文档编号】G06F9/445GK104503814SQ201510027243
【公开日】2015年4月8日 申请日期:2015年1月20日 优先权日:2015年1月20日
【发明者】姜向阳, 王璞, 徐毅松 申请人:山东华芯半导体有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1