logging: Base for Clock.
*Doesn't work, yet.
This commit is contained in:
@@ -8,7 +8,9 @@
|
||||
#include "FreeRTOS.h"
|
||||
#include "task.h"
|
||||
#include "queue.h"
|
||||
#include "Clock.h"
|
||||
|
||||
extern Clock *global_clock;
|
||||
extern QueueHandle_t logging_queue;
|
||||
|
||||
/* ================= Settings ================== */
|
||||
@@ -46,7 +48,7 @@ extern QueueHandle_t logging_queue;
|
||||
xQueueSend(logging_queue, (void*)message, portMAX_DELAY); \
|
||||
}
|
||||
|
||||
static void create_log_line(const size_t _timestamp,
|
||||
static void create_log_line(const TimeFromStart _timestamp,
|
||||
const char * _status,
|
||||
const char * _location,
|
||||
const char * _func,
|
||||
@@ -60,8 +62,12 @@ static void create_log_line(const size_t _timestamp,
|
||||
va_end(args);
|
||||
char buffer [LOG_BUFFER_MAX_CAP] = {0};
|
||||
int buffer_len = snprintf(buffer, LOG_BUFFER_MAX_CAP,
|
||||
"[%zu]:[%s] In [File: %s] [Func: %s] [Line: %zu]\r\n %.*s",
|
||||
_timestamp,
|
||||
"[%02zu:%02zu:%02zu:%02zu:%03zu]:[%s] In [File: %s] [Func: %s] [Line: %zu]\r\n %.*s",
|
||||
_timestamp.days,
|
||||
_timestamp.hours,
|
||||
_timestamp.minutes,
|
||||
_timestamp.seconds,
|
||||
_timestamp.milliseconds,
|
||||
_status,
|
||||
_location,
|
||||
_func,
|
||||
@@ -73,17 +79,17 @@ static void create_log_line(const size_t _timestamp,
|
||||
}
|
||||
|
||||
#define LOG_INFO( fmt, ...) \
|
||||
create_log_line(LPC_SCT1->COUNT_U, C_INFO, __FILE__, __func__, __LINE__, fmt, ##__VA_ARGS__);
|
||||
create_log_line(global_clock->getTimeFromStart(), C_INFO, __FILE__, __func__, __LINE__, fmt, ##__VA_ARGS__);
|
||||
|
||||
#define LOG_WARNING(fmt, ...) \
|
||||
create_log_line(LPC_SCT1->COUNT_U, C_WARN, __FILE__, __func__, __LINE__, fmt, ##__VA_ARGS__);
|
||||
create_log_line(global_clock->getTimeFromStart(), C_WARN, __FILE__, __func__, __LINE__, fmt, ##__VA_ARGS__);
|
||||
|
||||
#define LOG_ERROR(fmt, ...) \
|
||||
create_log_line(LPC_SCT1->COUNT_U, C_ERROR, __FILE__, __func__, __LINE__, fmt, ##__VA_ARGS__);
|
||||
create_log_line(global_clock->getTimeFromStart(), C_ERROR, __FILE__, __func__, __LINE__, fmt, ##__VA_ARGS__);
|
||||
|
||||
#if LOG_DEBUG_MESSAGES
|
||||
#define LOG_DEBUG(fmt, ...) \
|
||||
create_log_line(LPC_SCT1->COUNT_U, C_DEBUG, __FILE__, __func__, __LINE__, fmt, ##__VA_ARGS__);
|
||||
create_log_line(global_clock->getTimeFromStart(), C_DEBUG, __FILE__, __func__, __LINE__, fmt, ##__VA_ARGS__);
|
||||
#else
|
||||
#define LOG_DEBUG(fmt, ...)
|
||||
#endif
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
#include "Logging.h"
|
||||
#include "UserInterface.h"
|
||||
#include "queue.h"
|
||||
#include "Logging.h"
|
||||
|
||||
static const char* rotary_direction[] =
|
||||
{
|
||||
@@ -25,12 +24,18 @@ static const char* rotary_direction[] =
|
||||
};
|
||||
|
||||
QueueHandle_t logging_queue;
|
||||
Clock *global_clock = new Clock();
|
||||
|
||||
Master::Master(ThreadCommon::QueueManager* qm) : _qm(qm)
|
||||
{
|
||||
LOG_DEBUG("Creating Master");
|
||||
}
|
||||
|
||||
Master::~Master()
|
||||
{
|
||||
LOG_ERROR("Master was deleted");
|
||||
}
|
||||
|
||||
void Master::HandleEventType(Event* e, Event::EventType type)
|
||||
{
|
||||
switch (type)
|
||||
@@ -40,6 +45,7 @@ void Master::HandleEventType(Event* e, Event::EventType type)
|
||||
case Event::Rotary:
|
||||
//Comes from rotary, goes to manager
|
||||
_qm->send<Event>(ThreadCommon::QueueManager::manager_event_master, e, 0);
|
||||
//LOG_WARNING("Timestamp: %zus, Clock: %zu, Chip freq: %zu", LPC_SCT1->COUNT_U / Chip_Clock_GetMainClockRate(), LPC_SCT1->COUNT_U, Chip_Clock_GetMainClockRate());
|
||||
LOG_DEBUG("Rotary: %s has been forwarded to manager", rotary_direction[e->getDataOf(type)]);
|
||||
break;
|
||||
case Event::InternalTemp:
|
||||
@@ -79,7 +85,8 @@ void Master::taskFunction() {
|
||||
{
|
||||
HandleEventType(&data, i);
|
||||
}
|
||||
}
|
||||
}
|
||||
global_clock->updateClock();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
class Master {
|
||||
public:
|
||||
Master(ThreadCommon::QueueManager* qm);
|
||||
virtual ~Master() = default;
|
||||
virtual ~Master();
|
||||
void taskFunction();
|
||||
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user