Light Show library for organic, calm, light display.

Dependencies:   BLE_API mbed nRF51822

Fork of mbed_blinky by Mbed

rgb_led.cpp

Committer:
nargetdev
Date:
2016-01-30
Revision:
24:52319c0a14b8
Parent:
23:4bb74b53e112
Child:
25:d48f46d753fd

File content as of revision 24:52319c0a14b8:

#include "rgb_led.h"

Rgb::Rgb(PinName r, PinName g, PinName b, Serial* pc):
    red(r), green(g), blue(b), pc(pc) {}

void Rgb::init()
{
    red.period(0.01f);
    green.period(0.01f);
    blue.period(0.01f);
    
    
    // Set RTC time to Wed, 28 Oct 2009 11:35:37
    set_time(1256729737);
    t.start();

}

void Rgb::write(int channel, float intensity)
{
    switch (channel) {
        case RED:
            red.write(intensity);
            break;
        case GREEN:
            green.write(intensity);
            break;
        case BLUE:
            blue.write(intensity);
            break;
    }
}





void Rgb::write_rgb ()
{
    red.write(rgb_c[0]/2.0);
    green.write(rgb_c[1]/2.0);
    blue.write(rgb_c[2]/2.0);
}

//public:



void Rgb::quiet()
{
    red.write(0);
    green.write(0);
    blue.write(0);
    printf("zero_out()\r\n");
}

void Rgb::channel_check()
{

    red.write(1.0f);
    wait(.5);
    red.write(0.0f);

    green.write(1.0f);
    wait(.5);
    green.write(0.0f);

    blue.write(1.0f);
    wait(.5);
    blue.write(0.0f);
}