正文
1.收發(fā)器硬件喚醒功能
1.1 什么是喚醒標志W(wǎng)ake flag
TJA1043收發(fā)器供電正常(供電不正常也會切換收發(fā)器狀態(tài))時候的硬件狀態(tài)切換條件有三個硬件信號組成:
STB_N(低有效,拉低進入到Standby狀態(tài))
EN引腳(拉高,使能收發(fā)器)
Wake flag
STB_N和EN就是收發(fā)器的兩個IO引腳,那Wake flag啥了?
TJA1043收發(fā)器內(nèi)部有很多硬件Internal flags,這里我們著重介紹下喚醒相關(guān)的UVNOM和Wake flag.
1.1.1 UVNOMflag
以下兩種場景會置位UVNOMflag:
VCC < Vuvd(VCC), 維持時間超過 tdet(uv)(100ms~350ms)
VIO < Vuvd(VIO) 維持時間超過 tdet(uv) (100ms~350ms)
UVNOM置位后的動作:TJA1043收發(fā)器進入到Sleep Mode
以下場景會清除UVNOM:
任何喚醒行為, 設置Pwon flag
STB_N 引腳出現(xiàn)LOW-to-HIGH變化
VCC 和VIO 都恢復。CAN transceiver會基于引腳STB_N 和EN當前狀態(tài)切換到對應的狀態(tài)
1.1.2 Wake flag
以下場景置位Wake flag:
收發(fā)器硬件檢測到本地喚醒事件(Wake Pin由低到高)
收發(fā)器硬件檢測到遠程喚醒事件(Wake pattern)
置位Wake flag后的動作:
清除UVNOM及對應的Timer
以下場景會清除Wake flag:
UVNOM被設置
收發(fā)器進入Normal Mode
1.2 什么是本地喚醒和遠程喚醒
1.2.1 本地喚醒
WAKE引腳上電壓水平由低到高或者由高到低,并且新切換的電平維持至少twake的時間。
1.2.2 遠程喚醒
當CAN總線上收到一個完整的Wake-Up Pattern (ISO 11898-2) 會遠程喚醒TJA1043收發(fā)器。
一個完整的WakeUp Pattern如下圖所示,至少在tto(wake)bus這段時間內(nèi)收到顯性位(0)-隱性位(1)-顯性位(0),顯性位的持續(xù)時間大于等于twake(busdom)隱性位的持續(xù)時間大于等于twake(busrec)。
1.3 收發(fā)器的ERR_N引腳
顧名思義,ERR_N引腳好像是用來標識TJA1043收發(fā)器的錯誤狀態(tài)的,但不僅僅如此。
通過ERR_N可以檢測Internal flag. 以Wake flag為例,Wake flag置位后可以通過ERR_N引腳來檢測Wake flag有沒有被置位。
也就是說,TJA1043收發(fā)器的本地喚醒可以通過WAKE引腳來檢測,遠程喚醒可以通過ERR_N引腳來檢測。
注意:一般收發(fā)器在Sleep模式下等待喚醒事件,如果發(fā)生遠程喚醒,則:
STB_N引腳低電平
EN引腳為高電平
Wake flag set
這個時候如果軟件要檢測喚醒事件,應該同時檢測STB_N引腳及ERR_N引腳,也就是說STB_N引腳既當輸出引腳又是輸入引腳。
2. CanTrcv模塊檢測喚醒事件
審核編輯:劉清
-
收發(fā)器
+關(guān)注
關(guān)注
10文章
3438瀏覽量
106072 -
AUTOSAR
+關(guān)注
關(guān)注
10文章
363瀏覽量
21625
原文標題:AUTOSAR架構(gòu)下CanTrcv休眠喚醒問題再探
文章出處:【微信號:汽車電子嵌入式,微信公眾號:汽車電子嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論