Fixed the programming of the AD5932 frequency generator. I changed the bit of the control register that defines how the frequency registers are program so that the two Fstart and two deltaf registers are programmed separately rather than sequentially. I think that since the Arduino can only transfer 8 bits over SPI at a time, the small delay between the two bytes being sent wasn't received too well.
I also measured some sort of divider constant. If I programmed, say, 100 kHz straight into the Fstart register, the sweep wouldn't actually start at 100 kHz. I measured how far off from what I wanted Fstart to be the first frequency was for various divider constants applied to the value programmed into the AD5932. Using the slope from these measurements I ended up using a divider constant of 100 to get the sweep to start at the frequency I wanted.
I also did a similar technique to get a divider constant for the frequency increment.
I'm going to read over the AD5932 datasheet again to make sure they don't provide these constants. Because I have no memory of this sort of thing being mentioned in the datasheet at all.
No comments:
Post a Comment