cancel
Showing results for 
Search instead for 
Did you mean: 

L6474 : behaviour of status register

JulienD
Senior

Hi,

starting from the documentation :

"The UVLO, TH_WRN, TH_SD, OCD, NOTPERF_CMD and WRONG_CMD flags are latched: when the respective conditions make them active (low or high), they remain in that state until a GetStatus command is sent to the IC. "

My understanding is that when a "warning" occurs, its bit goes to 1. This bit will not change until I read the status register. After reading the value, each bit will be set the its current physical value which can be the same or the other.

Is that right?

Regarding the flag pin :

"By default, an internal open drain transistor pulls the FLAG pin to ground when at least one of the following conditions occurs:  Power-up or standby/reset exit  Overcurrent detection  Thermal warning  Thermal shutdown  UVLO  Switch turn-on event  Wrong command  Non performable command."

The documentation does not state on how flag goes to 1. When all flags have ended? after a read? (in this case, does flag goes to 0 if at least on flag is still 1?)

Thanks

Julien

Let's have an example with th_wrn and uvlo.

1 ACCEPTED SOLUTION

Accepted Solutions
Dario CUCCHI
ST Employee

Hi @Julien D_Oevillers​ ,

The UVLO, the thermal warning, thermal shutdown and the overcurrent bits are active low.

It means that the bits are high in normal mode and when something “wrong�? occurs, the corresponding bit goes to 0 and so the FLAG pin.

In order to bring FLAG pin high again, you have to send the “GetStatus�? command since releasing the trigger condition is not enough.

Let’s see the two examples, they would make more clear how the device works.

Here is what happens in case of thermal warning:

  1. when the device’s temperature is low, during normal operation, the TH_WRN bit is 1.
  2. Then, for some reason, the temperature rises above the warning threshold: TH_WRN bit goes to 0.
  3. At the same time the FLAG pin goes low, (the open drain is activated)
  4. Then, the temperature decreases down the warning threshold, but both the bit in the register (TH_WRN) and the FLAG pin stay low because are latched
  5. In order to clear them, you have to send the “GetStatus�? command so you can get the values of the different status bit and clear the “warning�? condition
  6. After "GetStatus" command, the FLAG pin goes high (open-drain released) and the bit TH_WRN goes back to 1.

Be careful that just reading the status register (using “GetParam�?)  does not clear the status bit nor brings the FLAG pin high.

Both stay in the latched condition until the “GetStatus�? command is sent.

The UVLO example is similar to the previous one:

- When the supply is ok UVLO bit = 1

- The supply drops down below the threshold: UVLO bit goes to 0 and the FLAG pin goes low

- The supply comes back to its nominal value but…

- the FLAG pin and the UVLO bit stay at 0 until a “GetStatus�? command is sent

I hope this explanation can help you.

View solution in original post

2 REPLIES 2
Dario CUCCHI
ST Employee

Hi @Julien D_Oevillers​ ,

The UVLO, the thermal warning, thermal shutdown and the overcurrent bits are active low.

It means that the bits are high in normal mode and when something “wrong�? occurs, the corresponding bit goes to 0 and so the FLAG pin.

In order to bring FLAG pin high again, you have to send the “GetStatus�? command since releasing the trigger condition is not enough.

Let’s see the two examples, they would make more clear how the device works.

Here is what happens in case of thermal warning:

  1. when the device’s temperature is low, during normal operation, the TH_WRN bit is 1.
  2. Then, for some reason, the temperature rises above the warning threshold: TH_WRN bit goes to 0.
  3. At the same time the FLAG pin goes low, (the open drain is activated)
  4. Then, the temperature decreases down the warning threshold, but both the bit in the register (TH_WRN) and the FLAG pin stay low because are latched
  5. In order to clear them, you have to send the “GetStatus�? command so you can get the values of the different status bit and clear the “warning�? condition
  6. After "GetStatus" command, the FLAG pin goes high (open-drain released) and the bit TH_WRN goes back to 1.

Be careful that just reading the status register (using “GetParam�?)  does not clear the status bit nor brings the FLAG pin high.

Both stay in the latched condition until the “GetStatus�? command is sent.

The UVLO example is similar to the previous one:

- When the supply is ok UVLO bit = 1

- The supply drops down below the threshold: UVLO bit goes to 0 and the FLAG pin goes low

- The supply comes back to its nominal value but…

- the FLAG pin and the UVLO bit stay at 0 until a “GetStatus�? command is sent

I hope this explanation can help you.

Dario CUCCHI
ST Employee

Hi @Julien D_Oevillers​ ,

did this post clarified your question about the status register ?

If so, consider to select this as a best answer, in order to help other community members to easily find a solution for similar question.

Thank You and have a good day !