<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 關(guān)于CAN總線(xiàn)汽車(chē)儀表的研究

關(guān)于CAN總線(xiàn)汽車(chē)儀表的研究

作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò ) 收藏

1.jpg

儀表采用VID6606驅動(dòng)器驅動(dòng)步進(jìn)電機。每片VID6606可同時(shí)驅動(dòng)4路步進(jìn)電機。在其頻率控制端輸入脈沖序列F(SCX),即可控制輸出端使步進(jìn)電機的輸出軸以微步轉動(dòng),每個(gè)微步電機輸出軸轉動(dòng)1/12(°),最大角速度可達600(°)/s。該電機驅動(dòng)器具有以下特點(diǎn):硬件微步驅動(dòng)、簡(jiǎn)單易用,電機只需速度F(sex)和方向(CW/CCW)2個(gè)控制端、所有輸入引腳都有干擾過(guò)濾器、寬工作電壓、低電磁干擾輻射。儀表板指針采用VID-29電機驅動(dòng),電機內置減速比180/1的齒輪系,能夠將數字信號直接準確地轉為模擬的顯示輸出。該電機具有很高的顯示精度,其步距角最小可達到1/2(°)。圖 3所示為VID6606驅動(dòng)儀表電路。

該儀表利用LCD顯示時(shí)間、燃油消耗量以及產(chǎn)生故障時(shí)故障名稱(chēng),處理器發(fā)送的信號先經(jīng)74HC245功率放大后,然后送至液晶屏F2000LCD顯示。LCD電路如圖4所示。

2.3 系統軟件設計

系統軟件設計分為主程序、CAN通信、數據采集處理和數據顯示等4個(gè)模塊。主程序模塊通過(guò)調用各個(gè)子模塊程序來(lái)處理數據處理:CAN通信模塊負責發(fā)送和接收數據;數據采集及處理模塊完成對各種類(lèi)型數據的采集以及計算;數據顯示模塊將車(chē)速、油壓以及信號燈等信息顯示在儀表上。

2.jpg

圖5為系統主程序流程,該系統主程序流程分為:1)系統初始化。系統初始化主要包括初始化系統時(shí)鐘、CAN節點(diǎn)、LCD液晶屏、步進(jìn)電機等,并使能CAN 中斷,設置CAN屏蔽碼和驗收碼。CAN節點(diǎn)初始化主要是初始化CAN控制器并中斷CAN控制器:2)讀取傳感器以及CAN總線(xiàn)數據,并驅動(dòng)指針以及 LCD等顯示,同時(shí)等待CAN接收中斷。3)CAN接收中斷產(chǎn)生,進(jìn)入接收中斷子程序讀取數據。判斷數據是否符合數據接收條件,如果符合,則接收數據。此過(guò)程逐位比較接收到的29位標識符與驗收碼、屏蔽碼,只有標識符相應位與驗收碼相應位相同,系統才開(kāi)始接收數據。4)處理器將接收的報文進(jìn)行解析,提取需要的數據并進(jìn)行處理。處理器對傳感器傳來(lái)的數據和CAN總線(xiàn)讀取的數據進(jìn)行處理計算,得到相應的指針驅動(dòng)參數,計算出指針轉角,并根據初始化的步進(jìn)電機的參數計算出指針轉動(dòng)速度。指針轉動(dòng)速度與相應的參數變化速度成正比。同時(shí)計算出車(chē)輛行駛里程并累加到總路程上。5)處理器將包含車(chē)輛工況的一組脈沖序列發(fā)送至步進(jìn)電機驅動(dòng)器,驅動(dòng)器驅動(dòng)步進(jìn)電機以微步方式轉動(dòng),指示出相應的發(fā)動(dòng)機轉速、車(chē)速、水溫以及油壓等;處理器將包含車(chē)輛總路程等信息的數據發(fā)送至 LCD控制器,控制器控制LCD顯示相應的總路程等:處理器改變相應的I/O引腳狀態(tài)直接點(diǎn)亮/關(guān)閉相應的指示燈。

2.4 故障顯示

該儀表能夠從CAN總線(xiàn)接收故障代碼并對故障代碼進(jìn)行解析,與預先寫(xiě)入的故障碼比對后找到對應的故障信息并顯示在LCD屏幕上。每一類(lèi)型的數據都有特定的數據幀ID,系統根據幀ID判斷故障產(chǎn)生的位置。如果收到的是單幀故障,則系統來(lái)提取總字節數和總包數;如果收到的是多幀故障,系統則連續提取故障診斷報文至特定的字節,然后根據故障代碼查找故障類(lèi)型。

3 結束語(yǔ)

在研究CAN總線(xiàn)和SAE J1939協(xié)議的基礎上,設計CAN總線(xiàn)汽車(chē)儀表。該設計充分利用LM3S2948以及VID6606的功能,較大程度上降低了系統外圍電路的設計以及成本。多次實(shí)車(chē)試驗結果表明,相對于常規儀表,該CAN總線(xiàn)儀表具有以下優(yōu)點(diǎn):抗干擾能力強,傳輸速率高,能夠保證數據有效、快速、穩定地傳輸;減少車(chē)身布線(xiàn),硬件方案軟件化實(shí)現,簡(jiǎn)化了設計,降低了成本;及時(shí)、直觀(guān)地查看車(chē)輛故障;CAN總線(xiàn)將整車(chē)構成一個(gè)網(wǎng)絡(luò )系統,能夠提升系統的靈活性,方便地增加設備,擴大了可開(kāi)發(fā)的空間。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>