Need DDS module, 2nd round

themselves when the frequency was changed.

way by chucking in an unnecessary reset command on top of every frequency change update, but that doesn't mean that just sending a frequency change command is going to be difficult.

It would need a fairly fine granularity, several k vlaue sets for the DDS. It's easy to get nasty artifacts if this isn't calculated on the fly.

Yes, but I know analog will work. It's just not very friendly in terms of PC connectivity.

If one can program them in a reasonaable time frame which I can't (yet).

--
Regards, Joerg 

http://www.analogconsultants.com/
Reply to
Joerg
Loading thread data ...

audio filters

sine wave table,

f1 to f2.

EPROMS.

Flash memory 70ns 256K x 16 is $1.10 one-off, but you wouldn't be able to use even one cent worth of it.

Best regards, Spehro Pefhany

--
"it's the network..."                          "The Journey is the reward" 
speff@interlog.com             Info for manufacturers: http://www.trexon.com 
Embedded software/hardware/analog  Info for designers:  http://www.speff.com
Reply to
Spehro Pefhany

audio filters

sine wave table,

f1 to f2.

EPROMS.

If I wanted to do that I'd probably just get a uC with ADC and a big fat flash area, then use it just for this job. Its ADC reads my PID output, points to the corresponding LUT address, shoves data to the DDS. That is how I'd do the final system, or let it calculate (depending how easy it is to avoid birdies and stuff).

--
Regards, Joerg 

http://www.analogconsultants.com/
Reply to
Joerg

Have you considered just buying something like my Rigol DG4062 and using it for proof-of-concept? For $795 it might be worth it, and it's generally useful afterward with the USB and Ethernet interfaces etc.

Best regards, Spehro Pefhany

--
"it's the network..."                          "The Journey is the reward" 
speff@interlog.com             Info for manufacturers: http://www.trexon.com 
Embedded software/hardware/analog  Info for designers:  http://www.speff.com
Reply to
Spehro Pefhany

audio filters

sine wave table,

from f1 to f2.

EPROMS.

Something like an LPC1754 would do all that for about $4. If you can find a C programmer person who can code and flash the chip, I could write the pseudocode. It would need some startup code (set up CPU junk, configure the ADC and DAC) and an IRQ routine to read the ADC, do the DDS stuff, and load the DAC. The ADC could cause the IRQ at a couple hundred KHz, and the IRQ code would be short and sweet.

May as well include the PID loop. I have an LPC1754 app that does most of that stuff; you could hack its code.

--

John Larkin                  Highland Technology Inc 
www.highlandtechnology.com   jlarkin at highlandtechnology dot com    

Precision electronic instrumentation 
Picosecond-resolution Digital Delay and Pulse generators 
Custom timing and laser controllers 
Photonics and fiberoptic TTL data links 
VME  analog, thermocouple, LVDT, synchro, tachometer 
Multichannel arbitrary waveform generators
Reply to
John Larkin

audio filters

sine wave table,

from f1 to f2.

EPROMS.

pseudocode.

and

and

I wouldn't be surprised you don't the DDS stuff at all. Just use floating point. The chip is probably fast enough to emulate. After all its one sin() and some additions to get the output. Some fast float to integer conversion magic and its all done.

--
Failure does not prove something is impossible, failure simply 
indicates you are not using the right tools... 
nico@nctdevpuntnl (punt=.) 
--------------------------------------------------------------
Reply to
Nico Coesel

audio filters

a sine wave table,

from f1 to f2.

EPROMS.

pseudocode.

and

and

LPC43xx should be fast enough- it's got hardware floating point.

I think that spitting out floating-point transcendentals in < 10usec on a Cortex M3 running at only 100MHz is asking too much of the standard library functions.

Hey, if J. doesn't mind offshore stuff of dubious heritage and "support", what about this?

formatting link

Best regards, Spehro Pefhany

--
"it's the network..."                          "The Journey is the reward" 
speff@interlog.com             Info for manufacturers: http://www.trexon.com 
Embedded software/hardware/analog  Info for designers:  http://www.speff.com
Reply to
Spehro Pefhany

Unless you specify that whoever writes the code makes it listen to an ADC input and sweeps the frequency on command -- but that's getting pretty involved.

If you're looking at less than 10kHz carrier and 2kHz FM bandwidth, what's stopping you from an analog solution? The required precision?

Have you considered a crystal oscillator with an FM input beating against a plain ol' signal generator (crystal derived, of course)? That should give you a fairly steady carrier frequency that you can set from an instrument, a nice sine wave, the FM that seems to be your primary need, and it'll keep the custom circuitry all analog so you don't need to step outside of your areas of expertise to get it done.

--
Tim Wescott 
Control system and signal processing consulting 
www.wescottdesign.com
Reply to
Tim Wescott

active audio filters

a sine wave table,

from f1 to f2.

EPROMS.

pseudocode.

and

and

Who said you'd need a sampling frequency of 100kHz? Or at least calculate samples that fast...

--
Failure does not prove something is impossible, failure simply 
indicates you are not using the right tools... 
nico@nctdevpuntnl (punt=.) 
--------------------------------------------------------------
Reply to
Nico Coesel

