Plamen Totev
/
led
myled
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 #include "led.h" 00003 //#include "mbed.h" 00004 00005 PwmOut led_blue(PTA5); 00006 PwmOut led_green(PTC8); 00007 PwmOut led_red (PTC9); 00008 //unsigned int led_period = 1000; 00009 //unsigned int led_pulsewidth = 50; 00010 //unsigned int led_step =10; 00011 //unsigned int pwm_red_led(int brightness); 00012 //unsigned int pwm_blue_led(int brightness); 00013 //unsigned int pwm_green_led(int brightness); 00014 unsigned int led_red_pulsewidth; 00015 unsigned int led_green_pulsewidth; 00016 unsigned int led_blue_pulsewidth; 00017 unsigned int led_period =1000; 00018 unsigned int led_pulsewidth = 0; 00019 unsigned int led_step = 10; 00020 00021 unsigned int pwm_blue_led(int brightness ) 00022 { 00023 if (brightness==1) { 00024 led_blue_pulsewidth=led_blue_pulsewidth+led_step; 00025 led_blue.pulsewidth_us(led_blue_pulsewidth); 00026 }; 00027 if (brightness==0) { 00028 led_blue_pulsewidth=led_blue_pulsewidth-led_step; 00029 led_blue.pulsewidth_us(led_blue_pulsewidth); 00030 }; 00031 return led_blue_pulsewidth; 00032 } 00033 unsigned int pwm_green_led(int brightness) 00034 { 00035 if (brightness==1) { 00036 led_green_pulsewidth=led_green_pulsewidth+led_step; 00037 led_green.pulsewidth_us(led_green_pulsewidth); 00038 } 00039 if (brightness==0) { 00040 led_green_pulsewidth=led_green_pulsewidth-led_step; 00041 led_green.pulsewidth_us(led_green_pulsewidth); 00042 } 00043 return led_green_pulsewidth; 00044 } 00045 unsigned int pwm_red_led(int brightness) 00046 { 00047 if (brightness==1) { 00048 led_red_pulsewidth=led_red_pulsewidth+led_step; 00049 led_red.pulsewidth_us(led_red_pulsewidth); 00050 } 00051 if (brightness==0) { 00052 led_red_pulsewidth=led_red_pulsewidth-led_step; 00053 led_red.pulsewidth_us(led_red_pulsewidth); 00054 } 00055 return led_red_pulsewidth; 00056 } 00057 int main(void) 00058 { 00059 while(1) { 00060 led_blue.period_us(led_period); 00061 led_blue_pulsewidth=led_pulsewidth; 00062 for (int i=1; i<=100; i++) { 00063 pwm_blue_led(1); 00064 wait (0.1); 00065 } 00066 for (int i=1; i<=100; i++) { 00067 pwm_blue_led(0); 00068 wait (0.1); 00069 } 00070 led_blue_pulsewidth=10; // set to 0 00071 pwm_blue_led(0); // set to 0 00072 00073 led_red.period_us(led_period); 00074 led_red_pulsewidth=led_pulsewidth; 00075 for (int i=1; i<=100; i++) { 00076 pwm_red_led(1); 00077 wait (0.1); 00078 } 00079 for (int i=1; i<=100; i++) { 00080 pwm_red_led(0); 00081 wait (0.1); 00082 } 00083 led_red_pulsewidth=10; // set to 0 00084 pwm_red_led(0); // set to 0 00085 00086 led_green.period_us(led_period); 00087 led_green_pulsewidth=led_pulsewidth; 00088 for (int i=1; i<=100; i++) { 00089 pwm_green_led(1); 00090 wait (0.1); 00091 } 00092 for (int i=1; i<=100; i++) { 00093 pwm_green_led(0); 00094 wait (0.1); 00095 } 00096 led_green_pulsewidth=10; // set to 0 00097 pwm_green_led(0); // set to 0 00098 } 00099 00100 }
Generated on Mon Jul 25 2022 00:08:13 by 1.7.2