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