Code Monkey home page Code Monkey logo

arduinomicrosynth's Introduction

ArduinoMicroSynth

Intendo realizzare un synth analogico pilotato via MIDI attraverso un Arduino Uno. Il sintetizzatore è costituito da due organi fondamentali:

-un oscillatore costruito con un integratore e un comparatore i quali forniscono rispettivamente onda quadra e triangolare.Inoltre è presente un
input, ricevente una tensione in ingresso, la quale sceglierà la frequenza dell'oscillatore.

-un amplificatore costruito con un operazionale che regola l'ampiezza dell'onda generata dall'oscillatore. l'amplificatore riceve anch'esso una tensione d'ingresso per regolare il volume in uscita

Il software si occupa di gestire 3 funzionalità principali:

-gestione dei messaggi MIDI in ingresso

-erogazione della tensione per l'oscillatore ,attraverso il PWM generato da Arduino , secondo il messaggio MIDI ricevuto,
opportunamente filtrato.

-erogazione della tensione per l'amplificatore, attraverso un output digitale PWM, filtrato opportunatamente, per ottenere una
tensione continua.

La dinamica è regolabile secondo un ADSR implementato via software, attraverso quattro potenziometri:

  • Attacco: tempo necessario per raggiungere il volume massimo
  • Decadimento: tempo necessario per raggiungere il volume di Sustain
  • Sustain: ampiezza a cui il volume rimarrà costante finchè il tasto rimane premuto, dopo il tempo di decadimento
  • Rilascio: tempo in cui, una volta rilasciato il tasto, il volume arriverà a zero

arduinomicrosynth's People

Contributors

keasys avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.