新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > CAN總線局部網(wǎng)絡(luò)管理機(jī)制及實(shí)現(xiàn)

CAN總線局部網(wǎng)絡(luò)管理機(jī)制及實(shí)現(xiàn)

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

硬件實(shí)現(xiàn)

中報(bào)文是以廣播形式發(fā)送的,當(dāng)節(jié)點(diǎn)處于休眠狀態(tài)時(shí),大部分收發(fā)器檢測(cè)到總線中的報(bào)文時(shí)會(huì)喚醒節(jié)點(diǎn)。這就會(huì)使的局部網(wǎng)絡(luò)功能失效。

為實(shí)現(xiàn)部分節(jié)點(diǎn)喚醒的功能,需要特殊的收發(fā)器支持。特殊收發(fā)器具有報(bào)文濾波功能,只在收到特定報(bào)文之后才能被喚醒。NXP已經(jīng)率先推出支持局部的收發(fā)器TJA1145和UJA1168。TJA1145是一種高速CAN收發(fā)器,而UJA1168是集成5V/100mA微處理器供電的CAN系統(tǒng)基礎(chǔ)芯片。

除了傳統(tǒng)收發(fā)器的TX、RX引腳,NXP的兩款支持PN的收發(fā)器均通過(guò)SPI與CAN控制器相連。通過(guò)SPI,MCU可控制CAN收發(fā)器的模式轉(zhuǎn)換以及設(shè)置收發(fā)器的報(bào)文濾波,實(shí)現(xiàn)特定報(bào)文喚醒的功能。連接方式參見(jiàn)圖2。

圖2 支持PN的收發(fā)器連接實(shí)例圖

軟件實(shí)現(xiàn)

除了需要支持硬件濾波的收發(fā)器外,在軟件部分,還需要遵循一套支持PN的協(xié)議來(lái)配合應(yīng)用程序?qū)崿F(xiàn)分組協(xié)同睡眠和喚醒。AUTOSAR組織已經(jīng)推出支持PN的網(wǎng)絡(luò)管理協(xié)議AUTOSARR3.2.1,該協(xié)議主要通過(guò)特定的網(wǎng)絡(luò)管理報(bào)文來(lái)實(shí)現(xiàn)分組睡眠。

AUTOSAR 3.2.1中定義的CAN網(wǎng)絡(luò)管理報(bào)文格式如圖3所示。Byte 0表示源節(jié)點(diǎn)地址,Byte 1為固定格式ControlBit Vector.不同的bit有特殊的含義,如圖3所示,該字節(jié)的bit 6(Partial Network Bit)就表明該報(bào)文是否與PN相關(guān)。NM報(bào)文中其余字節(jié)為User data,可根據(jù)用戶需求自定義。OEM可根據(jù)EE功能定義,指定User data中的不同的位來(lái)表示不同的PN組是否需要保持喚醒。例如,將Byte 2的bit 0設(shè)定為PN1組的喚醒指示位時(shí),如節(jié)點(diǎn)欲保持PN1組喚醒,則需將其置為1;如不需要保持PN1組喚醒,則將其位置為0或停發(fā)網(wǎng)絡(luò)管理報(bào)文。當(dāng)網(wǎng)絡(luò)上同屬于PN1的所有節(jié)點(diǎn)都沒(méi)有保持喚醒的要求時(shí),PN1組按照睡眠邏輯協(xié)同進(jìn)入睡眠。

圖3 默認(rèn)網(wǎng)絡(luò)管理報(bào)文格式定義


圖4 Control Bit Vector格式定義

每個(gè)節(jié)點(diǎn)只關(guān)心自己所處的PN組的狀態(tài),在節(jié)點(diǎn)發(fā)送的網(wǎng)絡(luò)管理報(bào)文加入所屬PN的信息(User data),就可以實(shí)現(xiàn)不同PN分組休眠和喚醒。

結(jié)論

本文介紹了局部網(wǎng)絡(luò)(PN)管理的概念及優(yōu)勢(shì),并闡述了其在上的硬件及軟件實(shí)現(xiàn)。可以看到,隨著汽車EE功能越來(lái)越復(fù)雜,局部網(wǎng)絡(luò)管理的分組睡眠和喚醒的機(jī)制是一種有效的節(jié)省電量的方法。


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

評(píng)論


相關(guān)推薦

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

關(guān)閉