When EN_OLON bits are programmed with the value 1010b, the device starts a diagnosis loop where all auto-configurable (when used as high-side switches) channels are checked for Open Load at ON. First the internal logic checks all channels which are directly driven by the micro-controller and not configured to be driven by the internal PWM generator. Then the internal logic checks all channels which are configured to be driven by the internal PWM generator.
- Diagnosis sequence for channels driven directly
by the micro-controller
- First channel checked:
channel 2. TI recommends that the channels are ON at least
tON before enabling the diagnosis loop.
- After a time
tOLONSET + tSYNC the diagnosis for the first
channel is completed (OLONx bit is updated)
- The internal multiplexer
is set to the next channel. After a time tOLONSW +
tSYNC the diagnosis is completed (OLONx bit is updated)
for the selected channel. This step is repeated for all remaining
directly driven channels.
- If one channel is OFF
when the diagnosis is performed, the corresponding OLONx is set to
0b
- Diagnosis sequence for channels driven by the
internal PWM Generators
- These channels are
checked only after all channels directly driven by micro-controller are
checked
- Channels mapped to PWM
Generator 0 are checked first
- After a time
tOLONSET the channel activation (switch ON) is the
trigger event to perform Open Load at ON diagnosis for the first
channel
- After a time
tONMAX + tOLONSW the diagnosis for the first
channel is completed (OLONx bit is updated)
- The internal multiplexer
is set to the next channel. After a time tOLONSW the
diagnosis is completed (OLONx bit is updated) for the currently selected
channel. This step is repeated for all remaining PWM generator driven
channels.
- If the channel is in OFF
state during the PWM period, the internal logic waits for the ON state
to perform the diagnosis. After a time tONMAX +
tOLONSW the diagnosis for that channel is completed.
- The minimum ON time for a
reliable diagnosis is > tONMAX + tOLONSW. If
the ON time is < tONMAX + tOLONSW the
corresponding OLONx is set to 0b.
When the loop finishes, EN_OLON bits are set back to 1111b (default value) and
OLONx bits save the last diagnosis loop result. Starting another diagnosis loop to
update the register content is necessary.