PWM LED script voor RGB led

Dependencies:   mbed

source.cpp

Committer:
lennartgroen
Date:
2018-03-11
Revision:
0:89bb4ba0cb68

File content as of revision 0:89bb4ba0cb68:

#include <mbed.h>

AnalogIn potmeter(A0);
PwmOut rgbblue(D3);
PwmOut rgbgreen(D5);
PwmOut rgbred(D6);

float ledgreen(float analogin)              //Function for converting analog signal to PWM for green led
{
    float pwmout = 1.0;
    if (analogin < 0.40f){
        pwmout = 100 / 33 * analogin;
    }
    else if(analogin > 0.40f){
        pwmout = 3 - (100 /33 * analogin);
    }
return pwmout;
}

float ledred(float analogin)                //Function for converting analog signal to PWM for red led
{
    float pwmout = 1.0;
    if (analogin <0.40f){
        pwmout = 1 - (100/33 * analogin);
    }
    else if (analogin >0.40f){
        pwmout = 100/ 33 * analogin - 1;
    }
        return pwmout;
}
 
float ledblue(float analogin)               //Function for converting analog signal to PWM for blue led
{
    float pwmout = 1.0;
    if (analogin >0.30f && analogin < 0.60f){
        pwmout = 2 - (100/33 * analogin);
    }
    else if (analogin >0.60f){
        pwmout = 100/ 33 * analogin - 2;
    }
        return pwmout;
}            

int main()
{
    while(1){    
    rgbgreen = ledgreen(potmeter);
    rgbred = ledred(potmeter);
    rgbblue = ledblue(potmeter);
    }
}