A program to control an RGB LED using PWM outputs from the RenBED.

Dependencies:   mbed-renbed

Committer:
RenBuggy
Date:
Fri Apr 15 08:38:19 2016 +0000
Revision:
2:c9141fc3900d
Parent:
1:403bf5e66837
.;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RenBuggy 0:f4b16c0de4df 1 /*********************************************************
RenBuggy 1:403bf5e66837 2 *RenBED_RGB_PWM *
RenBuggy 0:f4b16c0de4df 3 *Author: Elijah Orr *
RenBuggy 0:f4b16c0de4df 4 * *
RenBuggy 0:f4b16c0de4df 5 *A program that changes the colour of an RGB LED by *
RenBuggy 0:f4b16c0de4df 6 *changing the duty cycle of PWM outputs to the colour *
RenBuggy 0:f4b16c0de4df 7 *cathodes of the LED. *
RenBuggy 0:f4b16c0de4df 8 *********************************************************/
RenBuggy 0:f4b16c0de4df 9
RenBuggy 0:f4b16c0de4df 10 /* include the mbed library made by mbed.org that contains
RenBuggy 0:f4b16c0de4df 11 classes/functions designed to make programming mbed
RenBuggy 0:f4b16c0de4df 12 microcontrollers easier */
RenBuggy 0:f4b16c0de4df 13 #include "mbed.h"
RenBuggy 0:f4b16c0de4df 14
RenBuggy 0:f4b16c0de4df 15 /* Set up 3 pins as PWM out to control the colour
RenBuggy 0:f4b16c0de4df 16 cathodes of the RGB LED */
RenBuggy 0:f4b16c0de4df 17 PwmOut Red(PWM5);
RenBuggy 0:f4b16c0de4df 18 PwmOut Green(PWM7);
RenBuggy 0:f4b16c0de4df 19 PwmOut Blue(PWM6);
RenBuggy 0:f4b16c0de4df 20
RenBuggy 0:f4b16c0de4df 21 /* the main function is where a program will begin to execute. */
RenBuggy 0:f4b16c0de4df 22
RenBuggy 0:f4b16c0de4df 23 /****************************************************************
RenBuggy 0:f4b16c0de4df 24 * Function: main() *
RenBuggy 0:f4b16c0de4df 25 * *
RenBuggy 0:f4b16c0de4df 26 * Sequences an RBG LED connected to the RenBED *
RenBuggy 0:f4b16c0de4df 27 * *
RenBuggy 0:f4b16c0de4df 28 * Inputs: none *
RenBuggy 0:f4b16c0de4df 29 * *
RenBuggy 0:f4b16c0de4df 30 * Returns: none *
RenBuggy 0:f4b16c0de4df 31 ****************************************************************/
RenBuggy 0:f4b16c0de4df 32 int main()
RenBuggy 0:f4b16c0de4df 33 {
RenBuggy 0:f4b16c0de4df 34 /* open a for loop with no parameters to start an infinite loop */
RenBuggy 0:f4b16c0de4df 35 for(;;){
RenBuggy 0:f4b16c0de4df 36 Red = 0.7; /* Duty cycle on red pin set to 70% so red is on 30% of the time */
RenBuggy 0:f4b16c0de4df 37 Green = 0.4;
RenBuggy 2:c9141fc3900d 38 wait_ms(3000); /* wait for 3000 ms (3 seconds) */
RenBuggy 0:f4b16c0de4df 39 Red = 1; /* Duty cycle set to 100% to turn red off */
RenBuggy 1:403bf5e66837 40 Blue = 0; /* Duty cycle set to 0% to turn blue fully on */
RenBuggy 0:f4b16c0de4df 41 wait_ms(3000);
RenBuggy 0:f4b16c0de4df 42 Green = 1;
RenBuggy 0:f4b16c0de4df 43 wait_ms(3000);
RenBuggy 0:f4b16c0de4df 44 Red = Green = Blue = 1;
RenBuggy 0:f4b16c0de4df 45 wait_ms(3000);
RenBuggy 0:f4b16c0de4df 46 Blue = 0;
RenBuggy 0:f4b16c0de4df 47 wait_ms(3000);
RenBuggy 0:f4b16c0de4df 48 }
RenBuggy 0:f4b16c0de4df 49 }
RenBuggy 0:f4b16c0de4df 50
RenBuggy 0:f4b16c0de4df 51