Project aiming to make a self-controlled solar reflector
Dependencies: Accelerometer LCD Inverter Algorithm MotorDriver Anemometer GUI ArduinoJson Misc Definitions Pushbutton WebSocketClient temp_fan
Diff: main.cpp
- Revision:
- 10:566529fff615
- Parent:
- 9:6e950b9a9a81
- Child:
- 11:2ade1ad7bad6
--- a/main.cpp Fri Mar 12 01:45:00 2021 +0000 +++ b/main.cpp Fri Mar 12 02:29:39 2021 +0000 @@ -24,7 +24,7 @@ I2C i2c(PIN_SDA,PIN_SCL); Anemometer ane; // //MotorDriver motor; -LowPowerTimer t,t_mode; +LowPowerTimer t,t_mode, t_disp; int mode = OP_CALIBRATION; //////////////////////////////////////////////////////////////////////////////// @@ -32,7 +32,7 @@ int main() { i2c.frequency(I2C_FREQ); -//Accelerometer acc(&i2c); //Accelerometer +Accelerometer acc(&i2c); //Accelerometer LCD lcd(&i2c); float ang_P,ang_R; @@ -56,14 +56,17 @@ string botL = "CALIBRATION SLOT"; t.start(); //Start timer +t_disp.start(); lcd.LCD_display(topL, botL); +wait_us(1000000); while(1) { switch(mode) { case OP_PLACEMENT:{ + acc.calibrate(); topL = "PUT SENSOR ON"; botL = "PANEL&REFLECTORS"; if(flag_disp){ @@ -75,8 +78,13 @@ } //////////////////////////////////////////////////////////////////////////////// case OP_NORMAL:{ + ane.checkWind(&mode); topL = "NORMAL"; - botL = ""; + if(timer_read_s(t_disp) >= LCD_WRATE){ + botL = Misc::itos((int)ane.getWind(&flag_disp)) + " kph"; + t_disp.reset(); + t_disp.start(); + } if(flag_disp){ lcd.LCD_display(topL,botL); flag_disp = 0; @@ -89,7 +97,11 @@ case OP_WIND:{ ane.checkWind(&mode); topL = "WIND SAFETY"; - botL = ""; + if(timer_read_s(t_disp) >= LCD_WRATE){ + botL = Misc::itos((int)ane.getWind(&flag_disp)) + " kph"; + t_disp.reset(); + t_disp.start(); + } if(flag_disp){ lcd.LCD_display(topL,botL); flag_disp = 0;