Sine Wave Generator Using a Johnson Counter
This is a 1KHz audio oscillator using a Johnson Counter. ARTA software (http://www.artalabs.hr/) reports THD+Noise of 0.3%.
The Johnson Counter is very interesting. I believe I first ran into it in Don Lancaster’s classic 1977 CMOS Cookbook. My circuit uses an opamp summing junction to make the contribution of the resistor currents more accurate.
When you start from reset it clocks in ones until it is all ones. Then it clocks in zeros until it is all zeros. You get a 16-bit sequence from an 8-bit shift register. Then it repeats endlessly.
Since the sine wave is symmetrical you can choose the proper resistors to make an accurate offset sine wave that produces 16 samples. Notice that the resistors are symmetrical.
Each resistor adds a summing current at the proper time and then removes it at the proper time.
The accuracy of the sine wave depends on the accuracy of the resistors. Here I am using 1% resistors. I then use a first order filter followed by a second order filer to match to the frequency of the sine wave. With this I have measured a THD+Noise of 0.3% at 1 KHz.
There are two things to consider.
1. In order to reduce the THD+Noise further we would need to use 0.1% resistors or do more filtering. While 1% resistors are cheap, 0.1% resistors are expensive. It would be cheaper to use a microcontroller (such as the MSP430G2402) with a 12-bit SPI DAC (MCP4921).
2. Even at 0.3% THD+Noise we would need a tracking filter in order to get a wide range of frequencies.
But if you only need a narrow range of frequencies and 0.3% is good enough, then this is a low-cost way to do it.
There is a line output controlled by trim pot R20 and a microphone level output controlled by R23. The frequency is controlled by R4.
This is designed for 1KHz. Other frequencies can be produced if you change the values in the filters.
This board runs on +12VDC that regulates it down to +9VDC and uses an ICL7660 to produce -9V. The reason I took +12V down to +9V is because I want to be able to use the very cheap +12V switching power supplies from China via eBay. Some of these power supplies have 0.5V of hash on the output. Most of them are sold as LED power supplies (LEDs shouldn’t mind the hash) but some are sold as CCTV supplies. I bought two identical supplies (12V 1A) labeled for CCTV. With a load of 120 mA one had 50mV of hash (excellent) but the other had 200mV of hash (crap).
You can operate it from a 9V transistor battery by leaving out U1 (7809) and jumpering pins 1 and 3.
I recommend using IC sockets with machine-tooled pins and not the ones with leaf springs.
If you are not already a Maker (and you want to be one) see my tutorial on Making Things at www.jmargolin.com/making/jm_making.htm
JM
Sine Wave Generator Using a Johnson Counter
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
- Comments(2)
- Likes(3)
- Engineer Aug 30,2024
- Ilya Jun 29,2019
- JOSE ADRIANO PEREIRA SANTOS May 24,2019
- 10 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
-
3design
-
3usability
-
3creativity
-
3content
-
8design
-
8usability
-
7creativity
-
9content
-
7design
-
6usability
-
7creativity
-
6content
-
6design
-
5usability
-
5creativity
-
2content
-
6design
-
1usability
-
1creativity
-
1content
-
5design
-
5usability
-
5creativity
-
1content
-
6design
-
6usability
-
6creativity
-
6content
-
9design
-
9usability
-
9creativity
-
9content
-
9design
-
8usability
-
9creativity
-
9content
-
10design
-
9usability
-
9creativity
-
9content
More by Jed Margolin
- MyTX4 To Replace The La Crosse TX4U My TX4 Wireless Sensor Transmitter replaces the La Crosse TX4U wireless sensor which is no longer ma...
- Audio Tone Burst Generator The Audio Tone Burst Generator produces a periodic burst of tone at a User-selected audio frequency ...
- jm_rpi-pico-v6 The Raspberry Pi Pico module is amazing. It is much faster than the Texas Instruments MSP430G2xxx fa...
- Woof Meter The Woof Meter is for testing subwoofer speakers to measure their Thiele-Small (TS) parameters. Thes...
- Precision Low Frequency Signal Generator The Precision Low Frequency Signal Generator produces a User-selected signal from 10Hz to 90Hz with ...
- GPS Clock and Armageddon Alarm A GPS Module using the U-blox NEO6MV2 is used to receive the GPS timing signals to show the exact ti...
- PB1 - Prototyping Board with Ground Plane and Power Supplies This board is for prototyping circuits using wire wrap. It has a good ground plane and power supplie...
- Flame Switch This board simulates the electrical characteristic of a flame for troubleshooting residential gas fu...
- PB2 - Prototyping Board for MSP430G2xxx This board is for prototyping circuits with the Texas Instruments MSP430G2xxx microcontroller. It ca...
- GP1 - Board for demonstrating how to use an MSP430G2xxx This board is for demonstrating how to use the Texas Instruments MSP430G2xxx microcontroller. The bo...
- VGA Adapter for Atari Hard Drivin’/Race Drivin’ Cockpit This VGA Adapter for Atari Hard Drivin’/Race Drivin’ Cockpit also provides for delaying horizontal a...
- Phone Selector/Adapter 2-line to 1-line This converts an RJ11 line with two phone pairs on it to two single line RJ11 jacks. It provides two...
- Triangle Wave Generator With Adjustable Symmetry This is a simple circuit using only one IC, a TL084 quad opamp. The integrator integrates the output...
- Voltage Controlled Audio Oscillator with LM13700s This is a voltage controlled audio oscillator using two LM13700s. At 1 KHz ARTA software (http://www...
- Oscillator - Xtal or RC This is an oscillator that can be stuffed to be either a crystal oscillator (with a 74HC04) or an RC...
- Sine Wave Generator Using a Johnson Counter This is a 1KHz audio oscillator using a Johnson Counter. ARTA software (http://www.artalabs.hr/) rep...
- VGA Adapter For Tektronix TDS 360 Oscilloscope The Tektronix TDS 360 is a two-channel digital oscilloscope from the middle 1990s. The sampling rate...
- Atari BattleZone Engine Sound Generator Atari’s BattleZone game is considered the first real 3D video game. I did the 3D graphics algorithms...
-
-
-
kmMiniSchield MIDI I/O - IN/OUT/THROUGH MIDI extension for kmMidiMini
111 0 0 -
DIY Laser Power Meter with Arduino
162 0 2 -
-
-
Box & Bolt, 3D Printed Cardboard Crafting Tools
155 0 2 -
-
A DIY Soldering Station Perfect for Learning (Floppy Soldering Station 3.0)
555 0 2