How do i disable the free run mode with the ADV7441A, PRIM_MODE = 2 (RGB) and VID_STD = 7(autographic). The HW spec tells to use the USER_MAP register 0x87 bit 6 but it doesn't work and the SW spec tells it's a reserved bit.
Checking into this.
Well, i do not see any discussion about how to disable the free run (rather people want to activate it). It is possible to force it (even if an active signal is present) but i don't see how to deactivate, like if there is only two modes availables, force ON or automatic.
Previously, i was saying that the VID_STD is programmed in autographic. In this case, the decoder seems to send just few frames with the free run color at the time of the disconnection, and then it stops. But in others VID_STD values (let's say SXGA 1280x1024 at 60), the decoder continuously sends blue frames.
So, do i have to manually stop the decoder to send frames when i detect a disconnection ?
I've check the SXGA60, VID_MODE = 5 and 0x87 controls the free run as you'd expect.
When in auto graphics mode, what are the setting for:
and what's the input resolution you're at.
0x87 is missing from the software manual.
In both cases described below, the source is vesa RGB 1280x1024 at 60hz.
1) As you say, the control bit works in VID_MODE=5. I had to return to the same programming as the eval board to make it work correctly. There is something wrong in my configuration but I am confident to find it myself.
2) In auto graphics mode, the control (still talking about reg 0x87 bit 6) doesn't work as expected:
> If set to 0, the decoder sends continuously black frames at a rate of 72 hz when the source is disconnected.
> If set to 1, the decoder sends few blue frames after the disconnection, then it stops.
Here are the value you asked for:
PLL_DIV_MAN_EN = 1
PLL_DIV_RATION = 0x1696
FR_LL = 0x1BE
LCOUNT_MAX = 0xA42
INTERLACED = 0
OK, finally got some time with the setup and here's what I found.
1) Used ADV7441A + Mother board + AD9889
2) Source was analog SXGA60
3) Ran script for SXGA60 and displayed image on monitor, this script put the chip in Prim_mode=2, Vid_std = 5.
4) Changed VID_STD = 7,
87 = 0 -> good image HS = ~64lKz
87 = 1 -> bad image because rest of registers for auto-graphics mode were not set up, HS = ~64kHz
5) Disconnected VGA connector (unplugged)
87 = 0 -> HS = 0
87 = 1 -> HS = ~64kHz
For step 5) disconnecting the VGA source should have put the chip into free run but with HS=0, HS was 0 so no output, i.e. black screen.
First, thank you invested the time to answer this question.
On reading this, I still wonder if, assuming all registers are correctly programmed in auto graphic, we can say that the free run is supported as well as it is in vid_std 5... Is it a programming issue or is it because the free run functionality is not designed to operate in this mode ?
In fact, my programming in auto graphic looks good... i would say that because the image is good and stable.
In step 4, you are still connected but the bit 6 has an effect on the output. On my side, this control hasn't any effect until the input signal is there. When it is disconnected, it is difficult for me to tell you exactly what is the output of the chip but, as describe before, the decoder still sends something (when bit 6 is 0) and it is unstable. However, when the bit is 1, the decoder send a blue screen but it stops after few frames.
Retrieving data ...