一種usb檢測方法和檢測系統(tǒng)的制作方法
【專利摘要】本發(fā)明實施例提供一種USB檢測方法和檢測系統(tǒng),該USB檢測方法用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,所述檢測方法包括:檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸;在檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸后,啟動延時;在所述延時完成之后,啟動對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作;以及根據(jù)所述上下拉操作的結(jié)果,判斷所述第二設(shè)備的設(shè)備類型。本發(fā)明提供了一種全新的USB檢測方案和檢測系統(tǒng),完善電子設(shè)備USB插入檢測功能,避免因插入慢,D+/D-接觸延時太大,導(dǎo)致檢測類型判斷出錯,充電電流小,無法進(jìn)行數(shù)據(jù)傳輸?shù)葐栴}。
【專利說明】
一種USB檢測方法和檢測系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及USB閃存領(lǐng)域,具體涉及一種USB檢測方法和檢測系統(tǒng)。
【背景技術(shù)】
[0002]USB快充協(xié)議BCl.2補(bǔ)充了 USB充電部分的內(nèi)容,同時建立了一套充電類型檢測的標(biāo)準(zhǔn),目前其用在了所有使用USB2.0/USB3.0的電子設(shè)備上。
[0003]以micro USB為例說明,圖1所示為現(xiàn)有的micro USB數(shù)據(jù)線的USB端和micro-B端接線的示意圖。如圖1所示,USB端共有黑線、綠線、白線、紅線四個接腳,micro USB端具有對應(yīng)的黑線(GND)、綠線(D+)、白線(D-)、紅線(VBUS)接腳,以及一個空端(ID)0
[0004]圖2所示為現(xiàn)有的BCl.2檢測啟動順序的示意圖,如圖2所示,BCl.2檢測啟動順序為:首先檢測USB VBUS插入,在經(jīng)過準(zhǔn)備響應(yīng)之后對D+/D-進(jìn)行上下拉操作,檢測D+/D-上電平狀態(tài),判斷設(shè)備類型(標(biāo)準(zhǔn)充電、非標(biāo)準(zhǔn)充電、數(shù)據(jù)傳輸設(shè)備等),最后配置充電電流或者建立數(shù)據(jù)傳輸。具體地,D+D-短路時為標(biāo)準(zhǔn)充電,D+D-開路時為非標(biāo)準(zhǔn)充電,D+D-對地有一定阻抗(例如15k)時建立數(shù)據(jù)傳輸。
[0005]圖3所示為USB的插頭端和設(shè)備的插座端的接腳的示意圖。如圖3所示,由于USB的結(jié)構(gòu)設(shè)計方式,Micro-B插頭端VBUS和GND比D_、D+、ID接腳稍長。當(dāng)USB設(shè)備插入時候,會出現(xiàn)以下情況:插頭端的VBUS和GND先與插座端的VBUS和GND接觸,處理器(例如手機(jī)的CPU等)進(jìn)行檢測USB VBUS插入后,對D+/D-進(jìn)行上下拉操作和檢測其電平狀態(tài)時,D+、D-還沒有接觸上,導(dǎo)致設(shè)備識別成非標(biāo)準(zhǔn)充電狀態(tài)。進(jìn)入非標(biāo)準(zhǔn)充電狀態(tài)后,會出現(xiàn)無法進(jìn)行數(shù)據(jù)傳輸,而且充電電流會限制在例如500mA左右,導(dǎo)致充電速度慢。
[0006]現(xiàn)有技術(shù)在檢測USB VBUS插入之后,D+、D-接腳很可能未接觸上就開啟了檢測,因此設(shè)備會一直識別為非標(biāo)準(zhǔn)充電狀態(tài),進(jìn)而產(chǎn)生無法傳輸數(shù)據(jù)、充電慢等問題。
【發(fā)明內(nèi)容】
[0007]本發(fā)明實施例提供一種USB檢測方法,以解決現(xiàn)有技術(shù)存在的因插入慢,D+/D-接觸延時太大,導(dǎo)致檢測類型判斷出錯,充電電流小,無法進(jìn)行數(shù)據(jù)傳輸?shù)葐栴}。
[0008]為實現(xiàn)上述目的,本發(fā)明一實施例提出一種USB檢測方法,用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,所述檢測方法包括:
[0009]檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸;
[0010]在檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸后,啟動延時;
[0011]在所述延時完成之后,啟動對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作;以及
[0012]根據(jù)所述上下拉操作的結(jié)果,判斷所述第二設(shè)備的設(shè)備類型。
[0013]本發(fā)明一實施例提出一種USB檢測方法,用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,所述檢測方法包括:
[0014]檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸;
[0015]在檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸后,檢測所述第一設(shè)備的D+接腳和D-接腳是否分別與所述第二設(shè)備的D+接腳和D-接腳接觸;
[0016]在檢測到所述第一設(shè)備的D+接腳和D-接腳分別與所述第二設(shè)備的D+接腳和D-接腳接觸之后,啟動對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作;以及
[0017]根據(jù)所述上下拉操作的結(jié)果,判斷所述第二設(shè)備的設(shè)備類型。
[0018]本發(fā)明一實施例提出一種USB檢測方法,用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,所述檢測方法包括:
[0019]檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸;
[0020]在檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸后,對所述第二設(shè)備的D+接腳和D-接腳進(jìn)行N次上下拉操作,并記錄檢測結(jié)果;
[0021]在所述N次上下拉操作完成之后,判斷所述N次操作中最后M次操作的檢測結(jié)果是否一致;
[0022]當(dāng)最后M次檢測結(jié)果為一致時,根據(jù)所述最后M次檢測結(jié)果,判斷所述第二設(shè)備的設(shè)備類型,其中M和N為正整數(shù),且M < N。
[0023]本發(fā)明一實施例提出一種USB檢測系統(tǒng),用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,其特征在于,所述檢測系統(tǒng)包括檢測模塊、處理模塊、操作模塊和判斷模塊,其中:
[0024]所述檢測模塊用于檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸;
[0025]所述處理模塊用于在所述檢測模塊檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸之后,啟動延時;
[0026]所述操作模塊用于在所述延時完成之后啟動對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作;
[0027]所述判斷模塊根據(jù)所述上下拉操作的結(jié)果判斷所述第二設(shè)備的設(shè)備類型。
[0028]本發(fā)明一實施例提出一種USB檢測系統(tǒng),用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,,所述檢測系統(tǒng)包括第一檢測模塊、第二檢測模塊、操作模塊和判斷模塊,其中:
[0029]所述第一檢測模塊用于檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸;
[0030]所述第二檢測模塊在所述第一檢測模塊檢測出所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸之后;檢測所述第一設(shè)備的D+接腳和D-接腳是否分別與所述第二設(shè)備的D+接腳和D-接腳接觸;
[0031 ] 所述操作模塊用于在所述第二檢測模塊判斷所述第一設(shè)備的D+接腳和D-接腳分別與所述第二設(shè)備的D+接腳和D-接腳接觸之后,對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作;
[0032]所述判斷模塊根據(jù)所述上下拉操作的結(jié)果判斷所述第二設(shè)備的設(shè)備類型。
[0033]本發(fā)明一實施例提出一種USB檢測系統(tǒng),用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,所述檢測系統(tǒng)包括檢測模塊、操作模塊、第一判斷模塊和第二判斷模塊,其中:
[0034]所述檢測模塊用于檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸;
[0035]所述操作模塊用于在所述檢測模塊檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸之后,對所述第二設(shè)備的D+接腳和D-接腳進(jìn)行N次上下拉操作,并記錄檢測結(jié)果;
[0036]所述第一判斷模塊判斷所述N次上下拉操作獲得的檢測結(jié)果中的最后M次檢測結(jié)果是否一致;
[0037]所述第二判斷模塊在所述第一判斷模塊判斷為一致時根據(jù)所述一致的檢測結(jié)果判斷所述第二設(shè)備的設(shè)備類型;其中M和N為正整數(shù),且M < N。
[0038]根據(jù)上述描述可知,本發(fā)明提供了一種全新的USB檢測方案和檢測系統(tǒng),完善電子設(shè)備USB插入檢測功能,避免因插入慢,D+/D-接觸延時太大,導(dǎo)致檢測類型判斷出錯,充電電流小,無法進(jìn)行數(shù)據(jù)傳輸?shù)葐栴}。
【附圖說明】
[0039]圖1所示為現(xiàn)有的micro USB數(shù)據(jù)線的USB端和micro-B端接線的示意圖。
[0040]圖2所不為現(xiàn)有的BCl.2檢測啟動順序的不意圖。
[0041]圖3所不為USB的插頭端和設(shè)備的插座端的接腳的不意圖。
[0042]圖4A所示為本發(fā)明USB檢測方法的第一實施例的實施順序示意圖。
[0043]圖4B為對應(yīng)的USB設(shè)備連接的示意圖。
[0044]圖4C所示為本發(fā)明第一實施例中的USB檢測方法的流程圖。
[0045]圖4D所示為本發(fā)明第一實施例中的USB檢測系統(tǒng)的方框圖。
[0046]圖5A所示為本發(fā)明USB檢測方法的第二實施例的實施順序示意圖。
[0047]圖5B所示為本發(fā)明第二實施例中的USB檢測方法的流程圖。
[0048]圖5C所示為本發(fā)明第二實施例中的USB檢測系統(tǒng)的方框圖。
[0049]圖6A所示為本發(fā)明USB檢測方法的第三實施例的實施順序圖。
[0050]圖6B所示為本發(fā)明第三實施例中的USB設(shè)備連接的示意圖。
[0051]圖6C所示為本發(fā)明第三實施例中的USB檢測方法的流程圖。
[0052]圖6D所示為本發(fā)明第三實施例中的USB檢測系統(tǒng)的方框圖。
【具體實施方式】
[0053]為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和【具體實施方式】對本發(fā)明作進(jìn)一步詳細(xì)的說明。
[0054]需要說明的是,對USB設(shè)備來說,每個USB端具有黑線(GND)、綠線(D+)、白線(D-)、紅線(VBUS)接腳,micro USB端還具有一個空端(ID)。以下描述的“上下拉操作”是指在D+或D-端施加電壓和電流,當(dāng)D+和D-之間為短路狀態(tài)時為標(biāo)準(zhǔn)充電,當(dāng)D+和D-之間為開路狀態(tài)時為非標(biāo)準(zhǔn)充電,當(dāng)D+和D-之間對地有一定阻抗(例如15k Ω )時建立數(shù)據(jù)傳輸。這是本領(lǐng)域技術(shù)人員公知的,在此不再展開說明。
[0055]實施例1
[0056]圖4A所示為本發(fā)明USB檢測方法的第一實施例的實施順序示意圖,圖4B為對應(yīng)的USB設(shè)備連接的示意圖。如圖4A和圖4B所示,本發(fā)明第一實施例中在插座端增加延時電路,再通過軟件延時讀取操作,以在插頭端完全插入之后才對D+/D-進(jìn)行上下拉操作。
[0057]如圖4B所示,第一設(shè)備10的VBUS是帶電的,通常為5V ;第二設(shè)備20的VBUS是不帶電的,為0V。第一設(shè)備10例如為電腦端,或稱插頭端,第二設(shè)備20例如為手機(jī)端,或稱插座端。延時電路30設(shè)置在第一設(shè)備10的VBUS端。當(dāng)?shù)谝辉O(shè)備10和第二設(shè)備20連接后,第二設(shè)備20的VBUS也具有例如5V的電壓,由該電壓開啟觸發(fā)檢測。軟件讀取延時操作可以為檢測協(xié)議,當(dāng)檢測到第二設(shè)備20的VBUS具有5V電壓時,自動經(jīng)過一定時間,再對D+/D-進(jìn)彳丁檢測。
[0058]本實施例提出的USB檢測方法可以通過固化在第二設(shè)備20內(nèi)部的固件來實現(xiàn)。具體來說,圖4C所示為本發(fā)明第一實施例中的USB檢測方法的流程圖,該檢測流程通過燒制在第二設(shè)備20中的固件實現(xiàn)。
[0059]本發(fā)明還提出一種對應(yīng)于實施例1的USB檢測系統(tǒng),可以通過固件實現(xiàn)。圖4D所示為該實施例的USB檢測系統(tǒng)的方框圖。如圖4D所示,該USB檢測系統(tǒng)包括一檢測模塊40、一處理模塊50、一判斷模塊60及一操作模塊70和上述的延時電路3。
[0060]本實施例提出的檢測流程如下:
[0061 ] 步驟101,檢測第一設(shè)備10的VBUS接腳是否與第二設(shè)備20的VBUS接腳接觸;在步驟101中,檢測模塊40用于檢測第一設(shè)備10的VBUS接腳是否與第二設(shè)備的VBUS接腳接觸;例如,檢測模塊40會采集第二設(shè)備20的VBUS的電壓,當(dāng)?shù)谝辉O(shè)備10的VBUS與第二設(shè)備20的VBUS接觸,檢測模塊40會根據(jù)BCl.2協(xié)議發(fā)送所采集到的高電平的電壓信號至處理模塊50。
[0062]步驟102,當(dāng)檢測到第一設(shè)備10的VBUS接腳與第二設(shè)備20的VBUS接腳接觸時,啟動延時;在一實施例中,該延時可以通過第二設(shè)備20中的延時電路30實現(xiàn);在步驟102中,當(dāng)處理模塊50收到檢測模塊40發(fā)送的電壓信號之后,啟動延時;例如,處理模塊50接收檢測模塊40發(fā)送的電壓信號,根據(jù)該電壓信號發(fā)送第一信號至該固件的延時電路30,啟動該延時電路30。延時電路30也可以為硬件延時電路。
[0063]步驟103,在該延時完成之后,啟動對第二設(shè)備的D+/D-接腳的上下拉操作。在步驟103中,操作模塊70用于在延時完成之后啟動對第二設(shè)備20的D+接腳和D-接腳的上下拉操作;例如,該延時電路30完成延時之后,發(fā)送第二信號至處理模塊50,延時電路30延時的長度例如為5s,經(jīng)過5s之后,延時電路30發(fā)送第二信號S2至處理模塊50,啟動對D+/D-的上下拉操作。
[0064]步驟104,根據(jù)所述上下拉操作的結(jié)果,判斷所述第二設(shè)備的設(shè)備類型。在步驟104中,判斷模塊60用于根據(jù)對D+/D-的上下拉操作的結(jié)果判斷對應(yīng)的第二設(shè)備20的設(shè)備類型。
[0065]具體地,步驟104可以包括以下子步驟:
[0066]步驟104a,檢測上下拉操作之后D+接腳和D-接腳的電平狀態(tài),獲得檢測結(jié)果;該檢測結(jié)果例如為:D+/D-之間短路、D+/D-之間開路、D+/D-之間對地有一定阻抗(例如15kΩ)三者之一。
[0067]步驟104b,根據(jù)該檢測結(jié)果獲得對應(yīng)于檢測結(jié)果的第二設(shè)備的設(shè)備類型,該設(shè)備類型例如可以為:標(biāo)準(zhǔn)充電類型、非標(biāo)準(zhǔn)充電類型、建立數(shù)據(jù)傳輸類型三者之一。
[0068]在一實施例中,判斷模塊60進(jìn)一步包括:
[0069]第三檢測模塊,用于檢測上下拉操作后D+/D-接腳的電平狀態(tài),獲得的檢測結(jié)果;
[0070]結(jié)果獲取模塊,用于根據(jù)檢測結(jié)果,獲得對應(yīng)于所述檢測結(jié)果的第二設(shè)備的設(shè)備類型。
[0071 ] 優(yōu)選地,步驟104還可以包括:
[0072]步驟104c,根據(jù)第二設(shè)備的類型為該第二設(shè)備20配置資源。本實施例中的USB檢測系統(tǒng)還可以包括資源配置模塊,用于根據(jù)設(shè)備類型為第二設(shè)備配置資源。
[0073]當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間短路,所述第二設(shè)備的設(shè)備類型為標(biāo)準(zhǔn)充電類型;則配置資源的步驟包括對第二設(shè)備20進(jìn)行標(biāo)準(zhǔn)充電;
[0074]當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間開路,所述第二設(shè)備的設(shè)備類型為非標(biāo)準(zhǔn)充電類型;則配置資源的步驟包括對第二設(shè)備20進(jìn)行非標(biāo)準(zhǔn)充電;
[0075]當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間對地有阻抗,所述第二設(shè)備的設(shè)備類型為數(shù)據(jù)傳輸類型;則配置資源的步驟包括與第二設(shè)備20之間進(jìn)行數(shù)據(jù)傳輸。
[0076]值得一提的是,延時電路30的實現(xiàn)方式有多種,例如為RC電路、開關(guān)定時器等,延時電路30可以為本領(lǐng)域普通技術(shù)人員輕易實現(xiàn),本發(fā)明并不以此為限。
[0077]通過本實施例提出的USB檢測方法和檢測系統(tǒng),在一定時間內(nèi),通過延時電路、軟件延時讀取操作等,能夠解決插入慢導(dǎo)致檢測類型判斷出錯的問題。
[0078]實施例2
[0079]圖5A所示為本發(fā)明USB檢測方法的第二實施例的實施順序示意圖,如圖5A所示,本實施例中通過多次對D+/D-進(jìn)行上下拉操作和檢測D+/D-上電平狀態(tài),可以設(shè)置檢測的次數(shù),以最后幾次檢測做有效判定。舉例來說,可以每隔Is檢測一次,在30s之內(nèi)完成檢測。與上一實施例類似,本實施例對D+/D-的多次檢測也可以通過固化在第二設(shè)備20內(nèi)部的固件實現(xiàn)。具體來說,圖5B所示為本發(fā)明第二實施例中的USB檢測方法的流程圖。
[0080]本發(fā)明還提出一種對應(yīng)于實施例2的USB檢測系統(tǒng),可以通過固件實現(xiàn)。圖5C所示為該實施例的USB檢測系統(tǒng)的方框圖。如圖5C所示,該USB檢測系統(tǒng)包括一檢測模塊40、一操作模塊70、第一判斷模塊60a和第二判斷模塊60b。
[0081]本發(fā)明實施例提供的檢測流程如下:
[0082]步驟201,檢測第一設(shè)備10的VBUS接腳是否與第二設(shè)備20的VBUS接腳接觸;在步驟201中,檢測模塊40用于檢測第一設(shè)備10的VBUS接腳是否與第二設(shè)備20的VBUS接腳接觸;例如,檢測模塊40會采集第二設(shè)備20的VBUS的電壓,當(dāng)?shù)谝辉O(shè)備10的VBUS與第二設(shè)備20的VBUS接觸,檢測模塊40會根據(jù)BCl.2協(xié)議發(fā)送所采集到的高電平的電壓信號至固件中的操作模塊70。
[0083]步驟202,在檢測到第一設(shè)備10的VBUS與第二設(shè)備20的VBUS接觸后,對D+/D-進(jìn)行N次上下拉操作,并記錄檢測結(jié)果;該檢測結(jié)果例如為:D+/D-之間短路、D+/D-之間開路、D+/D-之間對地有一定阻抗(例如15k Ω)三者之一。在步驟202中,操作模塊70在判斷出接觸之后,對第二設(shè)備20的D+接腳和D-接腳進(jìn)行N次上下拉操作,并記錄檢測結(jié)果;例如,操作模塊70接收檢測模塊40發(fā)送的電壓信號,根據(jù)該電壓信號對D+/D-進(jìn)行N次上下拉操作,所述操作模塊70記錄N次上下拉操作每次的檢測結(jié)果;該檢測結(jié)果例如為:D+/D-之間短路、D+/D-之間開路、D+/D-之間對地有一定阻抗(例如15k Ω )三者之一。
[0084]步驟203,在檢測到對D+/D-的N次上下拉操作完成之后,判斷N次上下拉操作中最后M次檢測結(jié)果是否一致;在步驟203中,當(dāng)N次上下拉操作完成之后,第一判斷模塊60a判斷N次上下拉操作獲得的檢測結(jié)果中的最后M次檢測結(jié)果是否一致。
[0085]步驟204,當(dāng)最后M次檢測結(jié)果為一致,通過該最后M次檢測結(jié)果判斷該第二設(shè)備20的類型。其中M和N為正整數(shù),且M彡N。該檢測結(jié)果可以是:D+/D-之間短路、D+/D-之間開路、D+/D-之間對地有一定阻抗(例如15kQ)三者之一。該第二設(shè)備的設(shè)備類型可以為:標(biāo)準(zhǔn)充電類型、非標(biāo)準(zhǔn)充電類型、建立數(shù)據(jù)傳輸類型三者之一。在步驟204中,第二判斷模塊60b在第一判斷模塊60a判斷為一致時根據(jù)所述一致的檢測結(jié)果判斷所述第二設(shè)備20的設(shè)備類型。與上一實施例相同,在此不再贅述。
[0086]優(yōu)選地,本發(fā)明USB檢測方法的實施例中,判斷所述第二設(shè)備的設(shè)備類型的步驟之后,所述USB檢測方法還包括:
[0087]根據(jù)所述設(shè)備類型為所述第二設(shè)備配置資源。
[0088]對應(yīng)地,所述USB檢測系統(tǒng)的實施例中還包括:
[0089]資源配置模塊,根據(jù)所述設(shè)備類型為所述第二設(shè)備配置資源。
[0090]本實施例中M和N均為正整數(shù),同時M彡N,N為例如30次時,M可以為5次。通過本實施例提供的檢測裝置和系統(tǒng),在D+/D-在最后幾次檢測前接觸上的情況下,處理器不會誤判,因此能夠解決插入慢導(dǎo)致檢測類型判斷出錯的問題。
[0091]實施例3
[0092]圖6A所示為本發(fā)明USB檢測方法的第三實施例的實施順序圖。圖6B所示為對應(yīng)的USB設(shè)備連接的示意圖。如圖6A和圖6B所示,在USB第二設(shè)備20 (插座端)的D+/D-上增加接觸檢測電路,當(dāng)接觸檢測電路檢測到第一設(shè)備10的D+/D-與第二設(shè)備20的D+/D-接觸到之后,產(chǎn)生中斷給處理器,由處理器控制啟動對D+/D-進(jìn)行上下拉操作及后續(xù)流程。
[0093]與上一實施例類似,本實施例對D+/D-的多次檢測也可以通過固化在第二設(shè)備20內(nèi)部的固件實現(xiàn)。具體來說,圖6C所示為本發(fā)明第三實施例中的USB檢測方法的流程圖。
[0094]本發(fā)明還提出一種對應(yīng)于實施例3的USB檢測系統(tǒng),可以通過固件實現(xiàn)。圖6D所示為該實施例的USB檢測系統(tǒng)的方框圖。如圖6D所示,該USB檢測系統(tǒng)包括一第一檢測模塊40a、一第二檢測模塊40b、一操作模塊70和一判斷模塊60。在該USB檢測系統(tǒng)的一實施例中:
[0095]本發(fā)明實施例提供的檢測流程如下:
[0096]步驟301,檢測第一設(shè)備10的VBUS是否與第二設(shè)備20的VBUS接觸;在步驟301中,第一檢測模塊40a用于檢測第一設(shè)備10的VBUS接腳是否與第二設(shè)備20的VBUS接腳接觸;例如,固件中的第一檢測模塊40a會采集第二設(shè)備20的VBUS的電壓,當(dāng)?shù)谝辉O(shè)備10的VBUS與第二設(shè)備20的VBUS接觸,第一檢測模塊40a會根據(jù)BCl.2協(xié)議發(fā)送所采集到的高電平的電壓信號至固件中的第二檢測模塊40b ;
[0097]步驟302,當(dāng)檢測到第一設(shè)備10的VBUS與第二設(shè)備20的VBUS接觸時,檢測第一設(shè)備10的D+和D-是否與第二設(shè)備20的D+和D-接觸;在步驟302中,第二檢測模塊40b在接收到電壓信號之后;檢測第一設(shè)備20的D+接腳和D-接腳是否分別與第二設(shè)備20的D+接腳和D-接腳接觸;例如,第二檢測模塊40b在檢測到接觸后,將第二信號發(fā)送給操作模塊70。
[0098]步驟303,當(dāng)檢測到第一設(shè)備10的D+和D-與第二設(shè)備20的D+和D-接觸時,啟動對D+/D-的上下拉操作;在步驟303中,操作模塊70用于在第二檢測模塊判斷第一設(shè)備的D+接腳和D-接腳分別與第二設(shè)備的D+接腳和D-接腳接觸之后,對第二設(shè)備的D+接腳和D-接腳的上下拉操作;
[0099]步驟304,根據(jù)所述上下拉操作的結(jié)果,判斷所述第二設(shè)備的設(shè)備類型。在步驟304中,判斷模塊60用于根據(jù)對D+/D-的上下拉操作的結(jié)果判斷對應(yīng)的第二設(shè)備20的設(shè)備類型。
[0100]檢測所述第一設(shè)備的D+接腳和D-接腳是否分別與所述第二設(shè)備的D+接腳和D-接腳接觸可以通過在所述第一設(shè)備的D+接腳和D-接腳與所述第二設(shè)備的D+接腳和D-接腳之間設(shè)置檢測電路實現(xiàn)。
[0101]具體地,步驟304可以包括以下子步驟:
[0102]步驟304a,檢測上下拉操作后D+/D-接腳的電平狀態(tài),獲得檢測結(jié)果;該檢測結(jié)果例如為:D+/D-之間短路、D+/D-之間開路、D+/D-之間對地有一定阻抗(例如15k Ω)三者之一O
[0103]步驟304b,根據(jù)該檢測結(jié)果獲得對應(yīng)于該檢測結(jié)果的第二設(shè)備的設(shè)備類型,該設(shè)備類型例如可以為:標(biāo)準(zhǔn)充電類型、非標(biāo)準(zhǔn)充電類型、建立數(shù)據(jù)傳輸類型三者之一。
[0104]優(yōu)選地,步驟304還可以包括:
[0105]步驟304c,根據(jù)所述設(shè)備類型為所述第二設(shè)備20配置資源。
[0106]對應(yīng)地,在USB檢測系統(tǒng)的一實施例中,該檢測系統(tǒng)還包括:
[0107]第三檢測模塊,用于檢測所述上下拉操作后所述D+接腳和所述D-接腳的電平狀態(tài),獲得檢測結(jié)果;
[0108]結(jié)果獲取模塊,根據(jù)所述檢測結(jié)果,獲得對應(yīng)于所述檢測結(jié)果的第二設(shè)備的設(shè)備類型;以及
[0109]資源配置模塊,根據(jù)所述設(shè)備類型為所述第二設(shè)備配置資源。
[0110]通過本實施例提出的USB檢測方法和檢測系統(tǒng),一旦第二設(shè)備20的D+/D-與第一設(shè)備10的D+/D-連接上,便對D+/D-進(jìn)行上下拉操作,能夠修正原根據(jù)BCl.2協(xié)議判斷的錯誤,解決插入慢導(dǎo)致檢測類型判斷出錯的問題。
[0111]根據(jù)上述描述可知,本發(fā)明提供了一種全新的USB檢測方案和檢測系統(tǒng),完善電子設(shè)備USB插入檢測功能,避免因插入慢,D+/D-接觸延時太大,導(dǎo)致檢測類型判斷出錯,充電電流小,無法進(jìn)行數(shù)據(jù)傳輸?shù)葐栴}。
[0112]以上對本發(fā)明所提供的一種USB檢測方法和檢測系統(tǒng)進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進(jìn)行了闡述,以上具體實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實施方式】及應(yīng)用范圍上均會有改變之處,并且各實施例可以相互結(jié)合以獲得更完善的技術(shù)方案,均屬于本發(fā)明的范圍之內(nèi)。綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
【主權(quán)項】
1.一種USB檢測方法,用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,其特征在于,所述檢測方法包括: 檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸; 在檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸后,啟動延時; 在所述延時完成之后,啟動對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作;以及 根據(jù)所述上下拉操作的結(jié)果,判斷所述第二設(shè)備的設(shè)備類型。2.如權(quán)利要求1所述的USB檢測方法,其特征在于,所述啟動延時為啟動設(shè)置于所述第二設(shè)備內(nèi)的延時電路。3.—種USB檢測方法,用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,其特征在于,所述檢測方法包括: 檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸; 在檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸后,檢測所述第一設(shè)備的D+接腳和D-接腳是否分別與所述第二設(shè)備的D+接腳和D-接腳接觸; 在檢測到所述第一設(shè)備的D+接腳和D-接腳分別與所述第二設(shè)備的D+接腳和D-接腳接觸之后,啟動對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作;以及根據(jù)所述上下拉操作的結(jié)果,判斷所述第二設(shè)備的設(shè)備類型。4.如權(quán)利要求3所述的USB檢測方法,其特征在于,所述檢測所述第一設(shè)備的D+接腳和D-接腳是否分別與所述第二設(shè)備的D+接腳和D-接腳接觸是通過在所述第一設(shè)備的D+接腳和D-接腳與所述第二設(shè)備的D+接腳和D-接腳之間設(shè)置檢測電路實現(xiàn)。5.如權(quán)利要求1或3所述的USB檢測方法,其特征在于,所述根據(jù)所述上下拉操作的結(jié)果,判斷所述第二設(shè)備的設(shè)備類型的步驟包括如下子步驟: 檢測所述上下拉操作后所述D+接腳和D-接腳的電平狀態(tài),獲得檢測結(jié)果; 根據(jù)所述檢測結(jié)果,獲得對應(yīng)于所述檢測結(jié)果的所述第二設(shè)備的設(shè)備類型。6.如權(quán)利要求5所述的USB檢測方法,其特征在于, 當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間短路,所述第二設(shè)備的設(shè)備類型為標(biāo)準(zhǔn)充電類型; 當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間開路,所述第二設(shè)備的設(shè)備類型為非標(biāo)準(zhǔn)充電類型; 當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間對地有阻抗,所述第二設(shè)備的設(shè)備類型為數(shù)據(jù)傳輸類型; 判斷所述第二設(shè)備的設(shè)備類型的步驟之后,所述USB檢測方法還包括: 根據(jù)所述設(shè)備類型為所述第二設(shè)備配置資源。7.—種USB檢測方法,用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,其特征在于,所述檢測方法包括: 檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸; 在檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸后,對所述第二設(shè)備的D+接腳和D-接腳進(jìn)行N次上下拉操作,并記錄檢測結(jié)果; 在所述N次上下拉操作完成之后,判斷所述N次操作中最后M次操作的檢測結(jié)果是否一致; 當(dāng)最后M次檢測結(jié)果為一致時,根據(jù)所述最后M次檢測結(jié)果,判斷所述第二設(shè)備的設(shè)備類型,其中M和N為正整數(shù),且M < No8.如權(quán)利要求7所述的USB檢測方法,其特征在于,判斷所述第二設(shè)備的設(shè)備類型的步驟之后,所述USB檢測方法還包括: 根據(jù)所述設(shè)備類型為所述第二設(shè)備配置資源。9.一種USB檢測系統(tǒng),用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,其特征在于,所述檢測系統(tǒng)包括檢測模塊、處理模塊、操作模塊和判斷模塊,其中: 所述檢測模塊用于檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸; 所述處理模塊用于在所述檢測模塊檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸之后,啟動延時; 所述操作模塊用于在所述延時完成之后啟動對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作; 所述判斷模塊根據(jù)所述上下拉操作的結(jié)果判斷所述第二設(shè)備的設(shè)備類型。10.如權(quán)利要求9所述的USB檢測系統(tǒng),其特征在于,在所述檢測模塊檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸之后,所述處理模塊用于啟動延時電路。11.一種USB檢測系統(tǒng),用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,其特征在于,所述檢測系統(tǒng)包括第一檢測模塊、第二檢測模塊、操作模塊和判斷模塊,其中: 所述第一檢測模塊用于檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸; 所述第二檢測模塊在所述第一檢測模塊檢測出所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸之后;檢測所述第一設(shè)備的D+接腳和D-接腳是否分別與所述第二設(shè)備的D+接腳和D-接腳接觸; 所述操作模塊用于在所述第二檢測模塊檢測到所述第一設(shè)備的D+接腳和D-接腳分別與所述第二設(shè)備的D+接腳和D-接腳接觸之后,對所述第二設(shè)備的D+接腳和D-接腳的上下拉操作; 所述判斷模塊根據(jù)所述上下拉操作的結(jié)果判斷所述第二設(shè)備的設(shè)備類型。12.如權(quán)利要求11所述的USB檢測系統(tǒng),其特征在于,所述檢測所述第一設(shè)備的D+接腳和D-接腳是否分別與所述第二設(shè)備的D+接腳和D-接腳接觸是通過在所述第一設(shè)備的D+接腳和D-接腳是否分別與所述第二設(shè)備的D+接腳和D-接腳之間設(shè)置檢測電路實現(xiàn)。13.如權(quán)利要求9或11所述的USB檢測系統(tǒng),其特征在于,所述判斷模塊包括: 第三檢測模塊,用于檢測所述上下拉操作后所述D+接腳和D-接腳的電平狀態(tài),獲得檢測結(jié)果;以及 結(jié)果獲取模塊,根據(jù)所述檢測結(jié)果,獲得對應(yīng)于所述檢測結(jié)果的所述第二設(shè)備的設(shè)備類型。14.如權(quán)利要求13所述的USB檢測系統(tǒng),其特征在于, 當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間短路,所述第二設(shè)備的設(shè)備類型為標(biāo)準(zhǔn)充電類型; 當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間開路,所述第二設(shè)備的設(shè)備類型為非標(biāo)準(zhǔn)充電類型; 當(dāng)所述檢測結(jié)果為所述D+接腳和所述D-接腳之間對地有阻抗,所述第二設(shè)備的設(shè)備類型為數(shù)據(jù)傳輸類型; 所述USB檢測系統(tǒng)還包括: 資源配置模塊,根據(jù)所述設(shè)備類型為所述第二設(shè)備配置資源。15.一種USB檢測系統(tǒng),用于檢測連接于第一設(shè)備的第二設(shè)備的設(shè)備類型,其特征在于,所述檢測系統(tǒng)包括檢測模塊、操作模塊、第一判斷模塊和第二判斷模塊,其中: 所述檢測模塊用于檢測所述第一設(shè)備的VBUS接腳是否與所述第二設(shè)備的VBUS接腳接觸; 所述操作模塊用于在所述檢測模塊檢測到所述第一設(shè)備的VBUS接腳與所述第二設(shè)備的VBUS接腳接觸之后,對所述第二設(shè)備的D+接腳和D-接腳進(jìn)行N次上下拉操作,并記錄檢測結(jié)果; 所述第一判斷模塊判斷所述N次上下拉操作獲得的檢測結(jié)果中的最后M次檢測結(jié)果是否一致; 所述第二判斷模塊在所述第一判斷模塊判斷為一致時根據(jù)所述一致的檢測結(jié)果判斷所述第二設(shè)備的設(shè)備類型;其中M和N為正整數(shù),且M < N。16.如權(quán)利要求15所述的USB檢測系統(tǒng),其特征在于,所述USB檢測系統(tǒng)還包括: 資源配置模塊,根據(jù)所述設(shè)備類型為所述第二設(shè)備配置資源。
【文檔編號】G06F11/30GK105824732SQ201510598131
【公開日】2016年8月3日
【申請日】2015年9月18日
【發(fā)明人】尹全喜
【申請人】維沃移動通信有限公司