View previous topic :: View next topic |
Author |
Message |
asmboy
Joined: 20 Nov 2007 Posts: 2128 Location: albany ny
|
|
Posted: Wed Apr 13, 2016 7:51 am |
|
|
Quote: | an issue with my DDS model, |
OVERKILL for making sine waves.
The part was created to be a quasi-arbitrary waveform generator. The DDS is just a component. Its real application i suspect was the ATE ( Automated Test Equipment) market. It's like having to set up a CNC milling machine just to drill one hole. It can do the job you want but it costs 4x the price of parts that make very nice DDS sine waves with excellent spectral purity.
issues: unit price, complexity and power consumption.
the 9102 draws as much as 10x the current of other DDS only chips. |
|
|
temtronic
Joined: 01 Jul 2010 Posts: 9246 Location: Greensville,Ontario
|
|
Posted: Wed Apr 13, 2016 8:25 am |
|
|
Ok I have a basic question after reading 3 pages of this thread.
The 18F4455 PIC is a 5 volt device, and the AD9102 is a 3 volt device. Unless you have 'logic level translators' betweeen them, that may be a big part of your problem.
I have never been a fan of 'mixed marriages of power'. These days just use an 'L' speced PIC, no extra parts or delays !!
The AD9102 datasheet looks OK to me (I used a lot of AD stuff back when parallel was king), lots of registers to setup though so the driver will be rather long but taken in steps it shouldn't take more than a day to get 'up and running'.
Jay |
|
|
SvenBraun
Joined: 19 Mar 2016 Posts: 29
|
|
Posted: Wed Apr 13, 2016 2:17 pm |
|
|
asmboy: I believe the reason we chose this chip was due to the size of the DAC, specifically its resolution.
temtronic: I have my system set up between two boards. The first board has my PIC and supplementary peripherals that are currently disabled, as well as 5V power source coming from USB. The second board has the 9102 chip on it, with a power supply currently set up as 2.6-2.7V for now. (It was originally 3.3V, but we've changed it a bit.) The power sources do not mix at all.
To either: Does it appear that I'm missing an operation that is typical for a DDS to function?
Today has been about troubleshooting connections, to see if the pin values make sense for what the datasheet says. |
|
|
asmboy
Joined: 20 Nov 2007 Posts: 2128 Location: albany ny
|
|
Posted: Wed Apr 13, 2016 2:25 pm |
|
|
Without seeing the actual circuit connections to the 9102 and the pic pins - and the code being executed in that regard - simply no way to know. |
|
|
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Wed Apr 13, 2016 2:47 pm |
|
|
To post your schematic (or a link to it), you can do the following:
How to post an image on the CCS forum:
Go to this website: http://postimage.org/
Upload your image. Select family safe. Then click the first button for
"Hotlink to Forum" to get a link to the image.
Then go to the CCS forum and type Ctrl-V to paste the link into a post.
If postimage.org doesn't work in your country, then use Google to find
another free image hosting site for forums. |
|
|
asmboy
Joined: 20 Nov 2007 Posts: 2128 Location: albany ny
|
|
Posted: Wed Apr 13, 2016 3:26 pm |
|
|
and as Temtronic pointed out 18LF4x5x is going to be your friend - but unless you NEED the USB feature of the PIC you started with -
a part like the 18f46k22 can operate with full specs at 3.3 or 5v
and is F A R more powerful a chip - to say nothing of cheaper and NEWER .. with pin outs that are friendly to what you have done already. if using a DIP version - its a pretty simple drop in....... |
|
|
SvenBraun
Joined: 19 Mar 2016 Posts: 29
|
|
Posted: Wed Apr 13, 2016 5:59 pm |
|
|
I do not have a readily-available schematic, since I've been building it on the board piece-by-piece.
I did take your suggestion, asmboy, and after double-checking the datasheet, I removed the USB adapter, so the whole system is running on 3.3V power from my power supply.
We decided to dis-assemble the board with the DDS on it, and reassemble, double-checking each connection.
We noticed a mis-configuration with the clock input to the DDS, and replaced our single-ended oscillator with a 20 MHz crystal, AC-coupled with 39pF capacitors.
We're still re-assembling it and going over each pin, to verify function and voltage reading.
The only issue I still need to double check is REFIO and FSADJ pins, since I'm not 100% sure if they need to be connected at all to generate an output. As of right now, they're disconnected (same with CAL_SENSE). The LDOs I need to re-read up on. |
|
|
asmboy
Joined: 20 Nov 2007 Posts: 2128 Location: albany ny
|
|
Posted: Wed Apr 13, 2016 6:44 pm |
|
|
REFIO: you can override the internal 1V reference by feeding this pin with
the OUTPUT of an opamp which is referred to some other Vref of your choosing.
OR
put a tantalum capacitor ( observing proper polarity) from the
pin to ground to HF de-noise the reference source. Important if in a very high RF field.
OR
float the pin.
if you start by floating you are still likely safe.
-----------------------------
FSADJ allows you to trim the output amplitude when using the DAC waveform generator.
on page 19 of my data sheet
with no connection (floated) - you get the specified output levels NOMINALLY
Quote: |
RSET Resistors
RSET in the where statement for Equation 3 can be an internal
resistor or a board level resistor of the user’s choosing
connected to the FSADJ terminal.
To make use of the on-chip RSET resistor, set Bit 15 of the FSADJ
register to Logic 1. Bits[4:0] of the FSADJ register are used to
program values for the on-chip RSET manually |
|
|
|
SvenBraun
Joined: 19 Mar 2016 Posts: 29
|
|
Posted: Thu Apr 14, 2016 10:11 pm |
|
|
I have a (most likely final) update for this thread.
So, we went back through the code and the set-up and found what we believe to be the issues:
WAV_CONFIG (0x27) was configured wrong for a sine wave. My original code had it correctly configured, but it somehow changed during revisions:
What it was:
Code: | fullWrite[7] = 0x00270001 |
What it should've been:
Code: | fullWrite[7] = 0x00270031 |
Additionally, we did not have a Rset register configured, either internally or externally. We applied a 1k resistor from FSADJ to GND and began seeing a waveform.
Thank you for all the help from everyone who contributed. |
|
|
|