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