當 EN_OLON 位被編程為值 1010b 時,器件將啟動診斷回路,在該回路中檢查所有自動可配置(用作高側開關時)通道是否為開啟時開路負載。首先,內部邏輯會檢查由微控制器直接驅動且未配置為由內部 PWM 發生器驅動的所有通道。然后,內部邏輯會檢查所有配置為由內部 PWM 發生器驅動的通道。
- 直接由微控制器驅動的通道的診斷序列
- 檢查第一個通道:通道 2。TI 建議在啟用診斷回路之前通道至少開啟 tON。
- 經過 tOLONSET + tSYNC 這段時間后,第一個通道的診斷完成(OLONx 位更新)
- 將內部多路復用器設置為下一個通道。經過 tOLONSW + tSYNC 這段時間后,所選通道的診斷完成(OLONx 位更新)。對其余所有直接驅動通道重復此步驟。
- 如果執行診斷時一個通道關閉,則相應的 OLONx 設置為 0b
- 內部 PWM 發生器驅動通道的診斷序列
- 只有在檢查由微控制器直接驅動的所有通道后,才會檢查這些通道
- 首先檢查映射到 PWM 發生器 0 的通道
- 經過 tOLONSET 之后,通道激活(開關開啟)是針對第一個通道執行開啟時開路負載診斷的觸發事件
- 經過 tONMAX + tOLONSW 這段時間后,第一個通道的診斷完成(OLONx 位更新)
- 將內部多路復用器設置為下一個通道。經過 tOLONSW 這段時間后,當前所選通道的診斷完成(OLONx 位更新)。對所有其余由 PWM 發生器驅動的通道重復此步驟。
- 如果通道在 PWM 周期內處于關斷狀態,則內部邏輯會等待導通狀態來執行診斷。經過一段時間 tONMAX + tOLONSW 后,該通道的診斷完成。
- 可靠診斷的最短導通時間 > tONMAX + tOLONSW。如果導通時間 < tONMAX + tOLONSW,則相應的 OLONx 會設置為 0b。
當回路結束時,EN_OLON 位被設置回 1111b(默認值),OLONx 位保存最后一個診斷回路結果。需要啟動另一個診斷回路來更新寄存器內容。