2036 project

Dependencies:   4DGL-uLCD-SE EthernetInterface NTPClient SDFileSystem mbed-rtos mbed wave_player

Fork of 2036lab7_template by jim hamblen

Committer:
baaosen
Date:
Thu Oct 25 14:46:07 2018 +0000
Revision:
1:a5f43fb83aca
ECE 2036 project

Who changed what in which revision?

UserRevisionLine numberNew contents of line
baaosen 1:a5f43fb83aca 1 #include "mbed.h"
baaosen 1:a5f43fb83aca 2 //Class to control an RGB LED using three PWM pins
baaosen 1:a5f43fb83aca 3 class RGBLed
baaosen 1:a5f43fb83aca 4 {
baaosen 1:a5f43fb83aca 5 public:
baaosen 1:a5f43fb83aca 6 RGBLed(PinName redpin, PinName greenpin, PinName bluepin);
baaosen 1:a5f43fb83aca 7 void write(float red,float green, float blue);
baaosen 1:a5f43fb83aca 8 private:
baaosen 1:a5f43fb83aca 9 PwmOut _redpin;
baaosen 1:a5f43fb83aca 10 PwmOut _greenpin;
baaosen 1:a5f43fb83aca 11 PwmOut _bluepin;
baaosen 1:a5f43fb83aca 12 };
baaosen 1:a5f43fb83aca 13
baaosen 1:a5f43fb83aca 14 RGBLed::RGBLed (PinName redpin, PinName greenpin, PinName bluepin)
baaosen 1:a5f43fb83aca 15 : _redpin(redpin), _greenpin(greenpin), _bluepin(bluepin)
baaosen 1:a5f43fb83aca 16 {
baaosen 1:a5f43fb83aca 17 //50Hz PWM clock default a bit too low, go to 2000Hz (less flicker)
baaosen 1:a5f43fb83aca 18 _redpin.period(0.0005);
baaosen 1:a5f43fb83aca 19 }
baaosen 1:a5f43fb83aca 20
baaosen 1:a5f43fb83aca 21 void RGBLed::write(float red,float green, float blue)
baaosen 1:a5f43fb83aca 22 {
baaosen 1:a5f43fb83aca 23 _redpin = red;
baaosen 1:a5f43fb83aca 24 _greenpin = green;
baaosen 1:a5f43fb83aca 25 _bluepin = blue;
baaosen 1:a5f43fb83aca 26 }
baaosen 1:a5f43fb83aca 27 //class could be moved to include file
baaosen 1:a5f43fb83aca 28
baaosen 1:a5f43fb83aca 29
baaosen 1:a5f43fb83aca 30 //Setup RGB led using PWM pins and class