A program to control an RGB LED via digital outputs

Dependencies:   mbed-renbed

Committer:
RenBuggy
Date:
Fri Apr 15 07:22:32 2016 +0000
Revision:
1:333227007cea
Parent:
0:f8795d549647
.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
RenBuggy 0:f8795d549647 1 /*********************************************************
RenBuggy 0:f8795d549647 2 *RenBED_RGB *
RenBuggy 0:f8795d549647 3 *Author: Elijah Orr *
RenBuggy 0:f8795d549647 4 * *
RenBuggy 0:f8795d549647 5 *A program that cycles through the 9 different states *
RenBuggy 0:f8795d549647 6 *(including off) of a common anode RGB LED that are *
RenBuggy 0:f8795d549647 7 *available via digital pin control. *
RenBuggy 0:f8795d549647 8 *********************************************************/
RenBuggy 0:f8795d549647 9
RenBuggy 0:f8795d549647 10 /* include the mbed library made by mbed.org that contains
RenBuggy 0:f8795d549647 11 classes/functions designed to make programming mbed
RenBuggy 0:f8795d549647 12 microcontrollers easier */
RenBuggy 0:f8795d549647 13 #include "mbed.h"
RenBuggy 0:f8795d549647 14
RenBuggy 0:f8795d549647 15 /* Set up 3 pins as digital out to control the colour
RenBuggy 0:f8795d549647 16 cathodes of the RGB LED */
RenBuggy 1:333227007cea 17 DigitalOut Red(p18);
RenBuggy 1:333227007cea 18 DigitalOut Green(p20);
RenBuggy 1:333227007cea 19 DigitalOut Blue(p19);
RenBuggy 0:f8795d549647 20
RenBuggy 0:f8795d549647 21 /* the main function is where a program will begin to execute. */
RenBuggy 0:f8795d549647 22
RenBuggy 0:f8795d549647 23 /****************************************************************
RenBuggy 0:f8795d549647 24 * Function: main() *
RenBuggy 0:f8795d549647 25 * *
RenBuggy 0:f8795d549647 26 * Sequences an RBG LED connected to the RenBED *
RenBuggy 0:f8795d549647 27 * *
RenBuggy 0:f8795d549647 28 * Inputs: none *
RenBuggy 0:f8795d549647 29 * *
RenBuggy 0:f8795d549647 30 * Returns: none *
RenBuggy 0:f8795d549647 31 ****************************************************************/
RenBuggy 0:f8795d549647 32 int main()
RenBuggy 0:f8795d549647 33 {
RenBuggy 0:f8795d549647 34 /* open a for loop with no parameters to start an infinite loop */
RenBuggy 0:f8795d549647 35 for(;;){
RenBuggy 0:f8795d549647 36 Red = 0; /* As we are controlling colour cathodes, we must pull the pin low to turn on the colour */
RenBuggy 0:f8795d549647 37 wait_ms(1000);
RenBuggy 0:f8795d549647 38 Blue = 0; /* Colours are combined by switching multiple colour pins on at once */
RenBuggy 0:f8795d549647 39 wait_ms(1000);
RenBuggy 0:f8795d549647 40 Red = 1; /* Pull the red pin high to switch it off */
RenBuggy 0:f8795d549647 41 wait_ms(1000);
RenBuggy 0:f8795d549647 42 Green = 0;
RenBuggy 0:f8795d549647 43 wait_ms(1000);
RenBuggy 0:f8795d549647 44 Blue = 1;
RenBuggy 0:f8795d549647 45 wait_ms(1000);
RenBuggy 0:f8795d549647 46 Red = 0;
RenBuggy 0:f8795d549647 47 wait_ms(1000);
RenBuggy 0:f8795d549647 48 Red = 1;
RenBuggy 0:f8795d549647 49 Blue = 0;
RenBuggy 0:f8795d549647 50 wait_ms(1000);
RenBuggy 0:f8795d549647 51 Red = 0;
RenBuggy 0:f8795d549647 52 wait_ms(1000);
RenBuggy 0:f8795d549647 53 Red = Blue = Green = 1; /* Switch off all colours */
RenBuggy 0:f8795d549647 54 wait_ms(1000);
RenBuggy 0:f8795d549647 55 }
RenBuggy 0:f8795d549647 56 }
RenBuggy 0:f8795d549647 57
RenBuggy 0:f8795d549647 58