一種基于通用串行總線進(jìn)行數(shù)據(jù)傳輸?shù)姆椒敖K端的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域中的通用串行總線(Universal Serial Bus, USB)數(shù)據(jù)傳輸技術(shù),尤其涉及一種基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆椒敖K端。
【背景技術(shù)】
[0002]目前,隨著用戶對(duì)移動(dòng)互聯(lián)網(wǎng)的依賴,適用于各種應(yīng)用的終端也越來(lái)越多樣化,無(wú)線網(wǎng)絡(luò)的速率也越來(lái)越高,USB以具有高速率的優(yōu)勢(shì),成為了終端內(nèi)部芯片系統(tǒng)互聯(lián)的主要通信接口,應(yīng)用非常廣泛。
[0003]USB是一種主從模式的通信協(xié)議,分為主機(jī)(Host)端和USB設(shè)備(Device)端;所述主機(jī)檢測(cè)到所述USB設(shè)備插入時(shí),發(fā)起枚舉過(guò)程并在枚舉過(guò)程中為所述USB設(shè)備分配地址并獲取所述USB設(shè)備的枚舉信息,例如,設(shè)備描述符、配置描述符、接口描述符、端點(diǎn)描述符等,然后,所述主機(jī)才能與所述USB設(shè)備建立通信連接并進(jìn)行數(shù)據(jù)傳輸。
[0004]現(xiàn)有基于USB進(jìn)行數(shù)據(jù)傳輸?shù)倪^(guò)程中,主機(jī)檢測(cè)到USB設(shè)備插入時(shí),發(fā)起枚舉過(guò)程并在枚舉過(guò)程中為所述USB設(shè)備分配地址并獲取所述USB設(shè)備的枚舉信息,在用戶需要傳輸數(shù)據(jù)時(shí),根據(jù)所述USB設(shè)備分配的地址及獲取的枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸;如果用戶不需要傳輸數(shù)據(jù),則會(huì)進(jìn)入U(xiǎn)SB掛起狀態(tài),然后,在用戶再次需要傳輸數(shù)據(jù)時(shí),主機(jī)會(huì)重新發(fā)起枚舉過(guò)程并在枚舉過(guò)程中重新獲取所述USB設(shè)備的枚舉信息,根據(jù)所述USB設(shè)備分配的地址及重新獲取的枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸。
[0005]發(fā)明人在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)現(xiàn)現(xiàn)有的基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆桨钢?,至少存在以下缺?
[0006]由USB掛起狀態(tài)轉(zhuǎn)入U(xiǎn)SB數(shù)據(jù)傳輸狀態(tài)時(shí),需要重新發(fā)起枚舉過(guò)程并在重新發(fā)起的枚舉過(guò)程中重新獲取所述USB設(shè)備的枚舉信息,并根據(jù)所述USB設(shè)備分配的地址及重新獲取的枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸,這樣,如果所述終端頻繁進(jìn)入U(xiǎn)SB掛起狀態(tài),在由USB掛起狀態(tài)轉(zhuǎn)入U(xiǎn)SB數(shù)據(jù)傳輸狀態(tài)時(shí),也需要頻繁發(fā)起枚舉過(guò)程,由于枚舉過(guò)程耗時(shí)較長(zhǎng),因此,現(xiàn)有基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆桨笗?huì)極大地影響終端用戶的體驗(yàn)。
【發(fā)明內(nèi)容】
[0007]有鑒于此,本發(fā)明實(shí)施例期望提供一種基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆椒敖K端,能夠縮減USB數(shù)據(jù)傳輸之前的準(zhǔn)備時(shí)間,從而提升終端用戶的使用體驗(yàn)。
[0008]為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0009]本發(fā)明實(shí)施例提供了一種基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,該方法包?
[0010]一種基于通用串行總線進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,檢測(cè)到通用串行總線USB設(shè)備插入時(shí),發(fā)起枚舉過(guò)程并在枚舉過(guò)程中為所述USB設(shè)備分配地址并獲取所述USB設(shè)備的枚舉信息,記錄所述USB設(shè)備的地址及枚舉信息;所述方法還包括:
[0011]接收到USB數(shù)據(jù)傳輸指令時(shí),根據(jù)記錄的USB設(shè)備的地址及枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸。
[0012]較佳地,所述根據(jù)記錄的USB設(shè)備的地址及枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸,包括:
[0013]根據(jù)記錄的所述USB設(shè)備的枚舉信息,確定所述USB設(shè)備的類型以及與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸?shù)耐ㄐ欧绞剑?br>[0014]根據(jù)所述USB設(shè)備的類型、所述通信方式、記錄的所述USB設(shè)備的地址與所述USB設(shè)備建立通信連接并進(jìn)行數(shù)據(jù)傳輸。
[0015]較佳地,所述方法還包括:
[0016]接收到USB數(shù)據(jù)傳輸退出指令時(shí),進(jìn)入U(xiǎn)SB掛起狀態(tài)。
[0017]較佳地,所述方法還包括:
[0018]通過(guò)以下接口中的一種與所述USB設(shè)備連接:標(biāo)準(zhǔn)USB接口、Mini USB接口或Micro USB 接口。
[0019]較佳地,所述枚舉信息包括設(shè)備描述符、配置描述符、接口描述符、端點(diǎn)描述符。
[0020]本發(fā)明又提供了一種終端,所述終端包括:記錄模塊、控制模塊;其中,
[0021]所述記錄模塊,用于記錄所述USB設(shè)備的地址及枚舉信息;
[0022]所述控制模塊,用于在檢測(cè)到USB設(shè)備插入時(shí),發(fā)起枚舉過(guò)程并在枚舉過(guò)程中為所述USB設(shè)備分配地址并獲取所述USB設(shè)備的枚舉信息;并在接收到USB數(shù)據(jù)傳輸指令時(shí),根據(jù)記錄的USB設(shè)備的地址及枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸。
[0023]較佳地,所述控制模塊具體用于:
[0024]根據(jù)記錄的所述USB設(shè)備的枚舉信息,確定所述USB設(shè)備的類型以及與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸?shù)耐ㄐ欧绞剑?br>[0025]根據(jù)所述USB設(shè)備的類型、所述通信方式、記錄的所述USB設(shè)備的地址與所述USB設(shè)備建立通信連接并進(jìn)行數(shù)據(jù)傳輸。
[0026]較佳地,所述控制模塊,還用于在接收到USB數(shù)據(jù)傳輸退出指令時(shí),進(jìn)入U(xiǎn)SB掛起狀態(tài)。
[0027]較佳地,所述控制模塊通過(guò)以下接口中的一種與所述USB設(shè)備連接:標(biāo)準(zhǔn)USB接口、Mini USB 接口或 Micro USB 接口。
[0028]較佳地,所述枚舉信息包括設(shè)備描述符、配置描述符、接口描述符、端點(diǎn)描述符。
[0029]本發(fā)明實(shí)施例所提供的基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆椒敖K端,檢測(cè)到通用串行總線USB設(shè)備插入時(shí),發(fā)起枚舉過(guò)程并在枚舉過(guò)程中為所述USB設(shè)備分配地址并獲取所述USB設(shè)備的枚舉信息,記錄所述USB設(shè)備的地址及枚舉信息;接收到USB數(shù)據(jù)傳輸指令時(shí),根據(jù)記錄的USB設(shè)備的地址及枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸。如此,本發(fā)明實(shí)施例接收到USB數(shù)據(jù)傳輸指令時(shí),無(wú)論之前是否處于USB掛起狀態(tài),在進(jìn)入U(xiǎn)SB數(shù)據(jù)傳輸狀態(tài)后均可以根據(jù)記錄的所述USB設(shè)備的地址及枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸,而不需要重新發(fā)起枚舉過(guò)程,這樣,在基于USB進(jìn)行數(shù)據(jù)傳輸?shù)倪^(guò)程中,能夠縮減USB數(shù)據(jù)傳輸之前的準(zhǔn)備時(shí)間,從而提升終端用戶的使用體驗(yàn)。
【附圖說(shuō)明】
[0030]圖1為現(xiàn)有基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆椒▽?shí)現(xiàn)流程示意圖;
[0031]圖2為本發(fā)明實(shí)施例基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆椒▽?shí)現(xiàn)流程示意圖;
[0032]圖3為本發(fā)明實(shí)施例終端的組成結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0033]目前,基于USB進(jìn)行數(shù)據(jù)傳輸?shù)牧鞒?,如圖1所示,包括如下步驟:
[0034]步驟SlOO:終端檢測(cè)到USB設(shè)備插入時(shí),發(fā)起枚舉過(guò)程并在枚舉過(guò)程中為所述USB設(shè)備分配地址并獲取所述USB設(shè)備的枚舉信息;
[0035]步驟SlOl:所述終端接收到USB數(shù)據(jù)傳輸指令時(shí),進(jìn)入U(xiǎn)SB數(shù)據(jù)傳輸狀態(tài),并根據(jù)所述USB設(shè)備分配的地址及獲取的枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸;
[0036]步驟S102:所述終端接收到USB數(shù)據(jù)傳輸退出指令時(shí),進(jìn)入U(xiǎn)SB掛起狀態(tài);
[0037]步驟S103:所述終端接收到USB數(shù)據(jù)傳輸指令時(shí),由USB掛起狀態(tài)轉(zhuǎn)入U(xiǎn)SB數(shù)據(jù)傳輸狀態(tài),并重新發(fā)起枚舉過(guò)程并在重新發(fā)起的枚舉過(guò)程中重新獲取所述USB設(shè)備的枚舉信息,并根據(jù)所述USB設(shè)備分配的地址及重新獲取的枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸。
[0038]但是,上述基于USB進(jìn)行數(shù)據(jù)傳輸?shù)牧鞒讨?,由USB掛起狀態(tài)轉(zhuǎn)入U(xiǎn)SB數(shù)據(jù)傳輸狀態(tài)時(shí),需要重新發(fā)起枚舉過(guò)程并在重新發(fā)起的枚舉過(guò)程中重新獲取所述USB設(shè)備的枚舉信息,并根據(jù)所述USB設(shè)備分配的地址及重新獲取的枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸,這樣,如果所述終端頻繁進(jìn)入U(xiǎn)SB掛起狀態(tài),在由USB掛起狀態(tài)轉(zhuǎn)入U(xiǎn)SB數(shù)據(jù)傳輸狀態(tài)時(shí),也需要頻繁發(fā)起枚舉過(guò)程,由于枚舉過(guò)程耗時(shí)較長(zhǎng),因此,現(xiàn)有基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆桨笗?huì)極大地影響終端用戶的體驗(yàn)?;谏鲜鲈?,在本發(fā)明實(shí)施例中,終端檢測(cè)到USB設(shè)備插入時(shí),發(fā)起枚舉過(guò)程并在枚舉過(guò)程中為所述USB設(shè)備分配地址并獲取所述USB設(shè)備的枚舉信息,記錄所述USB設(shè)備的地址及枚舉信息;接收到USB數(shù)據(jù)傳輸指令時(shí),無(wú)論之前是否處于USB掛起狀態(tài),在進(jìn)入U(xiǎn)SB數(shù)據(jù)傳輸狀態(tài)后均可以根據(jù)記錄的所述USB設(shè)備的地址及枚舉信息與所述USB設(shè)備進(jìn)行數(shù)據(jù)傳輸,而不需要重新發(fā)起枚舉過(guò)程,這樣,在基于USB進(jìn)行數(shù)據(jù)傳輸?shù)倪^(guò)程中,省略了枚舉過(guò)程這一耗時(shí)較長(zhǎng)的環(huán)節(jié),能夠縮減USB數(shù)據(jù)傳輸之前的準(zhǔn)備時(shí)間,從而提升終端用戶的使用體驗(yàn)。
[0039]本發(fā)明實(shí)施例中,所述終端可以是支持USB數(shù)據(jù)傳輸功能的終端設(shè)備,例如:手機(jī)、平板電腦pad、電腦PC、智能電視等終端設(shè)備。
[0040]下面結(jié)合附圖對(duì)本發(fā)明【具體實(shí)施方式】作進(jìn)一步說(shuō)明。
[0041]本發(fā)明實(shí)施例提出了一種基于USB進(jìn)行數(shù)據(jù)傳輸?shù)姆椒?,如圖2所示,該方法包括:
[0042]步驟S200:終端檢測(cè)到USB設(shè)備插入時(shí),發(fā)起枚舉過(guò)程并在枚舉過(guò)程中為所述USB設(shè)備分配地址并獲取所述USB設(shè)備的枚舉信息,記錄所述USB設(shè)備的地址及枚舉信息。
[0043]這里,枚舉就是終端(Host端)檢測(cè)到USB設(shè)備(Device端)插入時(shí),從