I'm having an issue when measuring the phase using the AD9837.
The AD9837 is running with an 8 MHz MCLK input.
I configure the AD9837 in a loop like this:
- Reset (no sleep)
- Write FREQ0/1 19000 Hz
- Write PHASE0 = 0
- Disable reset, PSEL=PHASE0, FSEL=FREQ0/1
- Measure signal / calculate phase (this is synced with step 4)
I.e. the FREQ registers are changed for each loop, but it's the same frequency that is written every time. The phase and phase register is also the same every time.
The problem I'm seeing is a phase difference every other loop of about 4 degrees (at 19000Hz) or about 650ns. This happens consistently.
When doing the exact same sequence of configuration but steps 2 and 3 are swapped, i.e. frequency written first followed by writing the phase register the phase remains stable (i.e. within +/- 1 MCLK cycles).
Is it expected that the ordering of registers writes will affect the phase?