Working

Dependencies:   mbed

Fork of led by Plamen Totev

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers led_lights.cpp Source File

led_lights.cpp

00001 #include "mbed.h"
00002 #include "led_lights.h"
00003 unsigned int led_red_pulsewidth;
00004 unsigned int led_green_pulsewidth;
00005 unsigned int led_blue_pulsewidth;
00006 unsigned int led_period =1000;
00007 unsigned int led_pulsewidth = 0;
00008 unsigned int led_step = 10;
00009 
00010 unsigned int pwm_blue_led(int brightness )
00011 {
00012     if (brightness==1) {
00013         led_blue_pulsewidth=led_blue_pulsewidth+led_step;
00014         led_blue.pulsewidth_us(led_blue_pulsewidth);
00015     };
00016     if (brightness==0) {
00017         led_blue_pulsewidth=led_blue_pulsewidth-led_step;
00018         led_blue.pulsewidth_us(led_blue_pulsewidth);
00019     };
00020     return led_blue_pulsewidth;
00021 }
00022 unsigned int pwm_green_led(int brightness)
00023 {
00024     if (brightness==1) {
00025         led_green_pulsewidth=led_green_pulsewidth+led_step;
00026         led_green.pulsewidth_us(led_green_pulsewidth);
00027     }
00028     if (brightness==0) {
00029         led_green_pulsewidth=led_green_pulsewidth-led_step;
00030         led_green.pulsewidth_us(led_green_pulsewidth);
00031     }
00032     return led_green_pulsewidth;
00033 }
00034 unsigned int pwm_red_led(int brightness)
00035 {
00036     if (brightness==1) {
00037         led_red_pulsewidth=led_red_pulsewidth+led_step;
00038         led_red.pulsewidth_us(led_red_pulsewidth);
00039     }
00040     if (brightness==0) {
00041         led_red_pulsewidth=led_red_pulsewidth-led_step;
00042         led_red.pulsewidth_us(led_red_pulsewidth);
00043     }
00044     return led_red_pulsewidth;
00045 }
00046 
00047 void led_test(void){
00048     led_blue.period_us(led_period);
00049     led_blue_pulsewidth=led_pulsewidth;
00050     for (int i=1; i<=100; i++) {
00051         pwm_blue_led(1);
00052         wait (0.1);
00053     }
00054     for (int i=1; i<=100; i++) {
00055         pwm_blue_led(0);
00056         wait (0.1);
00057     }
00058     led_blue_pulsewidth=10;    // set to 0
00059     pwm_blue_led(0);           // set to 0
00060 
00061     led_red.period_us(led_period);
00062     led_red_pulsewidth=led_pulsewidth;
00063     for (int i=1; i<=100; i++) {
00064         pwm_red_led(1);
00065         wait (0.1);
00066     }
00067     for (int i=1; i<=100; i++) {
00068         pwm_red_led(0);
00069         wait (0.1);
00070     }
00071     led_red_pulsewidth=10;    // set to 0
00072     pwm_red_led(0);           // set to 0
00073     
00074     led_green.period_us(led_period);
00075     led_green_pulsewidth=led_pulsewidth;
00076     for (int i=1; i<=100; i++) {
00077         pwm_green_led(1);
00078         wait (0.1);
00079     }
00080     for (int i=1; i<=100; i++) {
00081         pwm_green_led(0);
00082         wait (0.1);
00083     }
00084     led_green_pulsewidth=10;    // set to 0
00085     pwm_green_led(0);           // set to 0
00086 }