女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>汽車電子>基礎(chǔ)知識(shí)>

讀OBD2故障碼 - 汽車OBD2診斷程序開發(fā)

2011年06月28日 11:49 未知 作者:葉子 用戶評(píng)論(0
讀OBD2故障碼(DTCs Diagnostic Trouble Codes)

? ? 讀故障碼是診斷儀最常用的功能,這里只是簡(jiǎn)單的說明一下,詳細(xì)內(nèi)容請(qǐng)查閱ISO15031-5文本
? ?一般情況下可直接用MODE 03讀取當(dāng)前故障碼,但這里我們

先用MODE 01 PID 01讀取現(xiàn)在有多少個(gè)故障碼存在ECU內(nèi)
? ?? ?
? ?? ? >01 01
? ?? ???41 01 81 07 65 04
? ?? ? >

? ?? ?41 01 前面已說明是對(duì)MODE 01 PID 01的響應(yīng)代碼,
? ?? ?81? ?代表當(dāng)前的故障碼數(shù),這個(gè)10進(jìn)制數(shù)值是129,不是代表有129個(gè)故障碼,
? ?? ?? ?? ?81它的最高位MSB 代表是否點(diǎn)亮故障指燈,低7位代表了故障碼的數(shù)量
? ?? ?? ???16進(jìn)制算法應(yīng)是 0x81 & 0x7F = 0x01 所以是一個(gè)故障碼。也可是10進(jìn)制數(shù)值直接減128
? ?? ?? ?? ?即:129-128=1;
? ?? ?
? ?? ? 所以81代表了,故障燈點(diǎn)亮,有一個(gè)故障碼,81后面的數(shù)據(jù)請(qǐng)參考標(biāo)準(zhǔn)文本,和讀故障碼沒有關(guān)系。




在這個(gè)例子中,TL718只返回了一行數(shù)據(jù),但是如果有另外的控制模塊也附合響應(yīng)條件,有可能返回多行信息。
比喻常見的:發(fā)動(dòng)機(jī)電腦和自動(dòng)波箱控制電腦同時(shí)返回信息,就會(huì)有2行信息,要確認(rèn)是哪一個(gè)電腦返回的是哪一行
信息,必須設(shè)置返回OBD消息保的三字節(jié)頭(AT H1內(nèi)部命令打開),查看消息頭字節(jié)中的第三個(gè)字節(jié)(源地址)確定
是那個(gè)電腦模塊返回的消息包。這里先不討論,在另外章節(jié)來詳細(xì)討論,多消息包數(shù)據(jù)。


現(xiàn)在已經(jīng)讀了有多少個(gè)故障碼,下一步讀實(shí)際的故障碼是什么。

? ?? ?? ? 用OBD2診斷模式MODE 03讀取:只要簡(jiǎn)單地向TL718發(fā)送03
? ?? ?? ???
? ?? ???>03

? ?? ?? ?可能的返回信息數(shù)據(jù)如下:
? ?? ?? ?43 01 33 00 00 00 00
? ?? ?? ?
? ?? ???注:如果故障碼數(shù)量多于3或多個(gè)電腦模塊,會(huì)返回多行消息包,
? ?? ?? ???
? ???43是對(duì)MODE 03 請(qǐng)求的響應(yīng)(03+40),另外的6個(gè)字節(jié)是故障代碼,2個(gè)字節(jié)代表一個(gè)故障碼。
? ???這里有3個(gè)代表故障碼的數(shù)據(jù):0133 0000 0000,“0000”是ISO15031在這個(gè)模式下返回的填充數(shù)據(jù)
? ???不是實(shí)際的故障碼。
? ???
? ? 故障碼含義:ISO定義:二字節(jié)故障碼(例0133)的第一個(gè)數(shù)如下表所示??現(xiàn)在來分析上面的故障碼 0133:






? ???第一個(gè)數(shù)字“0”按上表用“P0”代替。0133就代表是故障碼P0133。
同樣如果收到的是D016則,“D”用U1代替,則故障代碼就時(shí)U1016;
如果收到是1131則代換后,故障代碼是P1131。

???注:ISO15765 CAN故障碼消息包和J11850、ISO9141 ISO14230返回的信息有稍不同,
? ?? ? 編寫程序時(shí)要注意,ISO 15765 返回的信息第二個(gè)數(shù)據(jù)代表的是電腦模塊有多少個(gè)故障碼(DTCs),
? ?? ? 詳細(xì)看ISO15031-5內(nèi)定義。



清除故障代碼

? ? OBD2診斷模式MODE04 是復(fù)位ECU的一個(gè)功能,同時(shí)也清觸故障代碼;執(zhí)行后ECU將:

? ?? ?? ???1、復(fù)位故障代碼的數(shù)量為0
? ?? ?? ???2、刪除所有的故障代碼
? ?? ?? ???3、刪除存儲(chǔ)的凍結(jié)楨數(shù)據(jù)
? ?? ?? ???4、刪除所有O2傳感器聽測(cè)試數(shù)據(jù)
? ?? ?? ???5、刪除模式MODE06 和 MODE 07的數(shù)據(jù)信息

? ???復(fù)位后你的汽車由于復(fù)位了一些數(shù)據(jù),短時(shí)間內(nèi)可能會(huì)引起工作異常。為了防止不小心復(fù)位ECU,
? ? ISO15031-5要求所有的掃描工具(診斷儀)在發(fā)送MODE 04指令前,必須加一個(gè)“確認(rèn)信息”。
? ? TL718不監(jiān)視發(fā)送信息的內(nèi)容是否是復(fù)位指令。

? ?? ???>04
? ?? ?? ?44
? ?? ???>
? ???發(fā)送04指令后,車輛ECU接收成攻,將立即復(fù)位以上內(nèi)容,
? ???并發(fā)回一個(gè)MODE 04的響應(yīng)信息44(04+40)。

一般的流程:




結(jié)束語(yǔ)



    • ISO14230 ISO9141要求通訊前的初始化過程、及連接后要求有一個(gè)周期性的握手信號(hào),這些TL718都已經(jīng)自動(dòng)完成,OBD2標(biāo)準(zhǔn)的診斷程序都不用更改。怎樣更改這些參數(shù):
    • 看完這些內(nèi)容,就可開始你的OBD2開發(fā)。實(shí)際上廠商專用的診斷功能程序差不多也是這么簡(jiǎn)單。為什么叫專用,是因?yàn)樗鼪]有公開應(yīng)用層的協(xié)議。開發(fā)時(shí)比我們OBD2開發(fā)多少一個(gè)過程。就是怎樣用TL718從專用的設(shè)備中讀得專用的診斷指令(也就是應(yīng)用層協(xié)議)。在開發(fā)專用功能的診斷儀中討論這個(gè)問題。
    • OBD2其他的診斷模式這里不再說明,診斷方法都是一樣的。詳細(xì)內(nèi)容查看ISO15031-5或SAE J1979。
    • 多試多做你會(huì)發(fā)現(xiàn)開發(fā)診斷程序原來如此簡(jiǎn)單。

    更多有關(guān)OBD精彩內(nèi)容請(qǐng)點(diǎn)擊:http://www.asorrir.com/zhuanti/obd.html;

    ?

非常好我支持^.^

(89) 50%

不好我反對(duì)

(89) 50%

( 發(fā)表人:zhangjin )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?