Expandmenu Shrunk


  • New Envelope Generator

    Beside my own linear EG coding I implemented the code from Ear Level

    http://www.earlevel.com/main/2013/06/03/envelope-generators-adsr-code/

    This picture shows the shortest Attack Time on a STM32F4 Discovery Board with the onboard DAC.

    20160410_191731

    The Next Step is connecting my 2 µControllers via I2C so that i can control the ADSR parameters with my pots.

    Share Button

  • Pot Multiplexer

    After a break of several weeks  I am now back to my Polysnth Project. I decided to use one Controller with graphic display for the panel, keyboard and MIDI stuff and one controller for generating then CVs  LFOs an Envelopes. Here the first picture of one pot multiplexer board.

    PotMultiplexer

    I use the STM32F746 discovery board with the great library from UB
    http://mikrocontroller.bplaced.net/wordpress/

    The control signals for the Multiplexers are generated with an MCP23S17. for converting the pot values i use the internal ADC of the µC in 8 bit mode.

    When a value is changed the new value is send via I2C to the voice µC.

     

     

    Share Button

  • STM32F4 Envelope Generator & LFO

    After writing the common programs for LED blinking, fading etc,
    i started porting my Envelope Generator to my new developing platform.

    STM32 DISCO
    STM32F Discovery Board with MIDI interface

    I used the two built in 12bit DACs to generate the CVs. The update rate is 1ms.

     

    This is dual ADSR configuration
    This is dual ADSR configuration

    This envelope is triggerd by one Gate signal and the attack Rate is controlled by the NoteOn velocity.

     

    ADSR and sine LFO
    ADSR and sine LFO
    ADSR and tri LFO
    ADSR and tri LFO

    The LFOs are DDS based implementations with 12Bit resolution and a tablesize of 256 elements.

     

    Process Time with no optimization O0
    Process Time with no optimization O0

    Generating the two EGs lasts 2µs with no compiler optimizations -O0

    Process Time with no optimization O3
    Process Time with no optimization O3

    With full optimization -O3 it’s only 1 µs

     

    Share Button