myled

Dependencies:   mbed

Committer:
redplam
Date:
Tue Apr 08 01:53:51 2014 +0000
Revision:
0:f134649523c1
myled

Who changed what in which revision?

UserRevisionLine numberNew contents of line
redplam 0:f134649523c1 1 #include "mbed.h"
redplam 0:f134649523c1 2 #include "led.h"
redplam 0:f134649523c1 3 //#include "mbed.h"
redplam 0:f134649523c1 4
redplam 0:f134649523c1 5 PwmOut led_blue(PTA5);
redplam 0:f134649523c1 6 PwmOut led_green(PTC8);
redplam 0:f134649523c1 7 PwmOut led_red (PTC9);
redplam 0:f134649523c1 8 //unsigned int led_period = 1000;
redplam 0:f134649523c1 9 //unsigned int led_pulsewidth = 50;
redplam 0:f134649523c1 10 //unsigned int led_step =10;
redplam 0:f134649523c1 11 //unsigned int pwm_red_led(int brightness);
redplam 0:f134649523c1 12 //unsigned int pwm_blue_led(int brightness);
redplam 0:f134649523c1 13 //unsigned int pwm_green_led(int brightness);
redplam 0:f134649523c1 14 unsigned int led_red_pulsewidth;
redplam 0:f134649523c1 15 unsigned int led_green_pulsewidth;
redplam 0:f134649523c1 16 unsigned int led_blue_pulsewidth;
redplam 0:f134649523c1 17 unsigned int led_period =1000;
redplam 0:f134649523c1 18 unsigned int led_pulsewidth = 0;
redplam 0:f134649523c1 19 unsigned int led_step = 10;
redplam 0:f134649523c1 20
redplam 0:f134649523c1 21 unsigned int pwm_blue_led(int brightness )
redplam 0:f134649523c1 22 {
redplam 0:f134649523c1 23 if (brightness==1) {
redplam 0:f134649523c1 24 led_blue_pulsewidth=led_blue_pulsewidth+led_step;
redplam 0:f134649523c1 25 led_blue.pulsewidth_us(led_blue_pulsewidth);
redplam 0:f134649523c1 26 };
redplam 0:f134649523c1 27 if (brightness==0) {
redplam 0:f134649523c1 28 led_blue_pulsewidth=led_blue_pulsewidth-led_step;
redplam 0:f134649523c1 29 led_blue.pulsewidth_us(led_blue_pulsewidth);
redplam 0:f134649523c1 30 };
redplam 0:f134649523c1 31 return led_blue_pulsewidth;
redplam 0:f134649523c1 32 }
redplam 0:f134649523c1 33 unsigned int pwm_green_led(int brightness)
redplam 0:f134649523c1 34 {
redplam 0:f134649523c1 35 if (brightness==1) {
redplam 0:f134649523c1 36 led_green_pulsewidth=led_green_pulsewidth+led_step;
redplam 0:f134649523c1 37 led_green.pulsewidth_us(led_green_pulsewidth);
redplam 0:f134649523c1 38 }
redplam 0:f134649523c1 39 if (brightness==0) {
redplam 0:f134649523c1 40 led_green_pulsewidth=led_green_pulsewidth-led_step;
redplam 0:f134649523c1 41 led_green.pulsewidth_us(led_green_pulsewidth);
redplam 0:f134649523c1 42 }
redplam 0:f134649523c1 43 return led_green_pulsewidth;
redplam 0:f134649523c1 44 }
redplam 0:f134649523c1 45 unsigned int pwm_red_led(int brightness)
redplam 0:f134649523c1 46 {
redplam 0:f134649523c1 47 if (brightness==1) {
redplam 0:f134649523c1 48 led_red_pulsewidth=led_red_pulsewidth+led_step;
redplam 0:f134649523c1 49 led_red.pulsewidth_us(led_red_pulsewidth);
redplam 0:f134649523c1 50 }
redplam 0:f134649523c1 51 if (brightness==0) {
redplam 0:f134649523c1 52 led_red_pulsewidth=led_red_pulsewidth-led_step;
redplam 0:f134649523c1 53 led_red.pulsewidth_us(led_red_pulsewidth);
redplam 0:f134649523c1 54 }
redplam 0:f134649523c1 55 return led_red_pulsewidth;
redplam 0:f134649523c1 56 }
redplam 0:f134649523c1 57 int main(void)
redplam 0:f134649523c1 58 {
redplam 0:f134649523c1 59 while(1) {
redplam 0:f134649523c1 60 led_blue.period_us(led_period);
redplam 0:f134649523c1 61 led_blue_pulsewidth=led_pulsewidth;
redplam 0:f134649523c1 62 for (int i=1; i<=100; i++) {
redplam 0:f134649523c1 63 pwm_blue_led(1);
redplam 0:f134649523c1 64 wait (0.1);
redplam 0:f134649523c1 65 }
redplam 0:f134649523c1 66 for (int i=1; i<=100; i++) {
redplam 0:f134649523c1 67 pwm_blue_led(0);
redplam 0:f134649523c1 68 wait (0.1);
redplam 0:f134649523c1 69 }
redplam 0:f134649523c1 70 led_blue_pulsewidth=10; // set to 0
redplam 0:f134649523c1 71 pwm_blue_led(0); // set to 0
redplam 0:f134649523c1 72
redplam 0:f134649523c1 73 led_red.period_us(led_period);
redplam 0:f134649523c1 74 led_red_pulsewidth=led_pulsewidth;
redplam 0:f134649523c1 75 for (int i=1; i<=100; i++) {
redplam 0:f134649523c1 76 pwm_red_led(1);
redplam 0:f134649523c1 77 wait (0.1);
redplam 0:f134649523c1 78 }
redplam 0:f134649523c1 79 for (int i=1; i<=100; i++) {
redplam 0:f134649523c1 80 pwm_red_led(0);
redplam 0:f134649523c1 81 wait (0.1);
redplam 0:f134649523c1 82 }
redplam 0:f134649523c1 83 led_red_pulsewidth=10; // set to 0
redplam 0:f134649523c1 84 pwm_red_led(0); // set to 0
redplam 0:f134649523c1 85
redplam 0:f134649523c1 86 led_green.period_us(led_period);
redplam 0:f134649523c1 87 led_green_pulsewidth=led_pulsewidth;
redplam 0:f134649523c1 88 for (int i=1; i<=100; i++) {
redplam 0:f134649523c1 89 pwm_green_led(1);
redplam 0:f134649523c1 90 wait (0.1);
redplam 0:f134649523c1 91 }
redplam 0:f134649523c1 92 for (int i=1; i<=100; i++) {
redplam 0:f134649523c1 93 pwm_green_led(0);
redplam 0:f134649523c1 94 wait (0.1);
redplam 0:f134649523c1 95 }
redplam 0:f134649523c1 96 led_green_pulsewidth=10; // set to 0
redplam 0:f134649523c1 97 pwm_green_led(0); // set to 0
redplam 0:f134649523c1 98 }
redplam 0:f134649523c1 99
redplam 0:f134649523c1 100 }