一種用于自適應(yīng)波特率的方法、裝置和設(shè)備的制作方法
【專利摘要】本發(fā)明提供了一種用于自適應(yīng)波特率的方法、裝置和設(shè)備。本發(fā)明中第一設(shè)備接收來自第二設(shè)備的輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定第二設(shè)備的波特率,然后根據(jù)所述波特率計算分頻信號,來供所述第一設(shè)備調(diào)整其波特率以與第二設(shè)備使用的波特率相匹配。本發(fā)明的方案能夠?qū)崿F(xiàn)自適應(yīng)波特率,方便了設(shè)備之間的數(shù)據(jù)傳輸。
【專利說明】一種用于自適應(yīng)波特率的方法、裝置和設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)傳輸領(lǐng)域,尤其涉及一種用于自適應(yīng)波特率的方法、裝置和設(shè)備。
【背景技術(shù)】
[0002]由于不同的設(shè)備可能使用不同的波特率,因此,現(xiàn)有技術(shù)中,設(shè)備之間進行數(shù)據(jù)傳輸時,必須先對需要互相傳輸數(shù)據(jù)的兩個設(shè)備中的至少一個的波特率進行配置后,才能使得兩個設(shè)備正常通信,并且,除非重新配置設(shè)備,否則,該配置后的波特率無法更改,十分不便。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的是提供一種用于自適應(yīng)波特率的方法、裝置和設(shè)備。
[0004]根據(jù)本發(fā)明的一個方面,提供一種在第一設(shè)備中用于自適應(yīng)波特率的方法,其中,所述第一設(shè)備能夠與第二設(shè)備通信,該方法包括以下步驟:
[0005]a接收輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定提供所述輸入信號的第二設(shè)備所使用的波特率;
[0006]b根據(jù)所述波特率,計算分頻信號,該分頻信號能夠用于供所述第一設(shè)備調(diào)整其波特率以與第二設(shè)備的波特率相匹配。
[0007]根據(jù)本發(fā)明的另一個方面,還提供了一種在第一設(shè)備中用于自適應(yīng)波特率的自適應(yīng)裝置,其中,所述第一設(shè)備能夠與第二設(shè)備通信,該自適應(yīng)裝置包括:
[0008]確定裝置,用于接收輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定提供所述輸入信號的第二設(shè)備所使用的波特率;
[0009]計算裝置,用于根據(jù)所述波特率,計算分頻信號,該分頻信號能夠用于供所述第一設(shè)備調(diào)整其波特率以與第二設(shè)備的波特率相匹配。
[0010]根據(jù)本發(fā)明的另一個方面,還提供了一種第一設(shè)備,其中,所述第一設(shè)備包括本發(fā)明提供的自適應(yīng)裝置。
[0011]與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點:1)能夠使得自適應(yīng)裝置自動提供與第二設(shè)備的波特率匹配的分頻信號,從而使得包含了自適應(yīng)裝置的第一設(shè)備能夠適用于不同的波特率,即便將與第一設(shè)備通信的一個第二設(shè)備,更換為另一個具有不同波特率的第二設(shè)備,第一設(shè)備也能與更換后的第二設(shè)備實現(xiàn)正常通信;2)由于與第二設(shè)備的波特率匹配的分頻信號是自適應(yīng)裝置自動生成的,無需人工配置,因而,包含了自適應(yīng)裝置的第一設(shè)備能夠自適應(yīng)第二設(shè)備的波特率,而無需人工調(diào)節(jié);3)在波特率確定后,當(dāng)再次接收到來自第二設(shè)備的輸入信號時,無需重復(fù)計算波特率,減少了資源消耗。
【專利附圖】
【附圖說明】
[0012]通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本發(fā)明的其它特征、目的和優(yōu)點將會變得更明顯:
[0013]圖1為本發(fā)明一個優(yōu)選實施例的用于自適應(yīng)波特率的方法流程圖;
[0014]圖2為本發(fā)明另一個優(yōu)選實施例的用于自適應(yīng)波特率的方法流程圖;
[0015]圖3為本發(fā)明一個優(yōu)選實施例的用于自適應(yīng)波特率的自適應(yīng)裝置的結(jié)構(gòu)示意圖;
[0016]圖4為本發(fā)明另一個優(yōu)選實施例的用于自適應(yīng)波特率的自適應(yīng)裝置的結(jié)構(gòu)示意圖;
[0017]圖5為本發(fā)明一個優(yōu)選實施例的第一設(shè)備的結(jié)構(gòu)示意圖;
[0018]圖6為回車輸入信號的脈沖示意圖。
[0019]附圖中相同或相似的附圖標(biāo)記代表相同或相似的部件。
【具體實施方式】
[0020]下面結(jié)合附圖對本發(fā)明作進一步詳細描述。
[0021]圖1為本發(fā)明一個優(yōu)選實施例的用于自適應(yīng)波特率的方法流程圖。本實施例的方法主要由第一設(shè)備中的自適應(yīng)裝置實現(xiàn);其中,第一設(shè)備能夠與第二設(shè)備通信,且所述第一設(shè)備可包括任何需要自適應(yīng)第二設(shè)備所使用的波特率的設(shè)備,第二設(shè)備可包括任何能夠第一設(shè)備通信的設(shè)備;例如,第一設(shè)備可包括FPGA等,第二設(shè)備可包括能夠與FPGA通信的計算機等。本實施例的方法包括步驟SI和步驟S2。
[0022]在步驟SI中,自適應(yīng)裝置接收來自第二設(shè)備的輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定第二設(shè)備所使用的波特率。其中,所述脈沖可為正脈沖或負脈沖;優(yōu)選地,所述脈沖為負脈沖。
[0023]具體地,自適應(yīng)裝置接收來自第二設(shè)備的輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定第二設(shè)備所使用的波特率的方式包括但不限于:
[0024]I)自適應(yīng)裝置接收來自第二設(shè)備的輸入信號,檢測并確定所述輸入信號的特定位置的脈沖寬度;并根據(jù)所述特定位置的脈沖寬度,確定第二設(shè)備所使用的波特率。其中,所述特定位置包括但不限于會產(chǎn)生一個位時間(bit time)的信號位置,例如,信號的起始位、停止位等。其中,自適應(yīng)裝置可通過多種方式來根據(jù)特定位置的脈沖寬度確定第二設(shè)備所使用的波特率,該多種方式與參照圖2所示實施例的步驟S12中,自適應(yīng)裝置根據(jù)最小脈沖寬度來確定第二設(shè)備所使用的波特率的方式相同或相似,在此不予詳述。
[0025]例如,請參見圖6,來自第二設(shè)備的輸入信號為回車鍵的輸入信號,自適應(yīng)裝置檢測圖6中所示的、該信號中的起始脈沖的脈沖寬度;接著,自適應(yīng)裝置計算起始脈沖的脈沖寬度與多個預(yù)定脈沖寬度的差值,其中,該多個預(yù)定脈沖寬度是預(yù)先分別基于多個可選的波特率以及系統(tǒng)時鐘來計算得到的;則自適應(yīng)裝置選擇差值的絕對值最小的預(yù)定脈沖寬度所對應(yīng)的波特率,作為第二設(shè)備所使用的波特率。
[0026]2)自適應(yīng)裝置接收來自第二設(shè)備的輸入信號,檢測并確定所述輸入信號的脈沖寬度中的最小脈沖寬度;并根據(jù)所述最小脈沖寬度,確定第二設(shè)備所使用的波特率。其中,本實現(xiàn)方式將在參照圖2所示實施例中予以詳述,在此不再贅述。
[0027]需要說明的是,上述舉例僅為更好地說明本發(fā)明的技術(shù)方案,而非對本發(fā)明的限制,本領(lǐng)域技術(shù)人員應(yīng)該理解,任何接收來自第二設(shè)備的輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定第二設(shè)備所使用的波特率的實現(xiàn)方式,均應(yīng)包含在本發(fā)明的范圍內(nèi)。
[0028]接著,在步驟S2中,自適應(yīng)裝置根據(jù)所述波特率,計算分頻信號,該分頻信號能夠用于供所述第一設(shè)備調(diào)整其波特率以與第二設(shè)備的波特率相匹配。
[0029]例如,自適應(yīng)裝置檢測到所述第二設(shè)備所使用的波特率為9600bps,則自適應(yīng)裝置根據(jù)該波特率計算出分頻信號為1300,該分頻信號能夠使得第一設(shè)備生成9600bps的波特率,以與第二設(shè)備的波特率相匹配。
[0030]需要說明的是,上述舉例僅為更好地說明本發(fā)明的技術(shù)方案,而非對本發(fā)明的限制,本領(lǐng)域技術(shù)人員應(yīng)該理解,任何接收來自第二設(shè)備的輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定第二設(shè)備所使用的波特率的實現(xiàn)方式,均應(yīng)包含在本發(fā)明的范圍內(nèi)。
[0031]優(yōu)選地,在步驟S2中,自適應(yīng)裝置根據(jù)所述第二設(shè)備所使用的波特率,并基于以下公式,計算所述分頻信號:
[0032]xk—divider = Cleck/ (k*BD)_2,
[0033]其中,xk—divider表示分頻信號,Cleck表示系統(tǒng)時鐘頻率,BD表示所述第二設(shè)備所使用的波特率,k表示分頻數(shù)。
[0034]例如,分頻數(shù)為8、系統(tǒng)時鐘頻率為100MHz,自適應(yīng)裝置檢測到第二設(shè)備所使用的波特率為9600bps,則,自適應(yīng)裝置利用上述公式計算分頻信號:
[0035]xk—divider = 100*106/(8*9600) _2 = 1300,
[0036]即自適應(yīng)裝置輸出的分頻信號為1300,基于其提供的分頻信號所生成的波特率可與第二設(shè)備的波特率相匹配。
[0037]優(yōu)選地,對于分頻數(shù)為8、系統(tǒng)時鐘頻率為10MHz的情況,自適應(yīng)裝置在各個波特率下輸出的分頻信號的頻率可如下表I所示:
[0038]
波特率(bps) j分頻信號的頻率
T1113634
30041664
60020831
120010414
24005206
48002602
96001300
14400866
19200649
38400323
【權(quán)利要求】
1.一種在第一設(shè)備中用于自適應(yīng)波特率的方法,其中,所述第一設(shè)備能夠與第二設(shè)備通信,該方法包括以下步驟: a接收來自所述第二設(shè)備的輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定所述第二設(shè)備所使用的波特率; b根據(jù)所述波特率,計算分頻信號,該分頻信號能夠用于供所述第一設(shè)備調(diào)整其波特率以與第二設(shè)備的波特率相匹配。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述步驟a包括以下步驟: al接收來自第二設(shè)備的輸入信號,檢測并確定所述輸入信號的脈沖寬度中的最小脈沖覽度; a2根據(jù)所述最小脈沖寬度,確定所述第二設(shè)備所使用的波特率。
3.根據(jù)權(quán)利要求2所述的方法,其中,所述步驟al包括在接收輸入信號的過程中重復(fù)執(zhí)行的以下步驟: -當(dāng)檢測到一個脈沖的起始邊沿時,啟動計數(shù)直至檢測到該脈沖的結(jié)束邊沿,獲得該脈沖的脈沖寬度; -將該脈沖的脈沖寬度與歷史最小脈沖寬度比對; -當(dāng)該脈沖的脈沖寬度小于記錄的歷史最小脈沖寬度時,將該歷史最小脈沖寬度更新為該脈沖的脈沖寬度。
4.根據(jù)權(quán)利要求2或3所述的方法,其中,所述步驟a2包括以下步驟: -將所述最小脈沖寬度與多個預(yù)定寬度范圍進行比對,并將該最小脈沖寬度所屬的預(yù)定寬度范圍所對應(yīng)的波特率,作為所述第二設(shè)備所使用的波特率。
5.根據(jù)權(quán)利要求1至4中任一項所述的方法,其中,所述步驟b包括以下步驟: -根據(jù)所述第二設(shè)備所使用的波特率,并基于以下公式,計算所述分頻信號: xk_divider = Cleck/(k*BD)_2, 其中,xk_divider表示分頻信號,Cleck表示系統(tǒng)時鐘頻率,BD表示所述第二設(shè)備所使用的波特率,k表示分頻數(shù)。
6.根據(jù)權(quán)利要求1至5中任一項所述的方法,其中,該方法還包括在所述步驟a或b之后執(zhí)行的以下步驟: -禁止執(zhí)行再次確定所述第二設(shè)備所使用的波特率的操作。
7.根據(jù)權(quán)利要求1至6中任一項所述的方法,其中,所述第一設(shè)備為基于SoPC的UART核。
8.—種在第一設(shè)備中用于自適應(yīng)波特率的自適應(yīng)裝置,其中,所述第一設(shè)備能夠與第二設(shè)備通信,該自適應(yīng)裝置包括: 確定裝置,用于接收來自所述第二設(shè)備的輸入信號,并通過檢測所述輸入信號的脈沖寬度,確定所述第二設(shè)備所使用的波特率; 計算裝置,用于根據(jù)所述波特率,計算分頻信號,該分頻信號能夠用于供所述第一設(shè)備調(diào)整其波特率以與第二設(shè)備的波特率相匹配。
9.根據(jù)權(quán)利要求8所述的自適應(yīng)裝置,其中,所述確定裝置包括: 寬度確定裝置,用于接收輸入信號,檢測并確定所述輸入信號的脈沖寬度中的最小脈沖寬度; 波特率確定裝置,用于根據(jù)所述最小脈沖寬度,確定所述第二設(shè)備所使用的波特率。
10.根據(jù)權(quán)利要求9所述的自適應(yīng)裝置,其中,所述寬度確定裝置包括在接收輸入信號的過程中重復(fù)執(zhí)行操作的以下裝置: 獲取裝置,用于當(dāng)檢測到一個脈沖的起始邊沿時,啟動計數(shù)直至檢測到該脈沖的結(jié)束邊沿,獲得該脈沖的脈沖寬度; 比對裝置,用于將該脈沖的脈沖寬度與歷史最小脈沖寬度比對; 更新裝置,用于當(dāng)該脈沖的脈沖寬度小于記錄的歷史最小脈沖寬度時,將該歷史最小脈沖寬度更新為該脈沖的脈沖寬度。
11.根據(jù)權(quán)利要求9或10所述的自適應(yīng)裝置,其中,所述波特率確定裝置包括: 子確定裝置,用于將所述最小脈沖寬度與多個預(yù)定寬度范圍進行比對,并將該最小脈沖寬度所屬的預(yù)定寬度范圍所對應(yīng)的波特率,作為所述第二設(shè)備所使用的波特率。
12.根據(jù)權(quán)利要求8至11中任一項所述的自適應(yīng)裝置,其中,所述計算裝置包括: 子計算裝置,用于根據(jù)所述第二設(shè)備所使用的波特率,并基于以下公式,計算所述分頻信號:
xk_divider = Cleck/(k*BD)_2, 其中,xk_divider表示分頻信號,Cleck表示系統(tǒng)時鐘頻率,BD表示所述第二設(shè)備所使用的波特率,k表示分頻數(shù)。
13.根據(jù)權(quán)利要求8至12中任一項所述的自適應(yīng)裝置,其中,該自適應(yīng)裝置還包括在所述確定裝置或計算裝置之后執(zhí)行操作的以下裝置: 禁止裝置,用于禁止執(zhí)行再次確定所述第二設(shè)備所使用的波特率的操作。
14.根據(jù)權(quán)利要求8至13中任一項所述的自適應(yīng)裝置,其中,所述第一設(shè)備為基于SoPC 的 UART 核。
15.—種第一設(shè)備,包括如權(quán)利要求8至14中至少一項所述的自適應(yīng)裝置。
【文檔編號】H04L25/02GK104168080SQ201310180636
【公開日】2014年11月26日 申請日期:2013年5月15日 優(yōu)先權(quán)日:2013年5月15日
【發(fā)明者】章智慧, 黃侖 申請人:上海貝爾股份有限公司