CN104503814A - 一种usb3.0数据采集模块自动下载固件程序的方法 - Google Patents
一种usb3.0数据采集模块自动下载固件程序的方法 Download PDFInfo
- Publication number
- CN104503814A CN104503814A CN201510027243.9A CN201510027243A CN104503814A CN 104503814 A CN104503814 A CN 104503814A CN 201510027243 A CN201510027243 A CN 201510027243A CN 104503814 A CN104503814 A CN 104503814A
- Authority
- CN
- China
- Prior art keywords
- data acquisition
- acquisition module
- firmware program
- driver
- equipment
- 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.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种USB3.0数据采集模块自动下载固件程序的方法,包括:主机检测USB3.0数据采集模块接入后,从USB3.0数据采集模块中获取设备描述符,判断是否为首次连接,若是,为USB3.0数据采集模块安装设备驱动程序,否则加载设备驱动程序;设备驱动程序初始化,获取USB3.0数据采集模块的VID/PID,判断是否需要下载固件程序,若需要下载固件程序,将固件程序下载到控制芯片内存中,升级固件;若已下载固件程序时主机通过调用驱动程序与USB3.0数据采集模块进行通讯。本发明固件程序代码由设备驱动程序调用自动下载至USB3.0数据采集模块,不需要flash存储,大大降低了成本。
Description
技术领域
本发明涉及USB3.0数据传输领域,尤其涉及一种USB3.0数据采集模块自动下载固件程序的方法。
背景技术
现有USB3.0数据采集模块,以其高速、安全、稳定、良好的兼容性得以广泛应用。但是存储USB3.0控制程序的flash价格贵,成本高,难以推广。为了降低成本,USB3.0低成本数据采集模块没有用于存储固件程序的flash,仅保留USB3.0控制芯片,芯片每次上电后需要手动下载固件程序至芯片内存后设备才能进行工作,操作麻烦。
发明内容
为了克服现有技术中存在的不足,本发明提供一种USB3.0数据采集模块自动下载固件程序的方法。
为实现上述目的,本发明采取如下技术方案:
一种USB3.0数据采集模块自动下载固件程序的方法,包括如下步骤:
(1)主机检测USB3.0数据采集模块接入后,从USB3.0数据采集模块中获取设备描述符,判断是否为首次连接,若是,为USB3.0数据采集模块安装设备驱动程序,否则加载设备驱动程序;
(2)设备驱动程序初始化,获取USB3.0数据采集模块的VID/PID,判断是否需要下载固件程序,若需要下载固件程序,将固件程序下载到USB3.0数据采集模块控制芯片内存中,控制芯片升级固件,USB3.0数据采集模块复位变为可控制数据传输的采集卡设备;若已下载固件程序,驱动程序进入就绪状态,此时主机上位机软件通过调用驱动程序与USB3.0数据采集模块进行通讯。
更进一步的,所述USB3.0数据采集模块复位变为可控制数据传输的采集卡设备,即成为一个厂商定义的支持USB3.0的新设备,此时主机检测到有新设备接入,重新获取USB3.0数据采集模块的设备描述符,跳转至步骤(2)。
更进一步的,所述主机检测到有新的设备接入,重新获取USB3.0数据采集模块的设备描述符后,根据已经安装的设备驱动程序的驱动安装信息文件,为USB3.0数据采集模块加载已经安装的驱动程序,驱动程序初始化时获取设备VID/PID后得知此时设备已经升级固件,不需再次对设备进行升级固件操作,驱动程序进入就绪状态,此时主机上位机软件通过调用驱动程序与USB3.0数据采集模块进行通讯。
更进一步的,所述USB3.0数据采集模块安装设备驱动程序前为支持Bulk-Only传输协议的大容量存储设备。
更进一步的,所述步骤(1)中主机检测USB3.0数据采集模块接入后,从USB3.0数据采集模块中获取设备描述符,识别出USB3.0数据采集模块是一个支持Bulk-Only传输协议的大容量存储设备,则首次连接时为USB3.0数据采集模块安装设备驱动程序。
更进一步的,所述步骤(2)中若需要下载固件程序,设备驱动程序通过Bulk-Only传输协议向控制芯片发送与下位机约定的私有控制命令以建立连接,连接成功后将固件程序下载到控制芯片内存中。
更进一步的,所述固件程序代码存放在上位机设备驱动程序中,设备驱动程序初始化后,由设备驱动程序调用下载至USB3.0数据采集模块。
优选的,固件程序代码存放在设备驱动程序中,若步骤(2)设备驱动程序自动加载初始化后,若需要下载固件程序,作为回调过程自动由驱动程序读取固件程序并下载至USB3.0数据采集模块控制芯片中。
有益效果:(1)本发明固件程序代码存放到上位机中,由设备驱动程序调用自动下载至USB3.0数据采集模块,不需要flash存储,大大降低了成本。(2)本发明通过一个设备驱动程序可以直接驱动两个不同的设备(下固件前和下固件后),操作简单,降低实际应用的复杂度。
附图说明
图1为本发明提供的USB3.0数据采集模块自动下载固件程序方法流程图。
图2为本发明提供的USB3.0数据采集模块自动下载固件程序方案设计示意图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
如图1所示,本发明提供的一种USB3.0数据采集模块自动下载固件程序的方法,其固件程序存放在该模块的设备驱动程序中,当USB3.0数据采集模块接入主机时,此时由于模块中没有固件程序,无法建立内部控制芯片FPGA与主机之间的通路,而主机检测到USB3.0数据采集模块接入后,会从模块中获取到设备描述符,从而识别出该模块是一个支持Bulk-Only传输协议的大容量存储设备,则首次连接时需要为本模块先安装设备驱动程序,设备驱动程序会为没有固件程序的设备安装驱动,驱动安装成功后,驱动程序初始化时会获取本模块的VID/PID,判断本模块是否已经下载了固件程序,如果没有下载固件程序,驱动会通过Bulk-Only传输协议向控制芯片发送与下位机约定的私有控制命令建立连接,连接成功后将固件程序下载到芯片内存中,芯片升级固件后会进行复位,复位后的模块此时已经变为一个厂商定义的支持USB3.0的设备,主机检测到有新的设备接入,会重新获取设备描述符,并根据已经安装的设备驱动程序的驱动安装信息文件(inf文件),为设备加载已经安装的驱动程序,驱动程序初始化时获取设备VID/PID后得知此时设备已经升级固件,不需再次对设备进行升级固件操作,驱动程序进入就绪状态,此时主机上位机软件可以通过调用驱动程序与USB3.0数据采集模块进行通讯。
当USB3.0数据采集模块再次连接到PC端,由于之前已经安装了设备驱动程序,驱动程序会自动加载,并在初始化时通过设备的VID/PID判断是否已经下载固件程序,如果没有下载固件程序,驱动会通过Bulk-Only传输协议将固件程序下载到芯片内存中,升级固件成功后设备复位,复位后的设备会被驱动程序重新加载。
本实施例优选将固件程序代码存放到上位机设备驱动程序,而不需要单独增加一个flash存储驱动,驱动升级固件分为两个环节,首先是识别出没有固件的设备,然后通过Bulk-Only传输协议下载固件程序;固件下载到设备中,设备复位后驱动再重新加载新的设备。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种USB3.0数据采集模块自动下载固件程序的方法,其特征在于包括如下步骤:
(1)主机检测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数据采集模块自动下载固件程序的方法,其特征在于:所述步骤(1)中主机检测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数据采集模块控制芯片内存中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510027243.9A CN104503814A (zh) | 2015-01-20 | 2015-01-20 | 一种usb3.0数据采集模块自动下载固件程序的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510027243.9A CN104503814A (zh) | 2015-01-20 | 2015-01-20 | 一种usb3.0数据采集模块自动下载固件程序的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104503814A true CN104503814A (zh) | 2015-04-08 |
Family
ID=52945215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510027243.9A Pending CN104503814A (zh) | 2015-01-20 | 2015-01-20 | 一种usb3.0数据采集模块自动下载固件程序的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104503814A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106503065A (zh) * | 2016-09-29 | 2017-03-15 | 乐视控股(北京)有限公司 | 数据转移的方法及系统 |
CN107218966A (zh) * | 2016-03-21 | 2017-09-29 | 深圳市兴源智能仪表股份有限公司 | 供水管网数据智能采集方法 |
CN109408128A (zh) * | 2018-11-10 | 2019-03-01 | 歌尔科技有限公司 | 分体式ar设备通信方法及ar设备 |
CN109683928A (zh) * | 2018-11-12 | 2019-04-26 | 广州视源电子科技股份有限公司 | 智能交互平板的操作方法、系统、智能交互平板和存储介质 |
CN110175050A (zh) * | 2019-05-29 | 2019-08-27 | 深圳创龙智新科技有限公司 | 外围设备控制方法、装置、系统、电子设备及存储介质 |
CN111083001A (zh) * | 2018-10-18 | 2020-04-28 | 杭州海康威视数字技术股份有限公司 | 一种固件异常检测方法及装置 |
CN113867194A (zh) * | 2021-09-11 | 2021-12-31 | 山东晨硕仪表有限公司 | 一种基于NB-lot的物联网数据整合终端 |
CN114661365A (zh) * | 2022-02-14 | 2022-06-24 | 阿里巴巴(中国)有限公司 | 设备运行方法、固件管理方法及固件管理系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101963910A (zh) * | 2010-09-21 | 2011-02-02 | 深圳市元征软件开发有限公司 | 基于通用usb总线的设备固件升级方法 |
CN103473201A (zh) * | 2013-08-30 | 2013-12-25 | 深圳先进技术研究院 | 基于usb3.0的超声数据处理及传输装置和方法、超声诊断系统 |
-
2015
- 2015-01-20 CN CN201510027243.9A patent/CN104503814A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101963910A (zh) * | 2010-09-21 | 2011-02-02 | 深圳市元征软件开发有限公司 | 基于通用usb总线的设备固件升级方法 |
CN103473201A (zh) * | 2013-08-30 | 2013-12-25 | 深圳先进技术研究院 | 基于usb3.0的超声数据处理及传输装置和方法、超声诊断系统 |
Non-Patent Citations (1)
Title |
---|
肖舜金: "基于USB3.0超声射频信号的采集与传输系统", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107218966A (zh) * | 2016-03-21 | 2017-09-29 | 深圳市兴源智能仪表股份有限公司 | 供水管网数据智能采集方法 |
CN106503065A (zh) * | 2016-09-29 | 2017-03-15 | 乐视控股(北京)有限公司 | 数据转移的方法及系统 |
CN111083001A (zh) * | 2018-10-18 | 2020-04-28 | 杭州海康威视数字技术股份有限公司 | 一种固件异常检测方法及装置 |
CN109408128A (zh) * | 2018-11-10 | 2019-03-01 | 歌尔科技有限公司 | 分体式ar设备通信方法及ar设备 |
CN109408128B (zh) * | 2018-11-10 | 2022-10-11 | 歌尔光学科技有限公司 | 分体式ar设备通信方法及ar设备 |
CN109683928A (zh) * | 2018-11-12 | 2019-04-26 | 广州视源电子科技股份有限公司 | 智能交互平板的操作方法、系统、智能交互平板和存储介质 |
CN109683928B (zh) * | 2018-11-12 | 2021-01-26 | 广州视源电子科技股份有限公司 | 智能交互平板的操作方法、系统、智能交互平板和存储介质 |
CN110175050A (zh) * | 2019-05-29 | 2019-08-27 | 深圳创龙智新科技有限公司 | 外围设备控制方法、装置、系统、电子设备及存储介质 |
CN113867194A (zh) * | 2021-09-11 | 2021-12-31 | 山东晨硕仪表有限公司 | 一种基于NB-lot的物联网数据整合终端 |
CN114661365A (zh) * | 2022-02-14 | 2022-06-24 | 阿里巴巴(中国)有限公司 | 设备运行方法、固件管理方法及固件管理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104503814A (zh) | 一种usb3.0数据采集模块自动下载固件程序的方法 | |
US8843664B2 (en) | Re-enumeration of USB 3.0 compatible devices | |
CN102945173B (zh) | 用户程序在线升级系统和升级方法 | |
CN105354070B (zh) | 一种通过i2c升级设备固件的方法 | |
US8650332B2 (en) | Method for switching working mode, USB device, and host device | |
CN104579719A (zh) | 一种固件的升级方法和系统、上位机和光模块 | |
CN103227813A (zh) | 一种家庭物联网系统自动远程更新系统及方法 | |
CN112181502B (zh) | 一体机设备的ops电脑控制方法、装置及存储介质 | |
CN102378154A (zh) | 运用无线网络进行产品固件升级的方法和系统 | |
CN112540785A (zh) | 一种存储装置的固件升级方法、控制设备及存储装置 | |
CN102156648A (zh) | 一种无线通讯终端的启用方法及装置 | |
EP3043262A1 (en) | Method and device for remote base station version installation | |
CN105094911A (zh) | 无线通信模块的一键升级方法及一键升级工具 | |
CN107332589A (zh) | 一种基于蓝牙的固件升级装置 | |
EP2562649B1 (en) | Method for repairing communication abnormality between data card and host | |
CN101917395A (zh) | 通用升级方法及装置和系统 | |
CN107729039B (zh) | 嵌入式操作系统加载模式选择电路 | |
CN103677928A (zh) | Gnss接收机中实现软件快速串口升级的系统及方法 | |
CN105446767A (zh) | 智能台后装的生产测试中终端软件升级方法与系统 | |
CN201600923U (zh) | 3g优盘 | |
CN105242938B (zh) | 自动化程序下载系统及方法 | |
CN104679438A (zh) | Sas接口卡的驱动安装系统及方法 | |
CN101782856A (zh) | 电脑系统 | |
CN102082904B (zh) | 手机摄像头驱动方法 | |
CN110286933A (zh) | 一种跨系统串口升级方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150408 |
|
RJ01 | Rejection of invention patent application after publication |