57 lines
1.3 KiB
C
57 lines
1.3 KiB
C
//
|
|
// Created by CFIF on 13.11.22.
|
|
//
|
|
|
|
#ifndef UVEOS_ON_NATION_LOGGERTOSERIALPORT_H
|
|
#define UVEOS_ON_NATION_LOGGERTOSERIALPORT_H
|
|
|
|
#include "SerialPort.h"
|
|
#include "LoggerInterface.h"
|
|
#include "RtcIO.h"
|
|
#include <cmsis_os.h>
|
|
|
|
|
|
typedef struct {
|
|
tSerialPortIO *serialPortIo_VIRT;
|
|
tSerialPortIO *serialPortIo_PHYSIC;
|
|
tRtcIO *rtc;
|
|
uint32_t timeout;
|
|
uint32_t timeoutTransmittedLog;
|
|
uint8_t authorLimit;
|
|
bool open;
|
|
tLoggerInterface logger;
|
|
uint16_t flags;
|
|
int32_t greenwichOffset;
|
|
|
|
struct {
|
|
osThreadId_t id;
|
|
uint32_t stack[512];
|
|
StaticTask_t controlBlock;
|
|
osThreadAttr_t attr;
|
|
} thread;
|
|
|
|
} tLoggerToSerialPort;
|
|
|
|
#define SERIAL_LOGGER_SHOW_AUTHOR 0b1 << 0
|
|
#define SERIAL_LOGGER_SHOW_LOG_LEVEL 0b1 << 1
|
|
#define SERIAL_LOGGER_SHOW_TIME 0b1 << 2
|
|
#define SERIAL_LOGGER_SHOW_DATE 0b1 << 3
|
|
|
|
void LoggerToSerialPort_Init(
|
|
tLoggerToSerialPort *env,
|
|
int32_t greenwichOffset,
|
|
tSerialPortIO *serialPortIo_VIRT,
|
|
tSerialPortIO *serialPortIo_PHYSIC,
|
|
tRtcIO *rtc,
|
|
uint16_t flags,
|
|
uint32_t timeoutTransmittedLog
|
|
// bool showDate,
|
|
// bool showTime,
|
|
// bool showLoglevel,
|
|
// bool showAuthor
|
|
);
|
|
|
|
void LogTransmitter_StartThread(tLoggerToSerialPort *env);
|
|
|
|
#endif //UVEOS_ON_NATION_LOGGERTOSERIALPORT_H
|