Nano Waveform Generator
Versatile low-cost audio signal generator and pulse generator (up to 4MHz) based on Arduino Nano MCU module.
Waveform generators, also known as “function generators”, have been popular DIY projects since the beginning of hobby electronics. There are numerous designs out there offering a broad range of functional features and design complexities. The “Nano” waveform generator sits near the low end of complexity and build cost in the hardware design. However, it packs a lot of punch into an 8-bit AVR micro-controller to produce a useful instrument for testing audio and low-speed digital equipment.
Audio signal generator apps for smart phones and computers are available, but these don't provide the convenience and versatility of a dedicated device, in much the same way as phone alarm-clock apps don't.
The parts are housed in a small plastic box (130 x 70 x 40mm) making the unit easily portable. It is powered by a 5V USB plug-pack. All the parts needed to build a Nano wave-generator are available at ridiculously low prices from online suppliers.
The design is based on an Arduino Nano (or compatible) micro-controller board plus a 2-line x 16-character LCD module (1602A) with LED back-light, four push-buttons and a potentiometer feeding into an ADC input. The pot controls either signal frequency or pulse duty, depending on the selected mode. Output connectors are panel-mount RCA phono sockets.
For details on design and construction, see the attached PDF document under the tab "Project Elements | Other".
Functional Specification
WAVE mode
Wave-shapes: SINE, TRIANGLE, SQUARE, SAWTOOTH (+/-)
Frequency:
Low range: 1 Hz ~ 100 Hz in 12 preset steps
High range: 80 Hz ~ 8 kHz in 18 preset steps
or 50 Hz ~ 5 kHz continuously variable using pot
Noise: Filtered with variable cut-off frequency, or "white" (unfiltered).
Output coupling: AC or DC
Output level: 100mV, 200mV, 500mV, 1V, 2V, 4V peak-to-peak
PWM DAC resolution: 8 bits (0.4% FS, approx. 4mV at 1Vp-p)
PULSE mode
Frequency:
Low range: 1 Hz ~ 1000 Hz in 16 preset steps
High range: 1 kHz ~ 4 MHz in 16 preset steps
Duty / pulse width: 1 ~ 99 % variable using pot, quantized values
Output level: 3.3V or 5V fixed, 20mA source/sink (at 5V)
Audio signal generator apps for smart phones and computers are available, but these don't provide the convenience and versatility of a dedicated device, in much the same way as phone alarm-clock apps don't.
The parts are housed in a small plastic box (130 x 70 x 40mm) making the unit easily portable. It is powered by a 5V USB plug-pack. All the parts needed to build a Nano wave-generator are available at ridiculously low prices from online suppliers.
The design is based on an Arduino Nano (or compatible) micro-controller board plus a 2-line x 16-character LCD module (1602A) with LED back-light, four push-buttons and a potentiometer feeding into an ADC input. The pot controls either signal frequency or pulse duty, depending on the selected mode. Output connectors are panel-mount RCA phono sockets.
For details on design and construction, see the attached PDF document under the tab "Project Elements | Other".
Functional Specification
WAVE mode
Wave-shapes: SINE, TRIANGLE, SQUARE, SAWTOOTH (+/-)
Frequency:
Low range: 1 Hz ~ 100 Hz in 12 preset steps
High range: 80 Hz ~ 8 kHz in 18 preset steps
or 50 Hz ~ 5 kHz continuously variable using pot
Noise: Filtered with variable cut-off frequency, or "white" (unfiltered).
Output coupling: AC or DC
Output level: 100mV, 200mV, 500mV, 1V, 2V, 4V peak-to-peak
PWM DAC resolution: 8 bits (0.4% FS, approx. 4mV at 1Vp-p)
PULSE mode
Frequency:
Low range: 1 Hz ~ 1000 Hz in 16 preset steps
High range: 1 kHz ~ 4 MHz in 16 preset steps
Duty / pulse width: 1 ~ 99 % variable using pot, quantized values
Output level: 3.3V or 5V fixed, 20mA source/sink (at 5V)
Mises à jour de l'auteur