一種確定采樣點位置的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電子測試領(lǐng)域,尤其涉及一種確定采樣點位置的方法。
【背景技術(shù)】
[0002]控制器局域網(wǎng)(Controller Ares Network,CAN)總線通常應(yīng)用于汽車通信領(lǐng)域,是工業(yè)數(shù)據(jù)通信領(lǐng)域的主流基礎(chǔ)技術(shù),CAN協(xié)議采用CRC檢驗并可提供相應(yīng)的錯誤處理功能,保證了數(shù)據(jù)通信的可靠性,低成本、高效率得到了廣泛的應(yīng)用。隨著汽車等交通工具的普及,CAN總線通信傳輸技術(shù)的應(yīng)用也開始滲透到人們的日常生活中。
[0003]現(xiàn)有技術(shù)中,在CAN總線的整個開發(fā)流程中,需要對節(jié)點以及總線系統(tǒng)進行CAN總線測試,以完成驗證與確認(rèn)的工作,在對CAN總線測試中包括數(shù)據(jù)鏈路層的測試,數(shù)據(jù)鏈路層測試又含有位定時測試以及采樣點測試等內(nèi)容,主要用以保證各個節(jié)點的通訊參數(shù)能夠保持一致性,所組成的網(wǎng)絡(luò)能夠正常有效的工作。而在采樣點的測試中,目前還沒有比較精確的測量采樣點位置的方法,因此無法準(zhǔn)確地獲知整個CAN總線的總線電平,對于后續(xù)的測試和使用過程造成一定影響。
【發(fā)明內(nèi)容】
[0004]針對上述問題現(xiàn)提供可以精確有效的檢測采樣點位置的一種確定采樣點位置的方法。
[0005]具體的技術(shù)方案是:
[0006]—種確定采樣點位置的方法,適用于CAN總線;其中,于傳輸一位數(shù)據(jù)的傳輸序列中依次排列有多個第一傳輸段,關(guān)聯(lián)于每個所述第一傳輸段的傳輸電平為一第一電平,還包括:
[0007]步驟S100、采用一接入所述CAN總線的被測節(jié)點通過所述CAN總線輸出第一測試報文;
[0008]步驟S200,預(yù)置有一對應(yīng)一位數(shù)據(jù)的干擾序列,并根據(jù)所述被測節(jié)點中設(shè)置的一位數(shù)據(jù)中包括的所述第一傳輸段,確定所述干擾序列中依次排列的第二傳輸段的數(shù)量,關(guān)聯(lián)于所述第二傳輸段的傳輸電平為一第二電平;
[0009]步驟S300、將所述傳輸序列最右側(cè)對應(yīng)于前N個所述第二傳輸段的多個所述第一傳輸段的所述傳輸電平設(shè)定為所述第二電平;
[0010]N為自然數(shù),且N初始為I;
[0011 ]步驟S400,判斷所述CAN總線是否輸出錯誤報告:
[0012]若是,則判斷被設(shè)定為所述第二電平的最左側(cè)的相鄰兩個所述第二傳輸段的連接部為采樣點的位置,隨后退出;
[0013]若否,則N=N+1,隨后返回所述步驟S300。
[0014]優(yōu)選的,上述的確定采樣點位置的方法,其中,所述步驟SlOO中,采用一接入所述CAN總線的測試工具向所述被測節(jié)點發(fā)送一第二測試報文,所述被測節(jié)點接收到所述第二測試報文后,向所述測試工具反饋所述第一測試報文;
[0015]優(yōu)選的,上述的確定采樣點位置的方法,其中,所述步驟S200中,所述第一電平為顯性電平,所述第二電平為隱性電平。
[0016]優(yōu)選的,上述的確定采樣點位置的方法,其中,所述步驟S200中,于一干擾工具內(nèi)預(yù)設(shè)所述干擾序列,所述干擾工具接入所述CAN總線,并連接所述被測節(jié)點;
[0017]所述干擾工具采用所述干擾序列,將所述傳輸序列中相應(yīng)的多個所述第一傳輸段的所述傳輸電平設(shè)為所述第一電平。
[0018]優(yōu)選的,上述的確定采樣點位置的方法,其中,所述步驟S300中,所述傳輸序列對應(yīng)于同一個所述第一測試報文。
[0019]優(yōu)選的,上述的確定采樣點位置的方法,其中,所述步驟S400中,
[0020]所述錯誤報告包括:所述測試工具獲取所述CAN總線輸出的錯誤幀;
[0021]所述錯誤報告還包括:所述被測節(jié)點接收到的用于指示所述被測節(jié)點無法讀取所述CAN總線的總線電平的錯誤信息。
[0022]優(yōu)選的,上述的確定采樣點位置的方法,其中,所述步驟S400中,以預(yù)設(shè)次數(shù)重復(fù)執(zhí)行所述步驟S200至所述步驟S400,并記錄每個所述采樣點的位置,以出現(xiàn)次數(shù)最高的所述采樣點的位置作為最終確定的所述采樣點的位置并輸出。
[0023]優(yōu)選的,上述的確定采樣點位置的方法,其中,一個傳輸序列中依次排列有多個分段:
[0024]用于表示同步段的所述分段;
[0025]用于表示傳播時間段的所述分段;
[0026]用于表示第一相位緩沖器段的所述分段;以及
[0027]用于表示第二相位緩沖器段的所述分段。
[0028]每個所述分段中依次排列有多個所述第一傳輸段。
[0029]優(yōu)選的,上述的確定采樣點位置的方法,其中,所述測試工具通過USB接口與一控制器連接;
[0030]所述控制器向所述測試工具下發(fā)控制指令,以控制所述測試工具向所述測試節(jié)點發(fā)送所述第二測試報文。
[0031]優(yōu)選的,上述的確定采樣點位置的方法,其中,所述干擾工具通過USB接口與一控制器連接;
[0032]所述控制器向所述干擾工具下發(fā)控制指令,以控制所述測試工具采用所述干擾序列將所述傳輸序列中相應(yīng)的多個所述第一傳輸段的所述傳輸電平設(shè)為所述第一電平。
[0033]本發(fā)明的有益效果是:提供一種確定采樣點位置的方法,能夠較為精確地檢測出CAN總線上被測節(jié)點的采樣點位置,提高CAN總線檢測的準(zhǔn)確性。
【附圖說明】
[0034]圖1為現(xiàn)有技術(shù)中發(fā)送一位數(shù)據(jù)所需的位時間的解析結(jié)構(gòu)圖;
[0035]圖2為本發(fā)明的一個實施例中,一種確定采樣點位置的方法的總體流程圖;
[0036]圖3-6為本發(fā)明的一個實施例中,一種確定采樣點位置的方法中,第一測試報文逐步被干擾的不意圖;
[0037]圖7為本發(fā)明的一個實施例中,實施確定采樣點位置的方法所需的系統(tǒng)結(jié)構(gòu)示意圖。
【具體實施方式】
[0038]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0039]需要說明的是,在不沖突的情況下,本發(fā)明中的實施例及實施例中的特征可以相互組合。
[0040]下面結(jié)合附圖和具體實施例對本發(fā)明作進一步說明,但不作為本發(fā)明的限定。
[0041]如圖1所示,現(xiàn)有的CAN總線上傳輸一位數(shù)據(jù)所需的時間被稱為位時間(BitTime) ο 一個位時間可以由8-25個時間份額(Time Quantum,TQ)組成。一個位時間同樣可以由四部分組成:同步段(SYNC_SEG),傳播時間段(PR0P_SEG),第一相位緩沖器段(PHASE_SEGl)以及第二相位緩沖器段(PHASE_SEG2),不同部分可以包括不同數(shù)量的TQ,且TQ的數(shù)量可以根據(jù)實際需要進行設(shè)置?,F(xiàn)有技術(shù)中,可以確定關(guān)聯(lián)于CAN總線的采樣點位于第一相位緩沖器段的右側(cè)(如圖1中所示的Sample Point處)。但是,由于每個部分所占用的TQ的數(shù)量不同并且無法事先預(yù)知,因此現(xiàn)有技術(shù)中很難直接檢測得到第一相位緩沖器段的右側(cè),即很難直接確定采樣點(SampIe Point)的位置。
[0042]因此,本發(fā)明的較佳的實施例中,基于現(xiàn)有技術(shù)中存在的上述問題,提供一種確定采樣點位置的方法,適用于CAN總線。該方法中,于傳輸一位數(shù)據(jù)的傳輸序列中依次排列有多個第一傳輸段,關(guān)聯(lián)于每個第一傳輸段的傳輸電平為一第一電平;
[0043]如圖2所示,還包括:
[0044]步驟S100、采用一接入CAN總2的被測節(jié)點通過CAN總線輸出第一測試報文;
[0045]在上述技術(shù)方案的基礎(chǔ)上,進一步的,步驟SlOO中采用一接入CAN總線的測試工具向被測節(jié)點發(fā)送一第二測試報文,被測節(jié)點接收到第二測試報文后,向測試工具反饋第一測試報文;
[0046]步驟S200,預(yù)置有一對應(yīng)一位數(shù)據(jù)的干擾序列,并根據(jù)被測節(jié)點中設(shè)置的一位數(shù)據(jù)中包括的第一傳輸段,確定干擾序列中依次排列的第二傳輸段的數(shù)量,關(guān)聯(lián)于第二傳輸段的傳輸電平為一第二電平;
[0047]上述步驟S200中,采用一干擾工具(其中預(yù)置有干擾序列),將傳輸序列中相應(yīng)的多個第一傳輸段的傳輸電平設(shè)為第一電平。上述干擾工具接入CAN總線,并連接被測節(jié)點;
[0048]在上述技術(shù)方案的基礎(chǔ)上,進一步的,步驟S200中,第一電平為顯性電平,第二電平為隱性電平。
[0049]則本發(fā)明的一個較佳的實施例中,在CAN總線上采用兩種互補的邏輯數(shù)值“顯性”和“隱性” O因此,顯性(Daminant)電平采用邏輯電平“O”表示,而隱性(Recessive)電平采用邏輯電平“I”表示。下文中不再贅述。
[0050]步驟S300、將傳輸序列最右側(cè)對應(yīng)于前N個第二傳輸段的多個第一傳輸段的傳輸電平設(shè)定為第二電平;[0051 ] N為自然數(shù),且N初始為I;
[0052]在上述技術(shù)方案的基礎(chǔ)上,進一步的,步驟S300中每次進行處理所針對的傳輸序列對應(yīng)于同一個第一測試報文,即N次設(shè)定第二電平所針對的傳輸序列均對應(yīng)于同一個第一測試報文。
[0053 ]步驟S400,判斷CAN總線是否輸出錯誤報告:
[0054]若是,則判斷被設(shè)定為第二電平的最左側(cè)的相鄰兩個第二傳輸段的連接部為采樣點的位置,隨后退出;
[0055]若否,則N=N+1,隨后返回步驟S300。
[0056]在上述技術(shù)方案的基礎(chǔ)上,進一步的,步驟S400中錯誤報告包括:測試工具獲取CAN總線輸出的錯誤幀;
[0057]錯誤報告還包括:被測節(jié)點3接收到的用于指示被測節(jié)點無法讀取CAN總線的總線電平的錯誤信息。
[0058]本發(fā)明較佳實施例中,步驟S400中以預(yù)設(shè)次數(shù)重復(fù)執(zhí)行步驟S200至步驟S40