22

Dependencies:   DISCO_L475VG_IOT01A_wifi

Committer:
ascension2
Date:
Tue Aug 20 10:45:16 2019 +0000
Revision:
1:98939393d0db
Parent:
0:dc1150daf908
33

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ascension2 0:dc1150daf908 1 #include "mbed.h"
ascension2 0:dc1150daf908 2 #include "init_pin.h"
ascension2 0:dc1150daf908 3
ascension2 0:dc1150daf908 4
ascension2 0:dc1150daf908 5 float const variation = 0.00392;
ascension2 0:dc1150daf908 6 float red_value;
ascension2 0:dc1150daf908 7 float green_value;
ascension2 0:dc1150daf908 8 float blue_value;
ascension2 1:98939393d0db 9 int automode;
ascension2 1:98939393d0db 10 int cds_state;
ascension2 1:98939393d0db 11 int led_state;
ascension2 0:dc1150daf908 12
ascension2 0:dc1150daf908 13 void pwmLed()
ascension2 0:dc1150daf908 14 {
ascension2 1:98939393d0db 15 float cdsData;
ascension2 1:98939393d0db 16 cdsData = CDS.read();
ascension2 0:dc1150daf908 17 if (automode==1)
ascension2 0:dc1150daf908 18 {
ascension2 0:dc1150daf908 19
ascension2 1:98939393d0db 20
ascension2 0:dc1150daf908 21 if(cdsData<0.7f)
ascension2 0:dc1150daf908 22 {
ascension2 0:dc1150daf908 23 pwmRed.write(0);
ascension2 0:dc1150daf908 24 pwmGreen.write(0);
ascension2 0:dc1150daf908 25 pwmBlue.write(0);
ascension2 1:98939393d0db 26 cds_state=0;
ascension2 0:dc1150daf908 27 }
ascension2 0:dc1150daf908 28 else
ascension2 0:dc1150daf908 29 {
ascension2 0:dc1150daf908 30 pwmRed.write(red_value);
ascension2 0:dc1150daf908 31 pwmGreen.write(green_value);
ascension2 0:dc1150daf908 32 pwmBlue.write(blue_value);
ascension2 1:98939393d0db 33 cds_state=1;
ascension2 0:dc1150daf908 34 }
ascension2 0:dc1150daf908 35
ascension2 0:dc1150daf908 36
ascension2 0:dc1150daf908 37
ascension2 0:dc1150daf908 38 }
ascension2 0:dc1150daf908 39
ascension2 0:dc1150daf908 40 else
ascension2 0:dc1150daf908 41 {
ascension2 1:98939393d0db 42 if(cdsData<0.7f)
ascension2 1:98939393d0db 43 {
ascension2 1:98939393d0db 44 cds_state=0;
ascension2 1:98939393d0db 45 }
ascension2 1:98939393d0db 46 else
ascension2 1:98939393d0db 47 {
ascension2 1:98939393d0db 48 cds_state=1;
ascension2 1:98939393d0db 49 }
ascension2 0:dc1150daf908 50 pwmRed.write(red_value);
ascension2 0:dc1150daf908 51 pwmGreen.write(green_value);
ascension2 0:dc1150daf908 52 pwmBlue.write(blue_value);
ascension2 0:dc1150daf908 53
ascension2 0:dc1150daf908 54 }
ascension2 0:dc1150daf908 55 }
ascension2 0:dc1150daf908 56 void setRGB(float Red,float Green,float Blue,int led_info)
ascension2 0:dc1150daf908 57 {
ascension2 0:dc1150daf908 58
ascension2 0:dc1150daf908 59 if (led_info ==0) // led off
ascension2 0:dc1150daf908 60 {
ascension2 0:dc1150daf908 61 red_value =0;
ascension2 0:dc1150daf908 62 blue_value =0;
ascension2 0:dc1150daf908 63 green_value =0;
ascension2 1:98939393d0db 64 led_state=0;
ascension2 0:dc1150daf908 65 }
ascension2 0:dc1150daf908 66 else if(led_info ==1) // led on
ascension2 0:dc1150daf908 67 {
ascension2 0:dc1150daf908 68 red_value =255*variation;
ascension2 0:dc1150daf908 69 blue_value =255*variation;
ascension2 0:dc1150daf908 70 green_value =255*variation;
ascension2 0:dc1150daf908 71 automode =1;
ascension2 1:98939393d0db 72 led_state=1;
ascension2 0:dc1150daf908 73 }
ascension2 0:dc1150daf908 74 else if(led_info ==2) //user input value
ascension2 0:dc1150daf908 75 {
ascension2 0:dc1150daf908 76 red_value = Red*variation;
ascension2 0:dc1150daf908 77 blue_value = Blue*variation;
ascension2 0:dc1150daf908 78 green_value = Green*variation;
ascension2 0:dc1150daf908 79 automode = 0;
ascension2 1:98939393d0db 80 led_state=2;
ascension2 0:dc1150daf908 81 }
ascension2 0:dc1150daf908 82
ascension2 0:dc1150daf908 83 pwmLed();
ascension2 0:dc1150daf908 84
ascension2 0:dc1150daf908 85 }
ascension2 0:dc1150daf908 86
ascension2 0:dc1150daf908 87