// // Created by kirillius on 09.04.2022. // #ifndef COOLER_CONTROLLER_SERVICEAPP_H #define COOLER_CONTROLLER_SERVICEAPP_H #include #include "FanController.h" #include "Configuration.h" #include "ComMessage.h" class ServiceApp { private: static USART Serial; static FanController Fan; Configuration Config; int8_t temp; uint8_t level; uint8_t comCounter; void readConfig(); void writeConfig(); bool readMessage(Message *dest); void sendMessage(Message *src); void communicate(); void setFanPWM(); public: ServiceApp(); void update(); static uint8_t lerp(uint8_t a, uint8_t b, uint8_t t); static float clamp(float a, float min, float max); static uint8_t min(uint8_t a, uint8_t b); }; #endif //COOLER_CONTROLLER_SERVICEAPP_H