本發(fā)明專利技術(shù)公開了一種控制USB設(shè)備的方法及裝置,用以解決現(xiàn)有技術(shù)中存在的USB測試設(shè)備中連接多個(gè)USB設(shè)備,當(dāng)出現(xiàn)意外情況需要重啟某個(gè)或多個(gè)USB設(shè)備時(shí)需要重新插拔發(fā)生異常的USB設(shè)備,導(dǎo)致操作性差的問題。方法為:在Linux系統(tǒng)中,獲取區(qū)分不同USB設(shè)備的設(shè)備描述符,根據(jù)上述USB設(shè)備的設(shè)備描述符,以及預(yù)設(shè)的系統(tǒng)調(diào)用函數(shù),獲取USB設(shè)備的底層驅(qū)動(dòng)程序,根據(jù)該USB設(shè)備的底層驅(qū)動(dòng)程序,即可指示該USB設(shè)備打開或者關(guān)閉。采用本發(fā)明專利技術(shù)技術(shù)方案,在Linux系統(tǒng)中輸入一段程序指令,即可指示USB設(shè)備執(zhí)行打開或關(guān)閉操作,實(shí)現(xiàn)過程方便快捷,可操作性強(qiáng),有效提高了應(yīng)用USB設(shè)備的系統(tǒng)的工作效率。
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)涉及控制領(lǐng)域,尤其涉及一種控制USB設(shè)備的方法及裝置。
技術(shù)介紹
在日常生活和工作中,USB (Universal Serial Bus,通用串行總線架構(gòu))設(shè)備是指通過USB接口與其他設(shè)備相連接的設(shè)備,其以其方便以及多功能的特性,被廣泛應(yīng)用于各個(gè)領(lǐng)域。例如,在物聯(lián)網(wǎng)應(yīng)用領(lǐng)域中,應(yīng)用到大量帶有USB接口的無線傳感器設(shè)備,常用的zigbee,RFID,以及攝像頭等設(shè)備均為常用的帶有USB接口的設(shè)備。上述USB設(shè)備的應(yīng)用場景有變電所、化學(xué)工廠、政府或企業(yè)中無人區(qū)執(zhí)行監(jiān)控等任務(wù)。參閱圖1所示為現(xiàn)有技術(shù)中,USB設(shè)備的應(yīng)用場景示意圖。其中,zigbee,RFID,以及攝像頭等設(shè)備均為通過USB接口與家庭智能網(wǎng)關(guān)進(jìn)行連接,統(tǒng)稱為USB設(shè)備。在LTE系統(tǒng)中,由于測試設(shè)備連接多個(gè)終端并通過USB接口為被測設(shè)備供電,當(dāng)被測終端需要長時(shí)間運(yùn)行測試程序,且LTE系統(tǒng)較大的帶寬使上下行速度較大,容易導(dǎo)致與USB接口連接的被測終端壞死。參閱圖2所示,現(xiàn)有技術(shù)中測試設(shè)備運(yùn)行流程為步驟200 :初始化測試設(shè)備。步驟210 :運(yùn)行測試腳本I。測試腳本I對應(yīng)被測終端1,運(yùn)行測試腳本I即對被測終端I進(jìn)行測試。步驟220 :判斷被測終端I是否正常,若不正常,則執(zhí)行步驟230 ;否則,執(zhí)行步驟240。步驟230 :測試程序發(fā)生異常,結(jié)束測試。步驟240 :運(yùn)行測試腳本2。測試腳本2對應(yīng)被測終端2,運(yùn)行測試腳本2即對被測終端2進(jìn)行測試。步驟250 :判斷被測終端2是否正常,若不正常,則執(zhí)行步驟260 ;否則,執(zhí)行步驟270。步驟260 :測試程序發(fā)生異常,結(jié)束測試。步驟270 :運(yùn)行測試腳本η。測試腳本η對應(yīng)被測終端η,運(yùn)行測試腳本η即對被測終端η進(jìn)行測試。由此可見,在USB運(yùn)行過程中,當(dāng)USB設(shè)備出現(xiàn)異常發(fā)生壞死時(shí),將導(dǎo)致測試程序無法繼續(xù)運(yùn)行,大大降低了測試系統(tǒng)的效率。為了使測試系統(tǒng)能夠正常工作,需要對USB設(shè)備執(zhí)行斷電重啟操作?,F(xiàn)有技術(shù)中,對于USB設(shè)備的重啟方法為,采用人工插拔USB設(shè)備的方法,強(qiáng)制其重啟。當(dāng)USB設(shè)備所處位置為高危環(huán) 境時(shí),或者有多個(gè)所處位置距離較遠(yuǎn)的USB設(shè)備同時(shí)發(fā)生壞死時(shí),采用人工插拔實(shí)現(xiàn)USB設(shè)備的重啟大大降低了可操作性和工作效率
技術(shù)實(shí)現(xiàn)思路
本專利技術(shù)實(shí)施例提供一種控制USB設(shè)備的方法及裝置,用以解決現(xiàn)有技術(shù)中當(dāng)出現(xiàn)意外情況需要重啟某個(gè)或多個(gè)USB設(shè)備時(shí),需要重新插拔發(fā)生異常的USB設(shè)備,導(dǎo)致操作性差的問題。本專利技術(shù)實(shí)施例提供的具體技術(shù)方案如下一種控制USB設(shè)備的方法,包括在Linux系統(tǒng)初始化階段,獲取USB設(shè)備的設(shè)備描述符;在系統(tǒng)啟動(dòng)后,根據(jù)要打開或關(guān)閉的USB設(shè)備的設(shè)備描述符查找對應(yīng)的USB設(shè)備;獲取所述查找到的USB設(shè)備的底層驅(qū)動(dòng)程序;采用所述底層驅(qū)動(dòng)程序,指示打開或關(guān)閉所述查找到的USB設(shè)備。一種控制USB設(shè)備的裝置,包括第一獲取單元,用于在Linux系統(tǒng)初始化階段,獲取USB設(shè)備的設(shè)備描述符;查找單元,用于在系統(tǒng)啟動(dòng)后,根據(jù)要打開或關(guān)閉的USB設(shè)備的設(shè)備描述符查找對應(yīng)的USB設(shè)備;第二獲取單元,用于獲取所述查找到的USB設(shè)備的底層驅(qū)動(dòng)程序;指示單元,用于采用所述底層驅(qū)動(dòng)程序,指示打開或關(guān)閉所述查找到的USB設(shè)備。本專利技術(shù)實(shí)施例中,在Linux系統(tǒng)中,獲取區(qū)分不同USB設(shè)備的設(shè)備描述符,根據(jù)上述USB設(shè)備的設(shè)備描述符,以及預(yù)設(shè)的系統(tǒng)調(diào)用函數(shù),獲取USB設(shè)備的底層驅(qū)動(dòng)程序,根據(jù)該USB設(shè)備的底層驅(qū)動(dòng)程序,即可指示該USB設(shè)備打開或者關(guān)閉。采用本專利技術(shù)技術(shù)方案,在Linux系統(tǒng)中輸入一段程序指令,即可指示USB設(shè)備執(zhí)行打開或關(guān)閉操作,實(shí)現(xiàn)過程方便快捷,可操作性強(qiáng),有效提高了應(yīng)用USB設(shè)備的系統(tǒng)的工作效率。附圖說明圖1為現(xiàn)有技術(shù)中測試系統(tǒng)中應(yīng)用USB設(shè)備的示意圖;圖2為本專利技術(shù)實(shí)施例中控制USB設(shè)備的裝置結(jié)構(gòu)圖;圖3為本專利技術(shù)實(shí)施例中控制USB設(shè)備的詳細(xì)流程圖;圖4為現(xiàn)有技術(shù)中Linux系統(tǒng)啟動(dòng)流程圖;圖5為本專利技術(shù)實(shí)施例中硬件結(jié)構(gòu)圖;圖6為本專利技術(shù)實(shí)施例中USB設(shè)備內(nèi)部控制結(jié)構(gòu)示意圖;圖7為本專利技術(shù)實(shí)施例中在Linux系統(tǒng)中控制USB設(shè)備詳細(xì)流程圖。具體實(shí)施例方式為了解決現(xiàn)有技術(shù)中存在的USB測試設(shè)備中連接多個(gè)USB設(shè)備,當(dāng)出現(xiàn)意外情況需要重啟某個(gè)或多個(gè)USB設(shè)備時(shí)需要重新插拔發(fā)生異常的USB設(shè)備,導(dǎo)致操作性差的問題。本專利技術(shù)實(shí)施例中,在Linux系統(tǒng)中,獲取區(qū)分不同USB設(shè)備的設(shè)備描述符,根據(jù)上述USB設(shè)備的設(shè)備描述符,以及預(yù)設(shè)的系統(tǒng)調(diào)用函數(shù),獲取USB設(shè)備的底層驅(qū)動(dòng)程序,根據(jù)該USB設(shè)備的底層驅(qū)動(dòng)程序,即可指示該USB設(shè)備打開或者關(guān)閉。采用本專利技術(shù)技術(shù)方案,在Linux系統(tǒng)中輸入一段程序指令,即可指示USB設(shè)備執(zhí)行打開或關(guān)閉操作,實(shí)現(xiàn)過程方便快捷,可操作性強(qiáng),有效提高了應(yīng)用USB設(shè)備的系統(tǒng)的工作效率。下面結(jié)合附圖對本專利技術(shù)優(yōu)選的實(shí)施方式進(jìn)行詳細(xì)說明。參閱圖3所示,本專利技術(shù)實(shí)施例中,控制USB設(shè)備的裝置包括第一獲取單元30,查找單元31,第二獲取單元32和指示單元33,其中,第一獲取單元30,用于在Linux系統(tǒng)初始化階段,獲取USB設(shè)備的設(shè)備描述符;查找單元31,用于在系統(tǒng)啟動(dòng)后,根據(jù)要打開或關(guān)閉的USB設(shè)備的設(shè)備描述符查找對應(yīng)的USB設(shè)備;第二獲取單元32,用于獲取上述查找到的USB設(shè)備的底層驅(qū)動(dòng)程序;指示單元33,用于采用所述底層驅(qū)動(dòng)程序,指示打開或關(guān)閉查找到的USB設(shè)備?;谏鲜黾夹g(shù)方案,參閱圖4所示,本專利技術(shù)實(shí)施例中,USB設(shè)備可以為不能再插接其他USB設(shè)備的設(shè)備,如普通攝像頭;也可以為還可以插接其他USB設(shè)備的設(shè)備,如hub。本專利技術(shù)實(shí)施例中,以hub設(shè)備為例進(jìn)行說明,則控制USB設(shè)備的詳細(xì)流程如下步驟400 :在Linux系統(tǒng)初始化階段,獲取USB設(shè)備的設(shè)備描述符。具體為在Linux系統(tǒng)初始化階段,Linux系統(tǒng)程序經(jīng)過引導(dǎo)后,啟動(dòng)init程序來初始化相關(guān)設(shè)備。上述初始化的相關(guān)設(shè)備包括USB_hub, USB-host, Root-hub, hub等。在初始化hub的過程中,可以根據(jù)USB設(shè)備的接口個(gè)數(shù)或者設(shè)備標(biāo)識(shí)(PID),設(shè)備版本號(VID)等與其他USB設(shè)備進(jìn)行區(qū)分。本專利技術(shù)實(shí)施例中,可以將上述USB設(shè)備的接口個(gè)數(shù),PID,VID均作為USB設(shè)備的設(shè)備描述符,其中,PID和VID可以標(biāo)識(shí)唯一的USB設(shè)備,因此僅使用PID或者VID即可實(shí)現(xiàn)區(qū)分不同的USB設(shè)備。步驟410 :在系統(tǒng)啟動(dòng)后,根據(jù)打開或關(guān)閉的USB設(shè)備的設(shè)備描述符查找對應(yīng)的USB設(shè)備。本專利技術(shù)實(shí)施例中,由于USB設(shè)備的設(shè)備描述符可以區(qū)分不同的USB設(shè)備,因此,當(dāng)Linux系統(tǒng)啟動(dòng)后,即可根據(jù)需要控制的USB設(shè)備的USB設(shè)備描述符,查找對應(yīng)的USB設(shè)備。例如,當(dāng)USB設(shè)備a發(fā)生異常時(shí),則根據(jù)設(shè)備a的USB設(shè)備描述符獲取設(shè)備a。步驟420 :獲取上述查找到的USB設(shè)備的底層驅(qū)動(dòng)程序。在Linux系統(tǒng)中,應(yīng)用程序無法直接訪問底層驅(qū)動(dòng)程序。因此,本專利技術(shù)實(shí)施例中,在Linux系統(tǒng)中,編譯相應(yīng)的系統(tǒng)調(diào)用函數(shù),獲取USB設(shè)備的底層驅(qū)動(dòng)程序。本專利技術(shù)實(shí)施例中,預(yù)設(shè)系統(tǒng)調(diào)用函數(shù)即為對Linux系統(tǒng)程序進(jìn)行修改,對Linux系統(tǒng)程序進(jìn)行重新編譯,通過重新移至的Linux系統(tǒng)程序來訪問USB設(shè)備底層驅(qū)動(dòng)程序。參閱圖5所示,編譯系統(tǒng)調(diào)用函數(shù)的具體過程為步驟al :本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
一種控制通用串行總線架構(gòu)USB設(shè)備的方法,其特征在于,包括:在Linux系統(tǒng)初始化階段,獲取USB設(shè)備的設(shè)備描述符;在系統(tǒng)啟動(dòng)后,根據(jù)要打開或關(guān)閉的USB設(shè)備的設(shè)備描述符查找對應(yīng)的USB設(shè)備;獲取所述查找到的USB設(shè)備的底層驅(qū)動(dòng)程序;采用所述底層驅(qū)動(dòng)程序,指示打開或關(guān)閉所述查找到的USB設(shè)備。
【技術(shù)特征摘要】
1.一種控制通用串行總線架構(gòu)USB設(shè)備的方法,其特征在于,包括 在Linux系統(tǒng)初始化階段,獲取USB設(shè)備的設(shè)備描述符; 在系統(tǒng)啟動(dòng)后,根據(jù)要打開或關(guān)閉的USB設(shè)備的設(shè)備描述符查找對應(yīng)的USB設(shè)備; 獲取所述查找到的USB設(shè)備的底層驅(qū)動(dòng)程序; 采用所述底層驅(qū)動(dòng)程序,指示打開或關(guān)閉所述查找到的USB設(shè)備。2.如權(quán)利要求1所述的方法,其特征在于,獲取USB設(shè)備的設(shè)備描述符,包括 獲取USB設(shè)備的設(shè)備身份識(shí)別符;或/和, 獲取USB設(shè)備的設(shè)備版本號。3.如權(quán)利要求1所述的方法,其特征在于,獲取所述查找到的USB設(shè)備的底層驅(qū)動(dòng)程序,具體包括 在Linux系統(tǒng)中,輸入系統(tǒng)調(diào)用函數(shù)名稱,以及需要打開或者關(guān)閉的USB設(shè)備對應(yīng)的接□號; 根據(jù)所述系統(tǒng)調(diào)用函數(shù)名稱調(diào)用預(yù)設(shè)的系統(tǒng)調(diào)用函數(shù),以及根據(jù)調(diào)用的系統(tǒng)調(diào)用函數(shù)和輸入的接口號,獲取查找到的所述USB設(shè)備的底層驅(qū)動(dòng)程序。4.如權(quán)利要求3所述的方法,其特征在于,所述系統(tǒng)調(diào)用函數(shù)包括USB設(shè)備初始化參數(shù),函數(shù)調(diào)用聲明函數(shù),系統(tǒng)調(diào)用函數(shù)編號,系統(tǒng)調(diào)用函數(shù)名稱,系統(tǒng)調(diào)用函數(shù)的獲取函數(shù)。5.如權(quán)利要求1所述的方法,其特征在于,指示打開或關(guān)閉所述查找到的USB設(shè)備,具體包括 判斷所述查找到的USB設(shè)備對應(yīng)的外接接口數(shù)目; 當(dāng)所述接口數(shù)目為一個(gè)時(shí),則指示打開或關(guān)閉所述接口 ; 當(dāng)所述接口數(shù)目為多個(gè)時(shí),則指示打開或關(guān)閉一個(gè)或多個(gè)接口。6.一種控制通...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:黃志歡,鄧召基,侯磊,劉須華,
申請(專利權(quán))人:大唐移動(dòng)通信設(shè)備有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會(huì)獲得科技券。