TSMaster提供了診斷控制臺基礎功能振劳,用戶可以根據(jù)需求配置自己的發(fā)送和應答請求。按照如下步驟操作即可。
一乎串、傳輸層參數(shù):
其中,各個參數(shù)解釋如下:
> Bus?Type: 診斷傳輸層類型速警,目前已經(jīng)支持CAN/CANFD/LIN叹誉,接下來支持以太網(wǎng)和Flexray等。通過下拉列表可以選擇闷旧,如下圖所示:
>?Channel:診斷模塊用到的邏輯通道长豁。TSMaster支持多個診斷模塊同時在線工作,這里用于選擇當前診斷模塊使用系統(tǒng)的哪一個邏輯通道忙灼。通過下拉列表進行選擇匠襟,如下圖所示:
>?Request?ID/Response ID/Function ID:設置診斷模塊PC工具端的診斷請求/應答/功能幀的ID。
>?Request?ID?Type/Response ID Type?/Function ID Type:設置診斷模塊PC工具端的診斷請求/應答/功能幀的ID類型该园,是標準幀(11位)還是擴展幀(29位)酸舍,如下圖所示:
>?Filled?Byte:傳輸過程中,實際有效字節(jié)不足一個CAN報文數(shù)據(jù)端的時候里初,剩余數(shù)據(jù)段的填充字節(jié)父腕。比如一幀CAN報文8個字節(jié),如果有效傳輸字節(jié)是【0x02青瀑,0x10璧亮,0x02】,填充字節(jié)是0xAA,則實際的報文字節(jié)是【0x02斥难,0x10枝嘶,0x02,0xAA哑诊,0xAA群扶,0xAA,0xAA,0xAA】竞阐。
>?STMin:最短接收時間間隔缴饭。TSMaster診斷模塊作為接收端,在接收連續(xù)幀報文的時候能夠支持的診斷幀之間的最短時間間隔骆莹,這個參數(shù)是回復給診斷客戶端的颗搂。設置為0,表示支持以最短的時間間隔接收幕垦。
>?BlockSize:接收Block的大小丢氢。TSMaster診斷模塊作為接收端,在接收連續(xù)幀報文的時候一次能夠接收的數(shù)據(jù)塊的大小先改。這個參數(shù)是回復給診斷客戶端的疚察。設置為0,表示一次性能夠接收任意大小的數(shù)據(jù)塊仇奶。
>?FD?Max?DLC:當傳輸層設置為CANFD的時候貌嫡。此時,傳輸層單幀的最大傳輸字節(jié)數(shù)量是64字節(jié)(DLC=15)该溯,但是這個參數(shù)是可以調(diào)節(jié)的衅枫,調(diào)節(jié)范圍如下所示:
>?Max?Length:該參數(shù)對于普通CAN/LIN是無意義的。多幀傳輸?shù)臅r候朗伶。當DLC長度= 8字節(jié)的時候弦撩,首幀(First?Frame)采用第0字節(jié)低四位+第一個字節(jié)的8位,共12Bit表示一次傳輸?shù)陌拇笮÷劢裕簿褪亲疃?095個字節(jié)益楼,如下圖所示:
但是FDCAN中,設置DLC長度>8字節(jié)的時候点晴,可以采用更多的Bits來傳輸信息感凤。因此,F(xiàn)DCAN的傳輸層支持采用第2,3,4,5四個字節(jié)共32bit來傳輸一個數(shù)據(jù)Block的長度粒督。也就是說FDCAN的傳輸層一次支持傳輸最多4個G的數(shù)據(jù)陪竿。但是具體支持多少,讓用戶可以配置屠橄。
注釋:第一個字節(jié)的高四位= 1族跛,表示該幀是首幀(First?Frame),無論是FDCAN還是Class?CAN的傳輸層都是如此锐墙。
比如礁哄,如下圖所示配置位4095個字節(jié),則跟普通傳輸層一樣溪北。如果配置為大于4095例证,則要使用FD幀擴容的傳輸層。
二蚌铜、服務層參數(shù):
????服務層參數(shù)主要包含S3,P2時間參數(shù)轧葛,以及加載SeedKey的dll。如下圖所示:
>?S3參數(shù):包括S3?ServiceTime和S3?Client?Time。
S3?Service?Time:表示該ECU從Default會話被切換到其他會話過后,經(jīng)過多場時間會自動切換回默認會話的超時時間菲茬。
S3 Client?Time:表示作為診斷Tester端,發(fā)送TesterPresent幀的時間間隔颖变。
上述兩個參數(shù)的示意圖生均,可以點開Detail按鈕听想,查看圖示說明腥刹,如下圖所示:
>?P2參數(shù):包括P2?Timeout和P2?Extended參數(shù)。
P2 Timeout: 表示ECU收到診斷請求幀過后汉买,最短回復的時間間隔衔峰。對于診斷工具端,該參數(shù)可以作為發(fā)送請求過后蛙粘,等待回復的超時判斷參數(shù)垫卤。比如診斷工具發(fā)送了一個診斷報文,P2Timeout時間段內(nèi)都沒有收到回復出牧,則認為請求失敗穴肘,超時退出。
P2?Extended:當診斷工具發(fā)出診斷報文過后舔痕,被測ECU來不及在P2?Timeout時間段內(nèi)做出應答评抚,則回復一幀3F?XX?78報文,告訴診斷工具端自己來不及響應伯复,需要延長等待時間再回復慨代。ECU發(fā)送了延遲等待報文后,則把等待時間參數(shù)切換為P2Extended啸如。診斷工具端的超時判斷參數(shù)在收到延遲等待報文后侍匙,需要切換到P2Extended。
上述兩個參數(shù)示意圖如下所示:
>?使能Tester?Present命令:
TSMaster診斷模塊中叮雳,可以選擇配置并使能TSMaster?Present命令想暗,如下圖所示:
當使能了該命令過后,在模塊的最上方會出現(xiàn)啟動Tester?Present命令的開關帘不。打開Tester?Presnet江滨,則按照設定的S3ClientTime時間間隔發(fā)送該報文。
Tester?Present的發(fā)送字節(jié)是可選的厌均。支持三種類型:
【Default?Request】:也就是最常用的0x3E?0x80
【From?Basic Config】:從Basic?Config中選擇配置好的3E命令
【Manual?Definition】:用于自定義的字節(jié)
>?加載Seed&Key?DLL
在診斷過程中唬滑,會設計到安全訪問的問題,也就是所說的Seed&Key。TSMaster診斷模塊支持通過dll載入Seed&Key算法晶密,該算法dll跟主流工具的計算接口兼容擒悬,接口定義如下圖所示:
DLL加載界面如下圖所示:
>?【1】?[endif]加載DLL
>?【2】?[endif]刪除DLL
>?【3】?[endif]DLL校驗器,通過此按鈕稻艰,用戶可以判斷自己加載的dll接口是否正確懂牧,算法是否符合設計要求。如下圖所示:
如上圖所示界面尊勿,用戶選擇Seed的Level過后僧凤,輸入Demo?Seed值,點擊GenKey進行判斷元扔。如果該DLL接口跟模板定義接口統(tǒng)一躯保,則會輸出提示信息:Generate?Key?Success,然后用戶根據(jù)Key值跟目標值對比澎语,進一步確認DLL中的算法是否符合設計要求途事。
>?【4】?[endif]打開TSMaster安裝目錄下Seed&Key接口工程所在的路徑。用戶可以拷貝該工程添加自己的Seed&Key算法擅羞。
三尸变、TesterPresent
在Diagnostic?Tp參數(shù)配置中使能TesterPresenter,TSMaster會提供一個全局的開關减俏。用戶通過該開關召烂,可以直接打開和關閉TesterPresent命令,如下圖所示:
除了該全局開關娃承,如果用戶想更加靈活的控制TesterPresent命令的打開和關閉奏夫,在后續(xù)的自動化流程步驟中,TSMaster也提供了基于步驟配置該命令的方式草慧,讓用戶選擇在需要的步驟打開和關閉TesterPresent命令桶蛔。