#ifndef __SDTHREAD_H__ #define __SDTHREAD_H__ #include "DateTime.h" #include "RTC_SAMD51.h" #include "SD/Seeed_SD.h" #include "SysConfig.h" #include "utils.h" #include #include #include #include #include using namespace cpp_freertos; class SDThread : public Thread { public: SDThread(SysConfig &config); void SDPushData(std::vector d); protected: virtual void Run(); uint8_t status(); void saveData(String sensorName, int32_t *sensorData, int len); void Readdata(String sensorName); private: SysConfig &cfg; private: std::vector sd_data; bool sd_data_ready = true; RTC_SAMD51 rtc; File myFile; bool is_connected = false; SemaphoreHandle_t wait_sd_data = NULL; }; #endif // __SDTHREAD_H__