Hello,
I have noticed that when selecting a profile using the AD9913 direct switch mode both the frequency and the phase of the DDS are changed no matter what value I use for the destination bits in CFR1[13:12]. For example, I set the 8 profiles using the following frequency and phase values:
Profile | Freq. (MHz) | Phase (degrees) |
0 | 10.0 | 0.0 |
1 | 11.0 | 10 |
2 | 12.0 | 20 |
3 | 13.0 | 30 |
4 | 14.0 | 40 |
5 | 15.0 | 50 |
6 | 16.0 | 60 |
7 | 17.0 | 70 |
Initially, the DDS is operating in single tone mode with a freq. of 10 MHz and a phase offset of zero degrees. I now set the following value for CFR1:
0x0841_1000. (in binary: 0b0000_1000_0100_0001_0001_0000_0000_0000) indicating the following:
- CFR1[27] = 0b1 (profiles controlled by CFR1[22:20])
- CFR1[22:20] = 0b100 (select profile 4)
- CFR1[16] = 0b1 (direct switch mode active)
- CFR1[13:12] = 0b01 (destination is phase word)
The output of the DDS now shows a frequency of 14 MHz. It seems to me that with the above CFR1 setting only the phase word should be loaded and the DDS output frequency should not change.
If I repeat the above operation using the following profile settings in the table below I confirm from the DDS output that the phase word from profile 4 is successfully loaded. (Presumably the frequency tuning word is also loaded but I deliberately set all the profile frequencies to 10 MHz in order to check that the phase word was being successfully loaded.)
Profile | Freq. (MHz) | Phase (degrees) |
0 | 10.0 | 0.0 |
1 | 10.0 | 10 |
2 | 10.0 | 20 |
3 | 10.0 | 30 |
4 | 10.0 | 40 |
5 | 10.0 | 50 |
6 | 10.0 | 60 |
7 | 10.0 | 70 |
I am somewhat puzzled by this behaviour. Am I missing something?
Thanks, Tim M.