睡眠模式是器件的節能工作模式。在此模式下,器件可以從 CAN 總線、LIN 總線、WAKEx 引腳或 SW 引腳(如果已編程)喚醒。如果存在 VCC1,則 SPI 可用于更改模式,并且 nRST 為高電平。如果由于故障條件而進入睡眠模式,則 INT_2 寄存器 8'h52[7] (SMS) 設置為 1b。圖 8-28 展示了進入和退出睡眠模式的各種方式。
當器件處于睡眠模式時,存在以下狀況。
- 禁用 LIN 總線驅動器,關閉內部 LIN 總線終端(從而在 LIN 對地短路時更大限度地減少功率損耗)。但是,弱電流上拉處于活動狀態,防止在與 LIN 總線的外部連接丟失時出現錯誤的喚醒事件。
- CAN 總線驅動程序被禁用,內部 CAN 總線終端切換至弱接地。
- CAN 和 LIN 收發器接收器被禁用。
- CAN 和 LIN 低功耗喚醒接收器符合編程要求。
- 喚醒引腳符合編程設置。
- 如果啟用了循環檢測,則 HSS4 會定期開啟。
- 如果編程為數字喚醒輸入,則 SW 引腳開啟。
- 如果在睡眠模式下啟用循環喚醒,器件將喚醒并轉換為重啟模式,然后在 VCC1 > UVCC1R 時切換為待機模式。如果在長窗口期間未觸發看門狗,或故障仍然存在,則器件會切換回睡眠模式。
- 當 VCC1 配置為在睡眠模式下開啟時,請考慮以下情況:
- 看門狗可作為超時看門狗啟用
- 看門狗故障會導致器件進入重啟模式,最后進入待機模式。這也會設置 SME 中斷
- 現在會監測 SBC 故障,這些故障可能導致器件自動更改模式,從而將 INT_2 寄存器 8'h52[0] 處的睡眠模式退出 (SME) 中斷設置為 1b
- 如果啟用了失效防護模式,則 TSD、OVCC1 或 VCC1SC 故障會導致器件切換為失效防護模式并關閉 VCC1。
- 如果禁用了失效防護模式、則 TSD、OVCC1 或 VCC1SC 故障會導致 VCC1 關閉 300ms,然后重新導通。如果故障已清除,器件將切換為重啟,最后進入待機模式。
- 如果發生 UVCC1 事件,則器件會轉換到切換至重啟模式,最后進入待機模式。這也會設置 SME 中斷。
要成功進入睡眠模式,必須滿足以下條件:
- 所有現有的喚醒中斷都必須清除
- 若未能執行操作,會導致使用 SBC 重啟進入待機模式,從而立即從 SBC 睡眠模式喚醒。
- 必須至少有一種喚醒方法可用
- 如果在進入睡眠模式之前禁用了所有喚醒方法,則器件不會進入睡眠模式并設置 MODE_ERR 中斷 8'h5A[3]。
- 如果 VCC1_CFG = 10b(VCC1 在睡眠模式下關閉)且 WAKEx 引腳閾值設置為基于 VCC1 (WAKEx_LEVEL = 00b),則器件會在進入睡眠模式之前將 CAN 和 LIN 設置為支持喚醒