Guitar Effector using "mbed application board".

Dependencies:   C12832 mbed

Guitar Effector using "mbed application board".

/media/uploads/vaifreak/dscn0187.jpg

/media/uploads/vaifreak/schematic_00.jpg

/media/uploads/vaifreak/schematic_01.jpg

/media/uploads/vaifreak/schematic_02.jpg

MyInputUtil.h

Committer:
vaifreak
Date:
2015-09-24
Revision:
4:dbd755f9fca6
Parent:
2:25adc1277b3e

File content as of revision 4:dbd755f9fca6:

//=============================================================================
//  @author vaifreak
//  @brief  Button/Pot utility.
//=============================================================================
#pragma once

//---------------------------------------------
// 
//---------------------------------------------
class MyButton
{
private:
    DigitalIn *d_in;
    
public:
    int val;
    int val_old;
    int trig_on;
    int trig_off;

    MyButton( PinName pin )
    {
        d_in =  new DigitalIn( pin );
    }

    void Update()
    {
        val_old = val;
        val = d_in->read();
        
        trig_on = 0;
        if( val_old == 0 && val == 1 ) trig_on = 1;

        trig_off = 0;
        if( val_old == 1 && val == 0 ) trig_off = 1;
    }

};

//---------------------------------------------
// 
//---------------------------------------------
#define THRESHOLD 0.02f
class MyVolume
{
private:
    AnalogIn *a_in;
    
public:
    float val;
    float val_old;
    bool dirtyFlag;

    MyVolume( PinName pin )
    {
        a_in =  new AnalogIn( pin );
    }

    void Update()
    {
        dirtyFlag = false;
        
        float v = a_in->read();
        if( fabsf(v - val_old) > THRESHOLD )
        {
            val_old = val;
            val = v;
            dirtyFlag = true;
        }
    }

};