Plamen Totev
/
peltier
peltier with 2 fans
Diff: led_light/led_lights.cpp
- Revision:
- 1:3aec489c7366
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/led_light/led_lights.cpp Fri Apr 11 03:35:05 2014 +0000 @@ -0,0 +1,86 @@ +#include "mbed.h" +#include "led_lights.h" +unsigned int led_red_pulsewidth; +unsigned int led_green_pulsewidth; +unsigned int led_blue_pulsewidth; +unsigned int led_period =1000; +unsigned int led_pulsewidth = 0; +unsigned int led_step = 10; + +unsigned int pwm_blue_led(int brightness ) +{ + if (brightness==1) { + led_blue_pulsewidth=led_blue_pulsewidth+led_step; + led_blue.pulsewidth_us(led_blue_pulsewidth); + }; + if (brightness==0) { + led_blue_pulsewidth=led_blue_pulsewidth-led_step; + led_blue.pulsewidth_us(led_blue_pulsewidth); + }; + return led_blue_pulsewidth; +} +unsigned int pwm_green_led(int brightness) +{ + if (brightness==1) { + led_green_pulsewidth=led_green_pulsewidth+led_step; + led_green.pulsewidth_us(led_green_pulsewidth); + } + if (brightness==0) { + led_green_pulsewidth=led_green_pulsewidth-led_step; + led_green.pulsewidth_us(led_green_pulsewidth); + } + return led_green_pulsewidth; +} +unsigned int pwm_red_led(int brightness) +{ + if (brightness==1) { + led_red_pulsewidth=led_red_pulsewidth+led_step; + led_red.pulsewidth_us(led_red_pulsewidth); + } + if (brightness==0) { + led_red_pulsewidth=led_red_pulsewidth-led_step; + led_red.pulsewidth_us(led_red_pulsewidth); + } + return led_red_pulsewidth; +} + +void led_test(void){ + led_blue.period_us(led_period); + led_blue_pulsewidth=led_pulsewidth; + for (int i=1; i<=100; i++) { + pwm_blue_led(1); + wait (0.1); + } + for (int i=1; i<=100; i++) { + pwm_blue_led(0); + wait (0.1); + } + led_blue_pulsewidth=10; // set to 0 + pwm_blue_led(0); // set to 0 + + led_red.period_us(led_period); + led_red_pulsewidth=led_pulsewidth; + for (int i=1; i<=100; i++) { + pwm_red_led(1); + wait (0.1); + } + for (int i=1; i<=100; i++) { + pwm_red_led(0); + wait (0.1); + } + led_red_pulsewidth=10; // set to 0 + pwm_red_led(0); // set to 0 + + led_green.period_us(led_period); + led_green_pulsewidth=led_pulsewidth; + for (int i=1; i<=100; i++) { + pwm_green_led(1); + wait (0.1); + } + for (int i=1; i<=100; i++) { + pwm_green_led(0); + wait (0.1); + } + led_green_pulsewidth=10; // set to 0 + pwm_green_led(0); // set to 0 +} \ No newline at end of file