Hi,
I finally managed to get the EVM running with an Arduino and so far everything looks like it is working fine. I am able to get appropriate magnitude and phase values at a single frequency without any issue in the IQ mode.
As mentioned in the data sheet, I noticed that when the frequency is changed in the IQ mode the output data becomes very non-deterministic. The datasheet (section 8.1.3) suggests either 1. doing a fresh calibration or 2. using an SPI synchronous with the device clock. I had a couple of questions on both approaches.
It looks like both I and Q changes when the frequency is changed. I understand that magnitude should be calibrated because of the variation in gain etc. but the phase values look drastically different. Does this mean I should calculate the phase offset and add it to all the values? I haven't tested this but I am assuming it should work.
I need to look into creating a synchronous SPI system but I was wondering why a sufficient delay will not work. Can I do the following to get it to work : disable IQ_MODE, write the DAC Frequency and IQ_DEMOD_CLK_DIV_FAC values, provide a couple of ms worth of delay and reenable IQ_MODE?
I am getting a bit confused on how an SPI synchronous to the device clock would work. Is there a timing diagram someone can share?
Thank you
P.S. For everyone trying to get an Arduino(powered at 5V) to interface with the AFE4300 EVM, make sure every signal is pulled down to 3.3V. I used a simple voltage divider circuit with 3 10Ohms