33

Dependencies:   DISCO_L475VG_IOT01A_wifi

Committer:
ascension2
Date:
Wed Aug 21 07:25:27 2019 +0000
Revision:
2:a460007a35c7
Child:
3:32b328935a54
44

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ascension2 2:a460007a35c7 1 #include"init_pin.h"
ascension2 2:a460007a35c7 2 #include"Motorcontrol.h"
ascension2 2:a460007a35c7 3 #include "mbed.h"
ascension2 2:a460007a35c7 4
ascension2 2:a460007a35c7 5 AnalogIn dustIn(A5);
ascension2 2:a460007a35c7 6 DigitalOut dustled(D10);
ascension2 2:a460007a35c7 7
ascension2 2:a460007a35c7 8 float dustValue = 0;
ascension2 2:a460007a35c7 9 float calcVoltage = 0;
ascension2 2:a460007a35c7 10 float dustDensity = 0;
ascension2 2:a460007a35c7 11
ascension2 2:a460007a35c7 12 int T_dust_value;
ascension2 2:a460007a35c7 13 extern int AutoMode;
ascension2 2:a460007a35c7 14
ascension2 2:a460007a35c7 15 extern int window_state;
ascension2 2:a460007a35c7 16 int M_dust;
ascension2 2:a460007a35c7 17 void Dustcheck()
ascension2 2:a460007a35c7 18 {
ascension2 2:a460007a35c7 19 M_dust=0;
ascension2 2:a460007a35c7 20 dustled=0;
ascension2 2:a460007a35c7 21 wait_ms(0.28);
ascension2 2:a460007a35c7 22
ascension2 2:a460007a35c7 23 dustValue = dustIn.read();
ascension2 2:a460007a35c7 24 wait_ms(0.04);
ascension2 2:a460007a35c7 25
ascension2 2:a460007a35c7 26 dustled=1;
ascension2 2:a460007a35c7 27 // wait_ms(9.68);
ascension2 2:a460007a35c7 28 dustValue=dustValue*5;
ascension2 2:a460007a35c7 29 if(dustValue <0.6)
ascension2 2:a460007a35c7 30 {
ascension2 2:a460007a35c7 31 dustValue =0.6;
ascension2 2:a460007a35c7 32 }
ascension2 2:a460007a35c7 33
ascension2 2:a460007a35c7 34 dustDensity =((dustValue-0.6)/1.25)*1000.0;
ascension2 2:a460007a35c7 35
ascension2 2:a460007a35c7 36
ascension2 2:a460007a35c7 37 if(dustDensity >80) // standard of korea
ascension2 2:a460007a35c7 38 {
ascension2 2:a460007a35c7 39 T_dust_value=1;
ascension2 2:a460007a35c7 40 M_dust=1;
ascension2 2:a460007a35c7 41 }
ascension2 2:a460007a35c7 42 else
ascension2 2:a460007a35c7 43 {
ascension2 2:a460007a35c7 44 T_dust_value=0;
ascension2 2:a460007a35c7 45 M_dust=2;
ascension2 2:a460007a35c7 46 }
ascension2 2:a460007a35c7 47 if((AutoMode==1)&&(M_dust==1)&&(window_state==1))
ascension2 2:a460007a35c7 48 {
ascension2 2:a460007a35c7 49 motor1CCW(100); // close
ascension2 2:a460007a35c7 50 M_dust=0;
ascension2 2:a460007a35c7 51 }
ascension2 2:a460007a35c7 52 if((AutoMode==1)&&(M_dust==2)&&(window_state==0))
ascension2 2:a460007a35c7 53 {
ascension2 2:a460007a35c7 54 motor1CW(100); // Open
ascension2 2:a460007a35c7 55 M_dust=0;
ascension2 2:a460007a35c7 56 }
ascension2 2:a460007a35c7 57 printf("Density: %.1f )(M_dust= %d)(motor1_state= %d)\n",dustDensity,M_dust,window_state);
ascension2 2:a460007a35c7 58 }