Category Archives: IC usage

Programmable Waveform Generator

Consider also the new AD9838 11mW, 2.3-5.5V Complete DDS and the AD98378.5mW, 2.3-5.5V Programmable Waveform Generator.

The AD9833 is a low power, programmable waveform generator capable of producing sine, triangular, and square wave outputs. Waveform generation is required in various types of sensing, actuation, and time domain reflectometry (TDR) applications. The output frequency and phase are software programmable, allowing easy tuning. No external components are needed. The frequency registers are 28 bits; with a 25 MHz clock rate, resolution of 0.1 Hz can be achieved. Similarly, with a 1 MHz clock rate, the AD9833 can be tuned to 0.004 Hz resolution.

The AD9833 is written to via a 3-wire serial interface. This serial interface operates at clock rates up to 40 MHz and is compatible with DSP and microcontroller standards. The device operates with a power supply from 2.3 V to 5.5 V.

The AD9833 has a power-down function (SLEEP). This allows sections of the device that are not being used to be powered down, thus minimizing the current consumption of the part, e.g., the DAC can be powered down when a clock output is being generated.

The AD9833 is available in a 10-lead MSOP package.


  • Frequency Stimulus/Waveform Generation
  • Liquid and Gas Flow Measurement
  • Sensory Applications–Proximity, Motion, and Defect Detection
  • Line Loss/Attenuation
  • Test and Medical Equipment
  • Sweep/Clock Generators
  • Time domain reflectometry (TDR) applications



with atmega16:

CD4053 CMOS Analog MUX


The basis for the switch is the CD4053 analog multiplexer IC. This is a CMOS logic chip that contains three SPDT CMOS analog switches and the attending control logic to make them work. People who have tried these before have often complained that they pop or distort, and have then moved on and forgotten them.

There are some tricks to using this chip. First – the analog inputs and outputs need to be held somewhere near the middle of their power supply. The 4053 does have a “Vee” supply pin that lets it control signals near 0V, but that is often a fair amount of trouble to use. the simplest thing to do is to AC couple the in/out pins and bias them to the middle of the 4053’s power supply. In a +9V system, this only needs a two resistor divider and a cap, then a resistor and capacitor per in/out pin.

Yes, this is a pain, eats up board space, and is complicated. It works, though. When biased this way, the CD4053 has little or no distortion and no perceptible switching pops – exactly what we want.

The three SPDT switches are independent. As noted in the illustration, when “A” (pin 11) is low, “X” (pin 14) is connected to “X0” (pin 12). When “A” is high, “X” is connected to “X1” (pin 13).  “B” and “C” do the same switching control for “Y” and “Z”. “Low” means below 1/3 of the Vdd voltage, or 3V in a 9V battery system. “High” is over 6V. Like all CMOS, it’s important to NEVER leave an input pin unterminated, so all control pins that are not being used must be tied to ground or some definite logic level.

When a switch is connected, it looks like a moderately nonlinear resistor between pins. The resistance varies with the signal voltage from pin to pin, which really means that for low distortion, you have to keep the current through the switch low. The switch looks like a 120 to 500 ohm resistor. So if it’s switching things that are themselves 10’s of K ohms or higher, the distortion will be low.


refer to link