新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Infineon單片機(jī)的CAN網(wǎng)關(guān)研究

基于Infineon單片機(jī)的CAN網(wǎng)關(guān)研究

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

Visual C++提供了一種好用的ActiveX控件MSComm(Microsoft Communications Control)來(lái)支持應(yīng)用程序?qū)Υ诘脑L問(wèn),在應(yīng)用程序中插入MSComm控件后,可以方便地通過(guò)PC機(jī)串口實(shí)現(xiàn)數(shù)據(jù)收發(fā)。
在PC端配置軟件里配置串口、通道使能、路由、驗(yàn)收過(guò)濾器等內(nèi)容,然后點(diǎn)擊“下載到網(wǎng)關(guān)設(shè)備”按鈕,完成配置工作。
3.2.2 Multi模塊初始化
在網(wǎng)關(guān)設(shè)備接收到來(lái)自串口的配置數(shù)據(jù)后,解析該配置數(shù)據(jù),隨后啟動(dòng)Multi模塊初始化,主要包括節(jié)點(diǎn)初始化和信息對(duì)象初始化。
CAN節(jié)點(diǎn)初始化的主要任務(wù)有:將對(duì)應(yīng)引腳定義為CAN輸入/輸出引腳、定義通信波特率,根據(jù)接收到的配置信息在信息對(duì)象列表內(nèi)增加信息對(duì)象。
信息對(duì)象初始化的主要任務(wù)有:配置信息對(duì)象屬性、ID、幀類型、優(yōu)先級(jí)、定義數(shù)據(jù)長(zhǎng)度、數(shù)據(jù)傳輸方向,同時(shí)需要配置屏蔽寄存器,以決定信息對(duì)象的濾波方案。
在初始化時(shí),需要注意對(duì)節(jié)點(diǎn)控制寄存器NCR的CCE和INIT位域的置位和復(fù)位設(shè)置,以及信息對(duì)象控制寄存器MOCTRn的MSGVAL位域的置位和復(fù)位設(shè)置。
3.3 網(wǎng)關(guān)數(shù)據(jù)交換過(guò)程
接收數(shù)據(jù)幀的網(wǎng)關(guān)方稱為“源”,通過(guò)網(wǎng)關(guān)發(fā)送數(shù)據(jù)幀的網(wǎng)關(guān)方,稱為“目標(biāo)”。網(wǎng)關(guān)數(shù)據(jù)交換過(guò)程如圖4所示。


  首先經(jīng)過(guò)接收過(guò)濾后,目標(biāo)信息對(duì)象由源信息對(duì)象MOFGPRn寄存器內(nèi)CUR位域?qū)ぶ贰T葱畔?duì)象MOFCRn寄存器的位域IDC、DLCC、DATC分別控制是否復(fù)制所接收數(shù)據(jù)幀的ID、數(shù)據(jù)長(zhǎng)度、數(shù)據(jù)字節(jié)到目標(biāo)信息對(duì)象中,位域GDFS決定在完成數(shù)據(jù)復(fù)制過(guò)程之后,是否置位目標(biāo)信息對(duì)象的發(fā)送請(qǐng)求標(biāo)志。到達(dá)源節(jié)點(diǎn)的匹配數(shù)據(jù)幀,被自動(dòng)復(fù)制到目標(biāo)信息對(duì)象中。在復(fù)制數(shù)據(jù)幀之后,目標(biāo)信息對(duì)象的TXRQ、NEWDAT、RXPND被置位,網(wǎng)關(guān)源方接收的數(shù)據(jù)幀自動(dòng)在目標(biāo)方上發(fā)送,完成網(wǎng)關(guān)數(shù)據(jù)交換過(guò)程。
3.4 CAN網(wǎng)關(guān)功能測(cè)試
  德國(guó)IXXAT公司的USB-to-CAN compact是一種經(jīng)濟(jì)型智能接口,是標(biāo)準(zhǔn)的USB-CAN接口板卡。配合CanAnalyser分析軟件便成為一種高效、便捷、靈活的CAN應(yīng)用領(lǐng)域分析和開(kāi)發(fā)工具。
本CAN網(wǎng)關(guān)設(shè)備應(yīng)用CANopen協(xié)議的某監(jiān)控系統(tǒng)。經(jīng)測(cè)試,該網(wǎng)關(guān)設(shè)備可及時(shí)轉(zhuǎn)發(fā)CANopen協(xié)議的SDO、PDO、NMT、Heartbeat消息等報(bào)文,網(wǎng)關(guān)通信狀況運(yùn)行良好,設(shè)備符合CAN規(guī)范2.0A(11位CAN標(biāo)識(shí)符)和2.0B(29位CAN標(biāo)識(shí)符),可用于各種不同的高層CAN協(xié)議:CANOpen、SDS、J1939、DeviceNet或其他定制的協(xié)議。
與其他類似網(wǎng)關(guān)設(shè)計(jì)不同[6],在網(wǎng)關(guān)某一通道接收CAN信息之后,并沒(méi)有產(chǎn)生MCU中斷,無(wú)需MCU做出路由判斷和轉(zhuǎn)發(fā)處理。整個(gè)接收和轉(zhuǎn)發(fā)過(guò)程中,延時(shí)較短,提高了網(wǎng)關(guān)運(yùn)行速度和轉(zhuǎn)發(fā)速率。
 本設(shè)計(jì)采用 XC2000系列,可實(shí)現(xiàn)多個(gè)CAN網(wǎng)絡(luò)的連接。該網(wǎng)關(guān)具有4個(gè)通信端口,可迅速增加節(jié)點(diǎn)數(shù)目。因此在提供自由的布線方式的同時(shí),也解除了系統(tǒng)總線上CAN收發(fā)器最大節(jié)點(diǎn)數(shù)驅(qū)動(dòng)限制。結(jié)合PC端網(wǎng)關(guān)配置軟件的使用,可以快速配置相應(yīng)的CAN路由功能和信息過(guò)濾器。每個(gè)端口還具備檢測(cè)總線活動(dòng)功能及總線故障指示燈,方便觀察CAN總線網(wǎng)絡(luò)工作狀態(tài)。

西門(mén)子plc相關(guān)文章:西門(mén)子plc視頻教程


單片機(jī)相關(guān)文章:單片機(jī)教程


單片機(jī)相關(guān)文章:單片機(jī)視頻教程


單片機(jī)相關(guān)文章:單片機(jī)工作原理


交換機(jī)相關(guān)文章:交換機(jī)工作原理


隔離器相關(guān)文章:隔離器原理

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

評(píng)論


相關(guān)推薦

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

關(guān)閉