![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
This is how i got the hardware to work. Not saying that it cant work any other way. I haven't tied anything of yours in. So likely delete mine from rev 2 or 3, and then put this instead. Then it might work.
Dependencies: mbed
rgb_led.cpp
- Committer:
- PET
- Date:
- 2017-06-22
- Revision:
- 0:c426396d5fdf
File content as of revision 0:c426396d5fdf:
/* -------------------------------------------------------------------------------- -- Project: PRO2 "Awareness and Optimisation of energy consumption" -- Team: Team 1 -- File Name: rgb_led.cpp -- Author: Poul Erik Tjørnfelt -- Date: 07/05-2017 -- Copyright: Open to all -- Version: 0.6 - Creation of file. -- 1.0 - Finished version. -- -- Description: The .cpp file for a class, that creates instances of -- the actual RGB lamp that is used. -- -- -------------------------------------------------------------------------------- */ #include "mbed.h" #include "rgb_led.h" RGB_LED::RGB_LED(PinName pin_R, PinName pin_G, PinName pin_B) :pin_r(pin_R), pin_g(pin_G), pin_b(pin_B) // Constructor { } void RGB_LED::set(float red,float green, float blue) { pin_r = red; // The amount of the single colours that we want in the pin_g = green; // actual colour (ex. purple = 0.7f, 0.0, 0.7f), gotten from pin_b = blue; // www.w3schools.com/colors/colors_picker.asp. /* We only use red, orange (2 parts red, 1 part green), green and blue. */ } void RGB_LED::flash(float per_r, float time_r, float per_g, float time_g, float per_b, float time_b) { pin_r.period(per_r); // Sets the period in seconds of the LED. pin_r.write(time_r); // The %age of the period that the LED is turned on. pin_g.period(per_g); pin_g.write(time_g); pin_b.period(per_b); pin_b.write(time_b); }