Function Generator

Arduino Function Generator (Part 3)

In my previous posts in this series I looked at a couple of ways to use an Arduino to generate analogue waveforms. In this third part I look at a much simpler, IC-based digital to analog (DAC) circuit to provide the waveforms, and look at ways of changing the frequency of the output. Let’s start with the new circuit. In part two of this series, I used an R-2R ladder resistor network built from discrete components.

555 Astable Oscillator

In my last few posts I’ve been writing about using an Arduino to generate waveforms. Part 3 of that series is still in the works (I’ve not forgotten, honestly!) – but this time I want to write about an alternative way to make a simple waveform: using good old analogue electronics, without the need for a microcontroller. To do this we’ll use the ubiquitous NE555 timer chip (or just a 555 for short).

Arduino Function Generator (Part 2)

Last time, we looked at some Arduino code that we could use to generate some square waves. The problem with the setup we’ve been looking at so far, is that we can only produce signals of one amplitude – equivalent to the HIGH logic level. In order to be able to produce any other waveforms we’ll need to be able to produce a variety of different output voltages. Although the PWM method we looked at last time gives us a way to do this, it’s not suitable for producing variable waveforms – as it’s time-based.

Arduino Function Generator (Part 1)

I was looking around for an interesting Arduino project, and I came up with the idea of making a function generator (also called a signal generator). The reason I picked a function generator is that it gives us the chance of playing with some interesting circuits – and some interesting code… Before we start with that – what is a function generator? A function generator is a circuit that generates some kind of waveform.