PWM LED script voor RGB led

Dependencies:   mbed

Revision:
0:89bb4ba0cb68
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/source.cpp	Sun Mar 11 16:13:52 2018 +0000
@@ -0,0 +1,51 @@
+#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);
+    }
+}