Complex Sound Generator


Here's a fun project which turned out quite nice. I call it the SN-Exerciser, a noisemaker box which packs quite a wallop despite needing but two chips. At its heart is the SN76477 complex sound generator chip, along with the PIC16F88. You might want to see a data sheet for the former:


The SN-Exerciser includes a VCO, LFO, sweepable white noise source, envelope generator (Attack/Sustain/Release), VCA, and a separate clock for repetitive triggering. The VCO offers a 20% duty cycle for reedy sounds, and a 50% duty cycle for fuller bass sounds. Moreover, it can be frequency modulated by the LFO at the flip of a switch.

The VCO operates from 2 Hz to 6000 Hz (a 3000:1 sweep range), while the LFO operates from 0.025 Hz to 130 Hz (a 5000:1 sweep range).

The Attack and Release are variable from 5 mS to 5 S. The repeat mode is variable from 12 bpm (beats per minute) on up to 600 bpm.

The whole shebang runs off of two 9V batteries. Current drain has been kept to a very low +/- 5 mA.

All switches are fully decoded; there are no difficult configurations to memorize. Just flip a switch to engage a feature, and the circuit takes care of the messy details for you. And there's no range-switching; all continuous controls simply require a single pot, and that's that.

The unit may be operated in a locked mode (always on), a triggered mode, a continuously repeating mode or a triggered repeating mode.

The output is line level, with a volume control and stereo output jack for connection to an outboard amplifier and speaker.

Let's see the schematic, which is on two sheets:



A couple things to note. Unlike the SN data sheet, I have used transistor current sinks to completely jettison the need for range-switching. Thus, instead of a fixed resistor setting basic parameters, variable current sinks control the VCO, LFO, noise clock and noise filter for an extremely broad range of sounds.

The SN76477 even contributes the regulated +5V needed by the PIC. The latter runs at 1 MHz to keep the current drain 50% below spec which is 10 mA max.

The PIC takes care of converting pot values for repetition rate and sustain times to digital by means of its ADC converters. All in all, I believe it will be hard to find a more complete soundmaker which uses so few components. Speaking of which, here's the parts list:


I designed my own circuit board using FreePCB, and etched the board right in the kitchen. The schematic, and hence netlist, was created with TinyCad, which is also free of charge. It ended up looking like this:


You can get the design files here:
There is one minor kludge to the PCB to be made. On the PCB, pin 16 of IC1 runs to ground. You need to cut that trace, and instead connect it to a voltage divider (12k/1.5k) from +5V to ground. (The schematic shows this update properly). This ensures the pulse width switch really does choose between 20% and 50%. It's an easy alteration to be made; I did it directly on the underside of the PCB.

I used CTS circuit board mounted pots (from Digi-Key), and all of the switches were from Microtivity (ordered via Amazon). The circuit board mounted stereo 3.5mm jack is from All Electronics. All of the other parts are common and junkbox parts should fit the PCB without problem.

Be sure to follow the schematics carefully. There are -9V, +9V and +5V power supply connections. Don't mix them up.

Would you like to see what it can do?


Click to get the source code.
Click to get the schematic PDF.

Next Project: 60 Hz Mains Timebase

No comments:

Post a Comment