Nav:  [home][elec][oscillator] > [ICL8038]
← [What are these? Why?]

Electronics -- ICL8038-based Oscillator


The circuit here presents an Oscillator featuring the following attributes:

  • 1.1A guaranteed output current for sine and triangle waves with thermal shutdown and protection diodes
  • Variable offset and gain for the sine/triangle output
  • CMOS-compatible complementary square wave outputs capable of driving into 50 Ohm with rise/fall times of 30ns at 10V (new in Rev 3).
  • Frequency range 0.5Hz to 300 kHz (but signal degenerates when approaching the upper frequency limit)
  • Single supply operation, 5V to 15V
  • About 50% duty cycle (non-precision and adjustable via a trim pot)

(This is the 3rd revision dated 09/2004.)


The circuit is a fairly easy design: It consists of the actual VCO (ICL8038 with supplement parts), the sine and triangle output stage (LT1210) and the CMOS-compatible output stage using the MOSFET driver chip ICL7667.

Download function generator circuit schematic:
PNG image (854x734 as seen below): funcgen8038-rev3.png (26kb)
High-quality PDF: funcgen8038-rev3.pdf (162kb)
Permission to copy and use this schematic is hereby granted provided credit is given where it is due.

function generator circuit schematic [26kb]

The ICL8038 and all parts around on the lower half of the sheet make up the actual oscillator which is a modified design based on one of the application examples in Intersil's data sheet. There is a large 6-stage switch (S1) to select the major frequency and a logarithmic potentiometer (R2) for minor frequency selection.
I discourage implementing the oscillator as shown in the above sheet because most of the other potentiometers turned out to be without significant enough effect on the output wave form to jusify their application. Furthermore, duty cycle adjustment will not keep a 50% ratio over all frequencies.
The switch S2 is used to choose between sine and triangle wave for the high-current amplifier.

The CD4030 on the left top is used as CMOS-logic signal preconditioning feeding the MOSFET driver IC ICL7667 as output stage for the complementary square wave output. The application of the two XOR gates has the advantage that it can supply a sqare wave and its complement without time offset between them (because CMOS has balanced raise and fall times). Use a bypass capacitor near the ICL7667 device as it can draw quite strong currents and is capable of driving into 50 Ohm up to at least 10V resulting in rise/fall times of 30ns. So, I'm now entirely satisfied with the digital output.

The industry-standard LM741 in combination with R11 is used to adjust the sine/triangle offset level. (Hint: You should probably use something better here - especially more output current cannot hurt.) Since this oscillator is single-supply, it comes handy that you can change the "zero level" of the wave output; you will normally adjust that to half of the supply voltage. R11 is meant to be available to the user.
The actual sine/triangle output amplifier was a bit hard to find because it should be able to drive 1A while still not degenerating signal wave form at some hundred kHz. After some searching, I found the ADSL line driver LT1210 from Linear Technology. Being an ADSL line driver, it has a high GBP and high slew rate while providing the required output current (1.1A guaranteed) at all frequencies in question. The part can be obtained e.g. from Bürklin.
It turned out that this quick current feedback amplifier required very good DC decoupling/bypassing capacitors in order not to start oscillating of its own (at frequencies up to 40MHz). It took me a lot of time to get it work properly; but once that is achieved, the amplifier shows very good performance. (Note: The current implementation is not yet perfect as I noted some months later: It may still start oscillating for parts of the period when driving some special loads.)
R18 is used to trim the VCO output offset from the ICL8038 (about half supply voltage). R12 is meant for the user as gain adjustment to tune the sine/triangle amplitude from zero to more than supply voltage (resulting in wave tips being cut off). The maximum gain is trimmed by R13/R14 and care sould be taken to use proper values (consult LT1210's data sheet for details).

[home] [site map]
Valid HTML 4.01!
Copyright © 2003-2006 by Wolfgang Wieser
Last modified: 2006-06-27 01:23:05