一種串口波特率自動(dòng)識(shí)別的方法、設(shè)備及系統(tǒng)的制作方法
【專利摘要】本申請(qǐng)?zhí)峁┝艘环N串口波特率自動(dòng)識(shí)別的方法,濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺;利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存;當(dāng)目標(biāo)信號(hào)的特征參數(shù)滿足預(yù)設(shè)條件時(shí),利用第二采樣率對(duì)目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù);利用第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和新采樣的數(shù)據(jù)進(jìn)行緩存;根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率;利用疑似波特率對(duì)緩存的數(shù)據(jù)進(jìn)行解析;利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定疑似波特率為正確波特率。能夠有效的進(jìn)行波特率的自動(dòng)識(shí)別,并提高波特率識(shí)別的準(zhǔn)確性。
【專利說明】
一種串口波特率自動(dòng)識(shí)別的方法、設(shè)備及系統(tǒng)
技術(shù)領(lǐng)域
[0001]本申請(qǐng)涉及串口波特率識(shí)別領(lǐng)域,特別涉及一種串口波特率自動(dòng)識(shí)別的方法、設(shè)備及系統(tǒng)。
【背景技術(shù)】
[0002]隨著技術(shù)的發(fā)展,人們對(duì)串口波特率的識(shí)別方法要求越來越高。
[0003]現(xiàn)有的波特率自動(dòng)識(shí)別方法要么限定初始波特率,要么限定初始數(shù)據(jù),或者將前N個(gè)字節(jié)作為訓(xùn)練序列,或者只識(shí)別幾種固定的波特率。這些限制都會(huì)讓自動(dòng)識(shí)別波特率的功能受到限制,而且在波特率監(jiān)控設(shè)備中均不能使用,因?yàn)楸槐O(jiān)控者的波特率每幀數(shù)據(jù)的波特率都有可能不一樣,進(jìn)而導(dǎo)致波特率的識(shí)別不夠準(zhǔn)確。
[0004]因此,如何有效的進(jìn)行波特率的自動(dòng)識(shí)別,提高波特率識(shí)別的準(zhǔn)確性是本領(lǐng)域技術(shù)人員目前需要解決的技術(shù)問題。
【發(fā)明內(nèi)容】
[0005]本申請(qǐng)所要解決的技術(shù)問題是提供一種串口波特率自動(dòng)識(shí)別的方法、設(shè)備及系統(tǒng),解決了現(xiàn)有技術(shù)中不能有效的進(jìn)行波特率的自動(dòng)識(shí)別,且波特率的識(shí)別不夠準(zhǔn)確的問題。
[0006]其具體方案如下:
[0007]—種串口波特率自動(dòng)識(shí)別的方法,所述方法包括:
[0008]濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺;
[0009]利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存;
[0010]檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的特征參數(shù),當(dāng)所述特征參數(shù)滿足預(yù)設(shè)條件時(shí),根據(jù)目標(biāo)信號(hào)變化的寬度,確定第二采樣率,利用所述第二采樣率對(duì)所述目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù);
[0011]利用所述第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和所述新采樣的數(shù)據(jù)進(jìn)行緩存;
[0012]根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率;
[0013]利用所述疑似波特率對(duì)所述緩存的數(shù)據(jù)進(jìn)行解析;
[0014]利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率。
[0015]上述的方法,優(yōu)選的,所述利用第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),包括:
[0016]利用第二采樣率對(duì)所述已經(jīng)采樣的數(shù)據(jù)進(jìn)行重新采樣,得到重新采樣后的數(shù)據(jù),并利用所述重新采樣后的數(shù)據(jù)替換所述已經(jīng)采樣的數(shù)據(jù)。
[0017]上述的方法,優(yōu)選的,所述根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率,包括:
[0018]從所述緩存的數(shù)據(jù)中確定最小數(shù)據(jù)寬度;
[0019]根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,將所述最小數(shù)據(jù)寬度確定為緩存數(shù)據(jù)的疑似波特率。
[0020]上述的方法,優(yōu)選的,所述利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率,包括:
[0021]獲取所述解析后數(shù)據(jù)的校驗(yàn)位;
[0022]按照預(yù)設(shè)原則,將至少三個(gè)字節(jié)數(shù)據(jù)的校驗(yàn)位依次與五種校驗(yàn)方式進(jìn)行比較,當(dāng)所述至少三個(gè)字節(jié)的數(shù)據(jù)校驗(yàn)位均滿足所述五種校驗(yàn)方式中的任意一種時(shí),則確定所述疑似波特率為正確波特率。
[0023]上述的方法,優(yōu)選的,還包括:
[0024]當(dāng)所述解析后的數(shù)據(jù)無校驗(yàn)位時(shí),則將檢驗(yàn)位后的停止位作為校驗(yàn)位,并利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決。
[0025]上述的方法,優(yōu)選的,還包括:
[0026]將解析后的數(shù)據(jù)進(jìn)行緩存。
[0027]—種串口波特率自動(dòng)識(shí)別的設(shè)備,所述設(shè)備包括:
[0028]濾波器,用于濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺;
[0029]變采樣控制器,用于利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存;檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的特征參數(shù),當(dāng)所述特征參數(shù)滿足預(yù)設(shè)條件時(shí),根據(jù)目標(biāo)信號(hào)變化的寬度,確定第二采樣率,利用所述第二采樣率對(duì)所述目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù);利用所述第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和所述新采樣的數(shù)據(jù)進(jìn)行緩存;
[0030]波形緩沖器,用于對(duì)所述采樣后的數(shù)據(jù)、重構(gòu)后的數(shù)據(jù)和新采樣的數(shù)據(jù)進(jìn)行緩存;
[0031]波特率解析器,用于根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率;
[0032]數(shù)據(jù)解析器,用于利用所述疑似波特率對(duì)所述緩存的數(shù)據(jù)進(jìn)行解析;
[0033]所述波特率解析器還用于,利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率。
[0034]上述的設(shè)備,優(yōu)選的,還包括:
[0035]接收緩沖器,用于將解析后的數(shù)據(jù)進(jìn)行緩存。
[0036]—種串口波特率自動(dòng)識(shí)別的系統(tǒng),所述系統(tǒng)包括:
[0037]發(fā)送緩沖器、發(fā)送模塊和上述的設(shè)備。
[0038]本申請(qǐng)?zhí)峁┑囊环N串口波特率自動(dòng)識(shí)別的方法中,首先濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺;利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存;檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的特征參數(shù),當(dāng)所述特征參數(shù)滿足預(yù)設(shè)條件時(shí),根據(jù)目標(biāo)信號(hào)變化的寬度,確定第二采樣率,利用所述第二采樣率對(duì)所述目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù);利用所述第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和所述新采樣的數(shù)據(jù)進(jìn)行緩存;然后根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率;利用所述疑似波特率對(duì)所述緩存的數(shù)據(jù)進(jìn)行解析;利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率。本申請(qǐng)中濾除目標(biāo)信號(hào)上的毛刺,以防止毛刺影響波特率的識(shí)別,利用變采樣率對(duì)信號(hào)進(jìn)行采樣,節(jié)省資源,并且提高采樣的準(zhǔn)確性,最后根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系尋找疑似波特率,再判斷疑似波特率是否為正確波特率,完全能夠滿足實(shí)際中的波特率識(shí)別需求,提高準(zhǔn)確性,相對(duì)于現(xiàn)有技術(shù),本申請(qǐng)無需固定初始波特率,無需固定初始數(shù)據(jù),也無需采樣訓(xùn)練序列,能夠有效的進(jìn)行波特率的自動(dòng)識(shí)別,并提高波特率識(shí)別的準(zhǔn)確性。
【附圖說明】
[0039]為了更清楚地說明本申請(qǐng)實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請(qǐng)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0040]圖1是本申請(qǐng)的一種串口波特率自動(dòng)識(shí)別的方法實(shí)施例的流程圖;
[0041]圖2是本申請(qǐng)的一種串口波特率自動(dòng)識(shí)別的設(shè)備實(shí)施例的結(jié)構(gòu)不意圖;
[0042]圖3是本申請(qǐng)的一種串口波特率自動(dòng)識(shí)別的系統(tǒng)實(shí)施例的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0043]下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
[0044]參考圖1,示出了本申請(qǐng)一種串口波特率自動(dòng)識(shí)別的方法實(shí)施例的流程圖,可以包括以下步驟:
[0045]步驟SlOl:濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺。
[0046]本申請(qǐng)中,由于串口的標(biāo)準(zhǔn)波特率一般為300115200波特率,有極少數(shù)場(chǎng)合會(huì)使用到460800波特率,因此濾除500k以上頻率的信號(hào),然后再用數(shù)字電路進(jìn)行采樣,可以有效的防止毛刺影響波特率的自動(dòng)識(shí)別。
[0047]步驟S102:利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存。
[0048]本申請(qǐng)中所述第一采樣率為最高采樣率,初始使用最高速度進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存。
[0049]步驟S103:檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的特征參數(shù),當(dāng)所述特征參數(shù)滿足預(yù)設(shè)條件時(shí),根據(jù)目標(biāo)信號(hào)變化的寬度,確定第二采樣率,利用所述第二采樣率對(duì)所述目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù)。
[0050]本申請(qǐng)中檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的變化次數(shù),當(dāng)所述變化次數(shù)滿足預(yù)設(shè)次數(shù)時(shí),進(jìn)行變采樣率操作,利用新的采樣率進(jìn)行采樣。
[0051]—旦檢測(cè)到接收數(shù)據(jù)線上的數(shù)據(jù)變化三次,就根據(jù)數(shù)據(jù)變化的寬度,改變采樣率進(jìn)行米樣。
[0052]本申請(qǐng)中接收數(shù)據(jù)線上的數(shù)據(jù)變換的次數(shù)不僅僅限于三次,可以自由設(shè)定。
[0053]步驟S104:利用所述第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和所述新采樣的數(shù)據(jù)進(jìn)行緩存。
[0054]本申請(qǐng)中,利用第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),包括:
[0055]利用第二采樣率對(duì)所述已經(jīng)采樣的數(shù)據(jù)進(jìn)行重新采樣,得到重新采樣后的數(shù)據(jù),并利用所述重新采樣后的數(shù)據(jù)替換所述已經(jīng)采樣的數(shù)據(jù)。
[0056]在進(jìn)行串口波特率識(shí)別的過程中需要將串口波形保存下來了,但RAM資源有限,不能消耗過多RAM。因此采用變采樣率進(jìn)行波形采樣,初始設(shè)置為最高速率采樣,接收到下一波形后,改變采樣率到一個(gè)合適的采樣率進(jìn)行采樣,并將已經(jīng)采樣的波形進(jìn)行重構(gòu)以節(jié)約RAM資源。
[0057]步驟S105:根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率。
[0058]本申請(qǐng)中,所述根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率,包括:
[0059]從所述緩存的數(shù)據(jù)中確定最小數(shù)據(jù)寬度。
[0060]根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,將所述最小數(shù)據(jù)寬度確定為緩存數(shù)據(jù)的疑似波特率。
[0061]目前所有的波特率自動(dòng)識(shí)別方法均采用是否能夠識(shí)別波特率作為評(píng)價(jià)方法。但是在實(shí)際使用過程中,如果一種波特率識(shí)別方法能夠?qū)λ袛?shù)據(jù)能夠識(shí)別99.9%也是可以接受的,并且不影響正常使用。
[0062]在串口通信中,我們認(rèn)為所有傳輸?shù)臄?shù)據(jù)出現(xiàn)的概率相等,例如在串口通信8位數(shù)據(jù)寬度時(shí)0x00Oxff出現(xiàn)的概率均為1/256,相應(yīng)的在7位數(shù)據(jù)寬度時(shí)0x000x7f出現(xiàn)的概率均為1/128,6位數(shù)據(jù)寬度時(shí)0x000x3f出現(xiàn)的概率均為1/64,5位數(shù)據(jù)寬度時(shí)OxOO-Oxlf出現(xiàn)的概率均為1/32?;诖?,對(duì)不同數(shù)據(jù)不同的波特率進(jìn)行識(shí)別,判斷自動(dòng)波特率識(shí)別的成功概率,進(jìn)而判斷自動(dòng)波特率識(shí)別功能是否能夠?qū)嵱谩?br>[0063]通過分析串口通信中的所有可能傳輸數(shù)據(jù),8位數(shù)據(jù)模式中0x00Oxff,7位數(shù)據(jù)模式中0x00 — 0x7f,6位數(shù)據(jù)模式中0x00 — 0x3f,5位數(shù)據(jù)模式中0x00 — Oxlf,發(fā)現(xiàn)數(shù)據(jù)傳輸中最小寬度等于波特率的概率為89%左右,最小寬度等于波特率的2倍的概率為
7.8%左右,因此只考慮這兩種情況,那么一個(gè)字節(jié)判斷出波特率的概率為96.8%,如果保存四個(gè)字節(jié)進(jìn)行判斷,那么自動(dòng)識(shí)別出波特率的概率已經(jīng)超過99.99%,此識(shí)別率完全能滿足實(shí)際中的波特率識(shí)別需求。
[0064]本申請(qǐng)中首先確定緩存的數(shù)據(jù)中的最小數(shù)據(jù)寬度,然后根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,將所述最小數(shù)據(jù)寬度確定為緩存數(shù)據(jù)的疑似波特率。
[0065]步驟S106:利用所述疑似波特率對(duì)所述緩存的數(shù)據(jù)進(jìn)行解析。
[0066]將采樣后的數(shù)據(jù)存在RAM中,待識(shí)別出波特率以后再進(jìn)行解析。解決了目前市面上波特率自動(dòng)識(shí)別方法中丟失識(shí)別以前通信數(shù)據(jù)的問題,在某些使用場(chǎng)合是不允許丟掉識(shí)別以前的串口通信數(shù)據(jù)的。
[0067]步驟S107:利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率。
[0068]本申請(qǐng)中,所述利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率,包括:
[0069]獲取所述解析后數(shù)據(jù)的校驗(yàn)位;
[0070]按照預(yù)設(shè)原則,將至少三個(gè)字節(jié)數(shù)據(jù)的校驗(yàn)位依次與五種校驗(yàn)方式進(jìn)行比較,當(dāng)所述至少三個(gè)字節(jié)的數(shù)據(jù)校驗(yàn)位均滿足所述五種校驗(yàn)方式中的任意一種時(shí),則確定所述疑似波特率為正確波特率。
[0071]在自動(dòng)波特率識(shí)別中,未識(shí)別出正確波特率時(shí),只能確定疑似波特率,因此就涉及到如何判斷疑似波特率是否為正確波特率。串口通信中包括數(shù)據(jù)位,校驗(yàn)位,數(shù)據(jù)位是我們將要識(shí)別出的數(shù)據(jù),沒法判斷一個(gè)數(shù)據(jù)是否為正確數(shù)據(jù),因此利用校驗(yàn)位來進(jìn)行判決。
[0072]目前串口通信中,有五種校驗(yàn)?zāi)J?奇校驗(yàn),偶校驗(yàn),O校驗(yàn),I校驗(yàn),無校驗(yàn)。
[0073]因此我們可以用疑似波特率解析錄制的串口波形,將解析到的校驗(yàn)位與五種校驗(yàn)方式進(jìn)行比較,而且比較至少三個(gè)字節(jié)數(shù)據(jù)的校驗(yàn)位,如果均為某一種校驗(yàn)方式,那么認(rèn)為此疑似波特率為正確的波特率,如果有不正確的,那么認(rèn)為疑似波特率不是正確的波特率,需要重新進(jìn)行波特率判斷。
[0074]本申請(qǐng)中比較的字節(jié)數(shù)據(jù)越多,對(duì)疑似波特率的判斷越準(zhǔn)確,但是比較的字節(jié)數(shù)據(jù)越多就會(huì)浪費(fèi)比較多的資源,因此,本申請(qǐng)中選擇三個(gè)字節(jié)數(shù)據(jù)進(jìn)行比較,當(dāng)然也可以選擇其他數(shù)目的字節(jié)數(shù)據(jù)進(jìn)行比較,本申請(qǐng)中不作限制。
[0075]—旦判斷到符合標(biāo)準(zhǔn)的波特率,就將波特率參數(shù)固定下來,使用解析出來的波特率作為正常波特率進(jìn)行通信。
[0076]本申請(qǐng)?zhí)峁┑囊环N串口波特率自動(dòng)識(shí)別的方法中,首先濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺;利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存;檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的特征參數(shù),當(dāng)所述特征參數(shù)滿足預(yù)設(shè)條件時(shí),根據(jù)目標(biāo)信號(hào)變化的寬度,確定第二采樣率,利用所述第二采樣率對(duì)所述目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù);利用所述第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和所述新采樣的數(shù)據(jù)進(jìn)行緩存;然后根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率;利用所述疑似波特率對(duì)所述緩存的數(shù)據(jù)進(jìn)行解析;利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率。本申請(qǐng)中濾除目標(biāo)信號(hào)上的毛刺,以防止毛刺影響波特率的識(shí)別,利用變采樣率對(duì)信號(hào)進(jìn)行采樣,節(jié)省資源,并且提高采樣的準(zhǔn)確性,最后根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系尋找疑似波特率,再判斷疑似波特率是否為正確波特率,完全能夠滿足實(shí)際中的波特率識(shí)別需求,提高準(zhǔn)確性,相對(duì)于現(xiàn)有技術(shù),本申請(qǐng)無需固定初始波特率,無需固定初始數(shù)據(jù),也無需采樣訓(xùn)練序列,能夠有效的進(jìn)行波特率的自動(dòng)識(shí)別,并提高波特率識(shí)別的準(zhǔn)確性。
[0077]本申請(qǐng)中,還包括:
[0078]當(dāng)所述解析后的數(shù)據(jù)無校驗(yàn)位時(shí),則將檢驗(yàn)位后的停止位作為校驗(yàn)位,并利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決。此時(shí)的校驗(yàn)相當(dāng)于I校驗(yàn)。
[0079]本申請(qǐng)中,還包括:
[0080]將解析后的數(shù)據(jù)進(jìn)行緩存。
[0081]與上述本申請(qǐng)一種串口波特率自動(dòng)識(shí)別的方法實(shí)施例所提供的方法相對(duì)應(yīng),參見圖2,本申請(qǐng)還提供了一種串口波特率自動(dòng)識(shí)別的設(shè)備實(shí)施例,在本實(shí)施例中,該設(shè)備包括:
[0082]濾波器201,用于濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺。
[0083]變采樣控制器202,用于利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存;檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的特征參數(shù),當(dāng)所述特征參數(shù)滿足預(yù)設(shè)條件時(shí),根據(jù)目標(biāo)信號(hào)變化的寬度,確定第二采樣率,利用所述第二采樣率對(duì)所述目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù);利用所述第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和所述新采樣的數(shù)據(jù)進(jìn)行緩存。
[0084]波形緩沖器203,用于對(duì)所述采樣后的數(shù)據(jù)、重構(gòu)后的數(shù)據(jù)和新采樣的數(shù)據(jù)進(jìn)行緩存。
[0085]波特率解析器204,用于根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率。
[0086]數(shù)據(jù)解析器205,用于利用所述疑似波特率對(duì)所述緩存的數(shù)據(jù)進(jìn)行解析。
[0087]所述波特率解析器還用于,利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率。
[0088]本申請(qǐng)中,還包括:
[0089]接收緩沖器206,用于將解析后的數(shù)據(jù)進(jìn)行緩存。
[0090]在圖2的基礎(chǔ)上,參考圖3,示出了本申請(qǐng)一種串口波特率自動(dòng)識(shí)別的系統(tǒng)的結(jié)構(gòu)示意圖,所述系統(tǒng)還包括:
[0091]發(fā)送緩沖器301和發(fā)送模塊302。
[0092]綜上,本申請(qǐng)?zhí)峁┑囊环N串口波特率自動(dòng)識(shí)別的方法、設(shè)備及系統(tǒng),能夠有效的進(jìn)行波特率的自動(dòng)識(shí)別,并且提高了波特率識(shí)別的準(zhǔn)確性。
[0093]需要說明的是,本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。對(duì)于裝置類實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。
[0094]最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0095]為了描述的方便,描述以上裝置時(shí)以功能分為各種單元分別描述。當(dāng)然,在實(shí)施本申請(qǐng)時(shí)可以把各單元的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。
[0096]通過以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請(qǐng)可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn)?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。
[0097]以上對(duì)本申請(qǐng)所提供的一種串口波特率自動(dòng)識(shí)別的方法、設(shè)備及系統(tǒng)進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本申請(qǐng)的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本申請(qǐng)的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本申請(qǐng)的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本申請(qǐng)的限制。
【主權(quán)項(xiàng)】
1.一種串口波特率自動(dòng)識(shí)別的方法,其特征在于,所述方法包括: 濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺; 利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存; 檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的特征參數(shù),當(dāng)所述特征參數(shù)滿足預(yù)設(shè)條件時(shí),根據(jù)目標(biāo)信號(hào)變化的寬度,確定第二采樣率,利用所述第二采樣率對(duì)所述目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù); 利用所述第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和所述新采樣的數(shù)據(jù)進(jìn)行緩存; 根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率; 利用所述疑似波特率對(duì)所述緩存的數(shù)據(jù)進(jìn)行解析; 利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述利用第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),包括: 利用第二采樣率對(duì)所述已經(jīng)采樣的數(shù)據(jù)進(jìn)行重新采樣,得到重新采樣后的數(shù)據(jù),并利用所述重新采樣后的數(shù)據(jù)替換所述已經(jīng)采樣的數(shù)據(jù)。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率,包括: 從所述緩存的數(shù)據(jù)中確定最小數(shù)據(jù)寬度; 根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,將所述最小數(shù)據(jù)寬度確定為緩存數(shù)據(jù)的疑似波特率。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率,包括: 獲取所述解析后數(shù)據(jù)的校驗(yàn)位; 按照預(yù)設(shè)原則,將至少三個(gè)字節(jié)數(shù)據(jù)的校驗(yàn)位依次與五種校驗(yàn)方式進(jìn)行比較,當(dāng)所述至少三個(gè)字節(jié)的數(shù)據(jù)校驗(yàn)位均滿足所述五種校驗(yàn)方式中的任意一種時(shí),則確定所述疑似波特率為正確波特率。5.根據(jù)權(quán)利要求4所述的方法,其特征在于,還包括: 當(dāng)所述解析后的數(shù)據(jù)無校驗(yàn)位時(shí),則將檢驗(yàn)位后的停止位作為校驗(yàn)位,并利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決。6.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括: 將解析后的數(shù)據(jù)進(jìn)行緩存。7.—種串口波特率自動(dòng)識(shí)別的設(shè)備,其特征在于,所述設(shè)備包括: 濾波器,用于濾除串口接收數(shù)據(jù)線接收的目標(biāo)信號(hào)上的毛刺; 變采樣控制器,用于利用第一采樣率對(duì)消除毛刺的目標(biāo)信號(hào)進(jìn)行采樣,并將采樣后的數(shù)據(jù)進(jìn)行緩存;檢測(cè)所述串口接收數(shù)據(jù)線上接收的目標(biāo)信號(hào)的特征參數(shù),當(dāng)所述特征參數(shù)滿足預(yù)設(shè)條件時(shí),根據(jù)目標(biāo)信號(hào)變化的寬度,確定第二采樣率,利用所述第二采樣率對(duì)所述目標(biāo)信號(hào)進(jìn)行采樣,得到新采樣的數(shù)據(jù);利用所述第二采樣率對(duì)已經(jīng)采樣的數(shù)據(jù)進(jìn)行重構(gòu),并將重構(gòu)后的數(shù)據(jù)和所述新采樣的數(shù)據(jù)進(jìn)行緩存; 波形緩沖器,用于對(duì)所述采樣后的數(shù)據(jù)、重構(gòu)后的數(shù)據(jù)和新采樣的數(shù)據(jù)進(jìn)行緩存; 波特率解析器,用于根據(jù)波特率與最小數(shù)據(jù)寬度的關(guān)系,確定緩存數(shù)據(jù)的疑似波特率; 數(shù)據(jù)解析器,用于利用所述疑似波特率對(duì)所述緩存的數(shù)據(jù)進(jìn)行解析; 所述波特率解析器還用于,利用預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)對(duì)解析后的數(shù)據(jù)進(jìn)行判決,當(dāng)所述解析后的數(shù)據(jù)滿足預(yù)設(shè)的波特率判決標(biāo)準(zhǔn)時(shí),確定所述疑似波特率為正確波特率。8.根據(jù)權(quán)利要求7所述的設(shè)備,其特征在于,還包括: 接收緩沖器,用于將解析后的數(shù)據(jù)進(jìn)行緩存。9.一種串口波特率自動(dòng)識(shí)別的系統(tǒng),其特征在于,所述系統(tǒng)包括: 發(fā)送緩沖器、發(fā)送模塊和上述權(quán)利要求7至8任一項(xiàng)所述的設(shè)備。
【文檔編號(hào)】H04L25/02GK106034092SQ201510116553
【公開日】2016年10月19日
【申請(qǐng)日】2015年3月17日
【發(fā)明人】黃宇釗, 陳偉明, 左平, 劉云峰, 劉繼軍
【申請(qǐng)人】杭州訊能科技有限公司