GMSL SerDes在雙汽車電子控制單元(ECU)中的應(yīng)用(2)

2012年04月09日 10:20 來源:電子發(fā)燒友網(wǎng) 作者:灰色天空 我要評論(0)

雙µC應(yīng)用中的沖突問題

  圖1所示配置中,每個µC都可以按照GMSL UART協(xié)議與MAX9259串行器、MAX9260解串器或其它µC通信。GMSL不提供防沖突措施,用戶需要自行提供沖突處理措施。

  獨立組網(wǎng)

  防沖突最簡單的方法是讓每個µC將其附屬的串行器/解串器的FWDCCEN和REVCCEN位置0 (0x04 D[1:0])。這種方案禁用正向和反向控制通道的接收器、發(fā)送器,而且有效地將控制網(wǎng)絡(luò)分成兩個獨立網(wǎng)絡(luò)(圖4)。任何通過串行鏈路的通信首先需要每一側(cè)的µC重新使能相應(yīng)鏈路端的通信。這種設(shè)置在“常通”應(yīng)用中非常有效,其關(guān)鍵鏈路特定寄存器的設(shè)置不會從初始狀態(tài)改變。

  

圖4. 獨立控制網(wǎng)絡(luò)避免了沖突的可能性

 

  圖4. 獨立控制網(wǎng)絡(luò)避免了沖突的可能性

  軟件沖突處理

  在那些兩端串行鏈路間必須通信的應(yīng)用中,用戶可以通過更高層的協(xié)議避免沖突(圖5)。以下例子中,每個µC都會等待ACK幀來判定其指令是否成功。發(fā)生沖突時,串行器/解串器不會發(fā)出ACK幀。接收ACK幀失敗后,在重新發(fā)送指令前,µC會根據(jù)它們的器件地址等待一段時間。由于此設(shè)計中,微處理器有不同的器件地址,在重試通信時不會出現(xiàn)沖突。

  

圖5. 軟件處理沖突的示例

 

  圖5. 軟件處理沖突的示例

  單/雙µC應(yīng)用

  某些應(yīng)用不要求兩個µC始終保持工作。工作時,如果任一端的CDS輸入改變了狀態(tài),相應(yīng)器件將按照MAX9259數(shù)據(jù)手冊中介紹的鏈路啟動步驟恢復(fù)工作。根據(jù)需要,在單µC和雙µC工作中切換,輪流使能GMSL會占用更少資源??梢躁P(guān)斷不用的µC以降低功耗,有助于延長電池壽命。

  遠(yuǎn)端顯示示例(解串器)

  在下面應(yīng)用中,鏈路的解串器側(cè)是一個配置用于遙控電源開/關(guān)的顯示面板。板子關(guān)斷輸入和單/雙µC控制都連接到MAX9260 GPIO0的輸出端(圖6)。一旦上電,GPIO輸出高電平,以保持遠(yuǎn)端器件關(guān)閉,解串器由于附加的反相器配置為遠(yuǎn)端器件。由于MS連接到GPIO,MAX9260在休眠模式下上電,其余所有器件處于低功耗狀態(tài)。

  為了開啟遙控面板,串行器喚醒MAX9260并建立串行鏈路。然后,串行器端的µC設(shè)置GPIO0為低電平,使MS置低、反相器輸出高電平。反相器設(shè)置MAX9260為本地器件,并喚醒遠(yuǎn)程顯示面板的其它電路。MS必須置為低電平,以保持MAX9260 UART接口的基本模式。

  如需關(guān)斷遠(yuǎn)端面板,則串行器設(shè)置GPIO0為高電平來關(guān)斷遠(yuǎn)端器件并將MAX9260置為遠(yuǎn)端器件。然后,在MAX9260內(nèi)設(shè)置SLEEP = 1,使器件進入睡眠模式。

  

圖6. 單/雙?C遠(yuǎn)端顯示舉例

 

  圖6. 單/雙µC遠(yuǎn)端顯示舉例

  

上一頁123下一頁

本文導(dǎo)航

標(biāo)簽:汽車電子(123)ECU(22)控制單元(4)