RGB LED Class

Dependencies:   mbed

Fork of RGBLED by Steven Cheldelin

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers rgbled.cpp Source File

rgbled.cpp

00001 #include "mbed.h"
00002 #include "rgbled.h"
00003 
00004 rgbled::rgbled(PinName pin_red, PinName pin_green, PinName pin_blue)
00005              : _pin_red(pin_red), _pin_green(pin_green), _pin_blue(pin_blue){
00006     _on = false;
00007     _off = !_on;
00008     _pin_red = _off;
00009     _pin_green = _off;
00010     _pin_blue = _off;
00011 }
00012 
00013 void rgbled::active(bool a){
00014     _on = a;
00015     _off = !_on;
00016 }
00017     
00018 void rgbled::_none(void){
00019     _pin_red = _off;
00020     _pin_green = _off;
00021     _pin_blue = _off;
00022 }
00023 
00024 void rgbled::_red(void){
00025     _pin_red = _on;
00026     _pin_green = _off;
00027     _pin_blue = _off;
00028 }
00029 
00030 void rgbled::_green(void){
00031     _pin_red = _off;
00032     _pin_green = _on;
00033     _pin_blue = _off;
00034 }
00035 
00036 void rgbled::_blue(void){
00037     _pin_red = _off;
00038     _pin_green = _off;
00039     _pin_blue = _on;
00040 }
00041 
00042 void rgbled::set(color c){
00043         switch (c) {
00044             case none :
00045                 _none();
00046                 break;
00047             case red :
00048                 _red();
00049                 break;
00050             case green :
00051                 _green();
00052                 break;
00053             case blue :
00054                 _blue();
00055                 break;
00056         }
00057 }