hh
Dependencies: DISCO_L475VG_IOT01A_wifi
LEDcontrol.cpp
- Committer:
- ascension2
- Date:
- 2019-08-20
- Revision:
- 0:db42952db1a5
File content as of revision 0:db42952db1a5:
#include "mbed.h" #include "init_Pin.h" //void setRGB(float Red,float Blue,float Green,int led_info); void pwmLed(); float const variation = 0.00392; // 1/255 float red_value = 0; float green_value = 0; float blue_value = 0; int automode=0; void setRGB(float Red,float Green,float Blue,int led_info) { red_value = Red; blue_value = Blue; green_value = Green; if (led_info ==0) // led off { red_value =0; blue_value =0; green_value =0; } else if(led_info ==1) // led on { red_value =255; blue_value =255; green_value =255; automode =1; } else if(led_info ==2) //user input value { red_value = Red; blue_value = Blue; green_value = Green; automode = 0; } pwmLed(); } void pwmLed() { ////////////////////////RGB값 자동제어//////////////////////////////////////////// if (automode==1) { //pwmRed.write(0); pwmGreen.write(0); pwmBlue.write(0); float cdsData; cdsData = CDS.read(); //조도에 읽기 if(cdsData<0.7f) { pwmRed.write(0); pwmGreen.write(0); pwmBlue.write(0); } else { pwmRed.write(red_value); pwmGreen.write(green_value); pwmBlue.write(blue_value); } //printf("CDS Analog = %f \n", cdsData); } ////////////////////////RGB값 수동제어//////////////////////////////////////////// else { // printf("%f %f %f \n", Red, Green, Blue); pwmRed.write(red_value); pwmGreen.write(green_value); pwmBlue.write(blue_value); // pwmRed.period_ms(1); // pwmGreen.period_ms(1); // pwmBlue.period_ms(1); } }