full color LED brightness change code

Dependencies:   mbed

main.cpp

Committer:
kohacraft
Date:
2015-07-29
Revision:
0:e96e8be829c4

File content as of revision 0:e96e8be829c4:

#include "mbed.h"

PwmOut red(dp1);    //dp1を赤のLEDのPWM出力にします
PwmOut green(dp2);  //dp2を緑のLEDのPWM出力にします
PwmOut blue(dp18);  //dp18を青のLEDのPWM出力にします

int main() {
    while(1) {

        red = 0.0;
        green = 0.0;
        blue = 0.0;
    
        /***  1色だけ   ***/
    
        //赤をゆっくり明るくしていく
        for( float i = 0 ; i < 1.0 ; i+=0.005 ) // iの値を0.005ずつ増やしていく
        {
            red = i;
            wait( 0.01 ); //0.01秒待つ
        }
        wait( 0.5 );
        //赤をゆっくり暗くしていく
        for( float i = 1 ; i >= 0.0 ; i-=0.005 )
        {
            red = i;
            wait( 0.01 );
        }
            
        //緑をゆっくり明るくしていく
        for( float i = 0 ; i < 1.0 ; i+=0.005 )
        {
            green = i;
            wait( 0.01 );
        }
        wait( 0.5 );
        //緑をゆっくり暗くしていく
        for( float i = 1 ; i >= 0.0 ; i-=0.005 )
        {
            green = i;
            wait( 0.01 );
        }
    
        //青をゆっくり明るくしていく
        for( float i = 0 ; i < 1.0 ; i+=0.005 )
        {
            blue = i;
            wait( 0.01 );
        }
        wait( 0.5 );
        //青をゆっくり暗くしていく
        for( float i = 1 ; i >= 0.0 ; i-=0.005 )
        {
            blue = i;
            wait( 0.01 );
        }
        wait( 0.5 );
    
    
        /***  2色だけ   ***/
    
        //赤をゆっくり明るくしていく
        for( float i = 0 ; i < 1.0 ; i+=0.005 )
        {
            red = i;
            wait( 0.01 );
        }
        wait( 0.5 );
    
        //緑をゆっくり明るくしていく
        for( float i = 0 ; i < 1.0 ; i+=0.005 )
        {
            green = i;
            wait( 0.01 );
        }
        wait( 0.5 );
    
        //赤をゆっくり暗くしていく
        for( float i = 1 ; i >= 0.0 ; i-=0.005 )
        {
            red = i;
            wait( 0.01 );
        }
        wait( 0.5 );
    
        //青をゆっくり明るくしていく
        for( float i = 0 ; i < 1.0 ; i+=0.005 )
        {
            blue = i;
            wait( 0.01 );
        }
        wait( 0.5 );
    
        //緑をゆっくり暗くしていく
        for( float i = 1 ; i >= 0.0 ; i-=0.005 )
        {
            green = i;
            wait( 0.01 );
        }
        wait( 0.5 );
    
        //赤をゆっくり明るくしていく
        for( float i = 0 ; i < 1.0 ; i+=0.005 )
        {
            red = i;
            wait( 0.01 );
        }
        wait( 0.5 );
    
        /***  3色   ***/
        //緑をゆっくり明るくしていく
        for( float i = 0 ; i < 1.0 ; i+=0.005 )
        {
            green = i;
            wait( 0.01 );
        }
        wait( 0.5 );
    
        //3色ををゆっくり暗くしていく
        for( float i = 1 ; i >= 0.0 ; i-=0.005 )
        {
            red = i;
            green = i;
            blue = i;
            wait( 0.01 );
    }


    }
}