I have some problems with ADAV803.
PLL falls apart after each MCU reset almost right away (even after the initialization of the IC with 30sec delay if the jamming started by then).
I folowed the AN-910, by setting the VCO test register (0x7F) i was able to lock the signal that is being continuously broken on purpose. After one restart it remains more or less stable but sometimes it falls apart again. In such cases most of the time there is no interrupt, it also happens from time to time that the first interrupt doesn’t arrive after resetting the ADAV803.
This makes it impossible to reliably sense the failure (based on the errata)
The interrupt pin appears according to the set up of the Interrupt Status Master Register (0x1D) in case of RxError. Based on this the usage of the interrupt pin is not necessary if there is enough CPU time for reading the interrupt status register.
The MCU is continuously reading the receiver error and interrupt status registers and after the PLL fails this doesn’t change but the lower bit of the interrupt status (RxError) is not always 1 (this is the reason why there is not always an interrupt)
Investigating it further I found out that if the interrupt fails then there is no Lock flag in the receiver error register (usually it gets stuck at 0x04 and 0x00 values). In such case if I restart the VCO from time to time then within a short period of time (in the customer’s application it takes seconds) the normal operation can be set back. If there is a receiver error then it can be used to detect the failure during many cycles. With this solution the restart of the VCO is in most of the cases in vain.
Monitoring the DIR_LF pin is a valid alternative. When there is a failure it sets to 150mV otherwise it is above 1.7V.
The problem is that they would like to deal with this problem without any further ICs, using a software only.
Is there a solution for the case when there is no interrupt signal?