static portTASK_FUNCTION(TimeTask,pvParameters) { unsigned char frame[MAX_FRAME_SIZE]; int num_datos; int tiempoSim; uint32_t hora; while(1) { vTaskDelay(configTICK_RATE_HZ); //cada segundo tiempoSim=getTiempoSim(); //Obtenemos la equivalencia de 1 segundo Real son tiempoSim minutos en el simulado hora = getHora(); //Obtenemos la hora hora+=tiempoSim; //aumentamos hora tiempoSim (Minutos) if(hora>1440){ //si llegamos a las 24:00 (1440 minutos) ponemos las 00:00 hora=0; } //Modificamos y enviamos la hora setHora(hora); num_datos=create_frame(frame, COMANDO_TIME, &hora, sizeof(hora), MAX_FRAME_SIZE); if (num_datos>=0){ send_frame(frame, num_datos); }else{ logError(num_datos); } } }
#include "Log.h" Log* Log::instance = NULL; const long long Log::microsegundosInicial = getMicrosegundos(); const string Log::nombreArchivo = string( PATH_LOG ) + getFecha() + getHora() + string( EXTENSION_LOG ); Log::Log() : modoDebug ( false ), logFile ( (char*) nombreArchivo.c_str() ) { cout.setf( ios::fixed ); cout.precision( PRECISION_SEGUNDOS ); } Log* Log::getInstance() { if ( instance == NULL ) { instance = new Log(); } return instance; } void Log::destruir () { if ( instance != NULL ) {