A STM32 F4 (with floating point unit):

formatting link

14 USD. Extension board with display etc

In my lab I have a generic STM board in an enclosure. Instead of doing analog test equipment each time I need it, I have done uC designs targeted for the same board.

When finished I then have several hex files I can upload for a desired functionality. That saves time for coming projects and avoid bringing forward the solder iron.

Cheers

Klaus

Reply to
Klaus Kragelund

If you have an FPGA in your project, stick it in there. DDS is easy to implement in an FPGA.

Reply to
qrk

I have, and the price isn't so important. I've got a Mastech arb gen that would work just fine and is under $400. But I need something that isn't so large.

Probably the old XR2206 will work ok. I was just surprised that no company seems to have pick up this chip after it went lalaland.

--
Regards, Joerg 

http://www.analogconsultants.com/
Reply to
Joerg

active audio filters

with a sine wave table,

from f1 to f2.

EPROMS.

C

pseudocode.

DAC) and

short and

A few kilohoitz would be plenty. The loop BW itself is going to be less than 100Hz and then some granularity needs to be added in for larger swings.

Yes, a uC can clearly do this but since this is just one tiny sliver of the whole project I was hoping for something like "Crack open the package, solder in, sprinkle with inductors and caps, maybe some cilantro, turn on, forget about it". Looks like those XR2206 modules plus one counter module will be the ticket if nothing better comes up off-the-shelf.

--
Regards, Joerg 

http://www.analogconsultants.com/
Reply to
Joerg

Since it seems there ain't no DDS module where the FM modulator input actually works, the analog solution is what I am going to do. Lower precision is one downside, the other is lack of PC controllability. But those are not absolutely required here.

With two crystals in the 10MHz or higher range that wuold work. One fixed, one pulled via varicap. However, the varicap pulling is anything but linear, BTDT. I think the XR2206 is easier.

I have something like that from Cypress, not nearly as powerful but would likely do the trick. However, you are much more used to writing code than I am, so this would take me a long time. I am not oppose to a learning curve but there are too many projects on the plate right now.

--
Regards, Joerg 

http://www.analogconsultants.com/
Reply to
Joerg

Not FPGA, CPLD or any of that in this project. Plus I don't have much programming experience with those.

--
Regards, Joerg 

http://www.analogconsultants.com/
Reply to
Joerg

active audio filters

with a sine wave table,

from f1 to f2.

EPROMS.

C

pseudocode.

and

and

?????

Just use

Floats don't help implementing the DDS core; they actually make it harder.

Sine is easily, and usually, done with a lookup table in DDS apps. That will take a few tens of nanoseconds on a 100 MHz ARM.

100 or 200KHz IRQ rate (5 to 10x Nyquist) would be easy on an LPC1754. The advantage of a higher rate is that you'd need a less demanding lowpass filter after the DAC.
--

John Larkin                  Highland Technology Inc 
www.highlandtechnology.com   jlarkin at highlandtechnology dot com    

Precision electronic instrumentation 
Picosecond-resolution Digital Delay and Pulse generators 
Custom timing and laser controllers 
Photonics and fiberoptic TTL data links 
VME  analog, thermocouple, LVDT, synchro, tachometer 
Multichannel arbitrary waveform generators
Reply to
John Larkin

be

lowpass.

active audio filters

with a sine wave table,

sweep from f1 to f2.

EPROMS.

C

pseudocode.

DAC) and

short and

need

How come? IMHO generating a sine wave is a matter of output=sin(angle)

  • amplitude. Angle is incremented by a step which depends on the sample rate and frequency. From memory: Say your samplerate is 10kHz and your output frequency is 105.3Hz then the size of each increment is (2pi / 10kHz) * 105.3Hz radians. That is very easy to program. Ofcourse it will need some tweaks to make it fast but the basics are simple.

For that purpose you can upsample before sending the data to the DAC. I often sample at unrealistic rates and then downsample before doing the actual processing to avoid (too much) filtering. A 4th order fixed point IIR filter is almost free when it comes to CPU cycles on an ARM.

--
Failure does not prove something is impossible, failure simply 
indicates you are not using the right tools... 
nico@nctdevpuntnl (punt=.) 
--------------------------------------------------------------
Reply to
Nico Coesel

I was thinking of a 4046, but certanly Joerg knows about it. I did a VCO with a 4046 driving a 4017 with different R's into an opamp summing junction. (A few threads here on SED.) The harmonics start with the 9th and 11th.

George H.

Reply to
George Herold

g
p

hat

wo

st

%2...

se

f

by..

What sort of range do you need? (Did you say already?) With the 4046->4017->R's Harmonics start with the 9th...(The lower harmonics are less than 55db with 0.1% R's.) So depending on what sort of lowpass you can get maybe factor of three range.

George H.

Reply to
George Herold

Well lets see, I remember years ago a bunch of those chips got out there and used for kits or what ever that actually didn't pass QC in the sine wave shaper section. Guess some one found a market for them in any case.

I see that TAYDA Electronics has them for $2.99 and Mouser has a couple in stock for only $87.00 bucks, most likely those past QC, chump change.

Jamie

Reply to
Jamie

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.