<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 汽車電子 > 設(shè)計(jì)應(yīng)用 > 基于車載CAN總線故障診斷儀設(shè)計(jì)方案

          基于車載CAN總線故障診斷儀設(shè)計(jì)方案

          作者: 時(shí)間:2010-08-10 來源:網(wǎng)絡(luò) 收藏


          3.1 發(fā)射端軟件設(shè)計(jì)

          發(fā)射端流程如圖5所示。軟件設(shè)計(jì)主要實(shí)現(xiàn)兩項(xiàng)功能:第一是實(shí)現(xiàn)上數(shù)據(jù)的采集;第二是實(shí)現(xiàn)將采集后的數(shù)據(jù)通過射頻進(jìn)行發(fā)射。

          本文引用地址:http://www.ex-cimer.com/article/197645.htm





          上電后,首先對(duì)模塊進(jìn)行初始化。然后初始化nRF2101,并與接收端建立連接。當(dāng)發(fā)送完數(shù)據(jù)后沒有收到ACK信號(hào)時(shí),就跳頻;然后通知發(fā)送端準(zhǔn)備接收重發(fā)的CAN數(shù)據(jù),直到接收到ACK信號(hào)。

          為了防止空中干擾,采用了自動(dòng)跳頻的空中協(xié)議,即無論是否接收到ACK信號(hào)都進(jìn)行跳頻,因此可以防止某個(gè)頻段的強(qiáng)干擾,進(jìn)而降低誤碼率。

          3.2 接收端軟件設(shè)計(jì)

          接收端軟件流程如圖6所示。軟件設(shè)計(jì)主要實(shí)現(xiàn)兩項(xiàng)功能:第一是實(shí)現(xiàn)枚舉;第二是實(shí)現(xiàn)將接收到的數(shù)據(jù)通過USB上傳到PC。上電后,首先完成對(duì)TMU3100 的配置,并與PC機(jī)枚舉;枚舉成功后就對(duì)nRF2401進(jìn)行配置,并與發(fā)射端建立連接。當(dāng)接收到數(shù)據(jù)包后,首先判斷是CAN數(shù)據(jù)還是重傳數(shù)據(jù)命令。如果是 CAN數(shù)據(jù)包,則向發(fā)射端返回ACK信號(hào)并跳頻,然后將接收到的數(shù)據(jù)通過USB傳至PC;如果是重傳命令,則先跳頻,然后置重傳標(biāo)志,表示下個(gè)數(shù)據(jù)包是重傳的數(shù)據(jù)包。

          TMU3100被配置為標(biāo)準(zhǔn)HID類,這樣就不用為設(shè)備開發(fā)驅(qū)動(dòng)程序,而是使用Windows提供的標(biāo)準(zhǔn)HID類驅(qū)動(dòng)程序。

          3.3 PC端軟件設(shè)計(jì)

          PC端軟件由應(yīng)用程序和設(shè)備驅(qū)動(dòng)程序組成。Windows為標(biāo)準(zhǔn)USB沒備提供了完善的內(nèi)置驅(qū)動(dòng),本系統(tǒng)采用Windows自帶的HID類驅(qū)動(dòng),只要將 TMU3100配置為HID類,即可完成與PC機(jī)的通信。這省去了開發(fā)設(shè)備的驅(qū)動(dòng)程序,極大地簡(jiǎn)化了上位機(jī)軟件的開發(fā)。

          上位機(jī)的應(yīng)用程序首要實(shí)現(xiàn)的功能是,要實(shí)現(xiàn)對(duì)TMU3100端點(diǎn)的讀寫,用VC++語言編寫,可以把USB設(shè)備當(dāng)成文件來操作。用CreateFiile ()函數(shù)獲得USB句柄,為讀訪問或?qū)懺L問打開指定端點(diǎn)。用DeviceControl()來進(jìn)行控制操作,用ReadFile()從指定端點(diǎn)讀取數(shù)據(jù),用WriteFile()向端點(diǎn)寫入數(shù)據(jù)。

          當(dāng)CAN上的數(shù)據(jù)被采集到PC后,就可以進(jìn)行故障診斷了。故障診斷代碼是依照KWP2000應(yīng)用層規(guī)定的故障代碼設(shè)計(jì)的,是目前國(guó)際上通用的,現(xiàn)將其應(yīng)用于CAN的應(yīng)用層,將來可以用全新的CAN上層協(xié)議取代。故障診斷代碼定義在SSF14230中。SAE J1979中,由車輛制造商或系統(tǒng)供應(yīng)者定義的服務(wù)標(biāo)志符數(shù)值的不同范圍,如表1所列。

          此表中以十六進(jìn)制數(shù)表示的服務(wù)標(biāo)志符,同數(shù)據(jù)鏈路層中數(shù)據(jù)字節(jié)內(nèi)的SID服務(wù)識(shí)別字節(jié)對(duì)應(yīng)。不同的SID值代表不同的服務(wù)請(qǐng)求,故障診斷程序必須符合此應(yīng)用層標(biāo)準(zhǔn),才能識(shí)別不同的十六進(jìn)制代碼所代表的不同的故障信息。



          4 結(jié)論

          本文設(shè)計(jì)的2.4G無線CAN,由于采用了自動(dòng)跳頻的空中協(xié)議,所以誤碼率幾乎接近零,在14 m內(nèi)仍能進(jìn)行可靠的工作。系統(tǒng)使用國(guó)際上通用的診斷代碼,使程序具有通用性和實(shí)用性;以PC作為硬件平臺(tái),無需專門開發(fā)硬件平臺(tái),可大大降低開發(fā)成本并且易于實(shí)現(xiàn)設(shè)備的升級(jí)和維護(hù);使用USB接口和2.4G無線通信,具有即插即用、不受空間限制、數(shù)據(jù)傳輸實(shí)時(shí)性強(qiáng)的特點(diǎn)。


          上一頁 1 2 下一頁

          關(guān)鍵詞: CAN 車載 總線 故障診斷儀

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();