Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VAMoS - Very-simple Arty_A7-based Monophonic Synthesizer

This project tries to implement a monophonic synthesizer using the Arty_A7-xc7a100tcsg324-1 board.

All source files are located in src/, except for the WavetableLUT source code which is generated from the Block Memory Generator (Single port ROM, Port width 4096 and data/waveforms/wavetable_16bit.coe as the memory generation file, everything else is the default options) Vivado ip.

Main features:

  • 4 different waveforms to choose from using sw[1:0] ("00": sine, "01": triangle, "10": sawtooth, "11": square)
  • adjustable ADSR (attack, decay, sustain, release) parameters via buttons connected to Pmod JB.
  • midi input support (for now only via pre-written python script)

To try it:

  • run audio_test.py (additional parameters depend on operating system, check the file for more info)

Additional files:

  • waveform_generator.py: generates the .coe files, containing the waveforms, that will be uploaded to the WavetableLUT
  • circuit.jpg is a still photo of the overall circuit. The buttons are associated to each parameter by color (red: attack, green: decay, blue: sustain, yellow: release) and the left ones decrease the corresponding value, while the right ones increase it.

You can check a quick (and badly recorded at 1:30am) demo at this link.

About

Very-simple Arty_A7-based Monophonic Synthesizer

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages