新聞中心

EEPW首頁 > 汽車電子 > 設(shè)計應(yīng)用 > 基于CAN總線的溫度檢測節(jié)點設(shè)計

基于CAN總線的溫度檢測節(jié)點設(shè)計

作者: 時間:2010-01-11 來源:網(wǎng)絡(luò) 收藏


外圍設(shè)備電路為PIC16F87x最小系統(tǒng)運行所需要的必要外設(shè)。PIC16F87x通過SPI與MCP2510進行數(shù)據(jù)交換,完成數(shù)據(jù)包的發(fā)送和接收,其接口電路如圖3所示。

圖3 PIC16F877與MCP2510的接口電路


其中,SCK為SPI時鐘,PIC16F87x模塊的SPI接口接MCP2510的SI、SO、SCK,RA4與RA1分別控制MCP2510的芯片復(fù)位和片選。INT接受MCP2510的中斷請求。

系統(tǒng)軟件設(shè)計

1系統(tǒng)軟件流程

為了避免因干擾而產(chǎn)生誤動作,軟件采取了一些冗余和容錯處理,在A/D模塊處理采樣數(shù)據(jù)時,采用了軟件濾波措施,以濾除電路中可能會出現(xiàn)的尖峰干擾。

方法為連續(xù)采樣五次,通過比較判斷,去掉其中的最大值和最小值, 其余三次的值求和后取平均值,把平均值作為CPU用來劃分溫度范圍的有效數(shù)據(jù)。數(shù)據(jù)包的解析和封裝都遵循的應(yīng)用層協(xié)議,主程序流程如圖4所示。

圖4 主程序流程



評論


相關(guān)推薦

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

關(guān)閉