166 lines
4.8 KiB
C
166 lines
4.8 KiB
C
//
|
|
// Created by cfif on 05.12.2025.
|
|
//
|
|
|
|
#ifndef HVAC_M7_CANSPAMDEBUGTRANSMITTER_H
|
|
#define HVAC_M7_CANSPAMDEBUGTRANSMITTER_H
|
|
|
|
#include <cmsis_os.h>
|
|
#include "CanSerialPortFrame.h"
|
|
#include "ccu_candb_dbg-binutil.h"
|
|
#include "LoggerInterface.h"
|
|
#include "CanSpamDebugReceiver.h"
|
|
|
|
#define dbg_Act0_SEND 1
|
|
#define dbg_Act1_SEND 1
|
|
#define dbg_Act2_SEND 1
|
|
#define dbg_Auto_AF_SEND 0
|
|
#define dbg_Auto_Duct_SEND 0
|
|
#define dbg_Auto_Valve_Plus_SEND 0
|
|
#define dbg_CCU_Info_SEND 0
|
|
#define dbg_CCU_IO_SEND 0
|
|
#define dbg_DiffBlr_ValveOpen_SEND 0
|
|
#define dbg_Drs_SEND 0
|
|
#define dbg_Info_Act1_SEND 0
|
|
#define dbg_Info_Act2_SEND 0
|
|
#define dbg_LIN_AirQS_Stat_SEND 0
|
|
#define dbg_LIN_Aroma_Stat_SEND 0
|
|
#define dbg_LIN_DRS_Stat_SEND 0
|
|
#define dbg_LIN_eTXV_Stat_SEND 0
|
|
#define dbg_LIN_Ionizer_Stat_SEND 0
|
|
#define dbg_Logic_Ac_SEND 0
|
|
#define dbg_Logic_Blower_SEND 1
|
|
#define dbg_Logic_KM_Status_SEND 0
|
|
#define dbg_Logic_Rec_SEND 0
|
|
#define dbg_Logic_State_SEND 0
|
|
#define dbg_Logic_Valve_SEND 0
|
|
#define dbg_Sen_0_SEND 0
|
|
#define dbg_Sen_Amb_SEND 0
|
|
#define dbg_Sen_Demist_SEND 0
|
|
#define dbg_Sen_Duct_SEND 1
|
|
#define dbg_Sen_Eva_SEND 1
|
|
#define dbg_Sen_Incar_SEND 0
|
|
|
|
|
|
#define dbg_Act0_CYC 100
|
|
#define dbg_Act1_CYC 100
|
|
#define dbg_Act2_CYC 100
|
|
#define dbg_Auto_Valve_Plus_CYC 100
|
|
#define dbg_CCU_IO_CYC 100
|
|
#define dbg_Drs_CYC 100
|
|
#define dbg_Info_Act1_CYC 100
|
|
#define dbg_Info_Act2_CYC 100
|
|
#define dbg_LIN_AirQS_Stat_CYC 100
|
|
#define dbg_LIN_Aroma_Stat_CYC 100
|
|
#define dbg_LIN_DRS_Stat_CYC 100
|
|
#define dbg_LIN_eTXV_Stat_CYC 100
|
|
#define dbg_LIN_Ionizer_Stat_CYC 100
|
|
#define dbg_Logic_Ac_CYC 100
|
|
#define dbg_Logic_Blower_CYC 100
|
|
#define dbg_Logic_KM_Status_CYC 100
|
|
#define dbg_Logic_Rec_CYC 100
|
|
#define dbg_Logic_State_CYC 100
|
|
#define dbg_Logic_Valve_CYC 100
|
|
#define dbg_Sen_Amb_CYC 100
|
|
#define dbg_Sen_Demist_CYC 100
|
|
#define dbg_Sen_Eva_CYC 100
|
|
|
|
typedef enum {
|
|
event_dbg_none = 0x00,
|
|
event_dbg_Act0_CYC = 0x01,
|
|
event_dbg_Act1_CYC = 0x02,
|
|
event_dbg_Act2_CYC = 0x03,
|
|
event_dbg_Auto_AF_CYC = 0x4,
|
|
event_dbg_Auto_Duct_CYC = 0x5,
|
|
event_dbg_Auto_Valve_Plus_CYC = 0x6,
|
|
event_dbg_CCU_Info_CYC = 0x7,
|
|
event_dbg_CCU_IO_CYC = 0x8,
|
|
event_dbg_DiffBlr_ValveOpen_CYC = 0x9,
|
|
event_dbg_Drs_CYC = 0xA,
|
|
event_dbg_Info_Act1_CYC = 0xB,
|
|
event_dbg_Info_Act2_CYC = 0xC,
|
|
event_dbg_LIN_AirQS_Stat_CYC = 0xD,
|
|
event_dbg_LIN_Aroma_Stat_CYC = 0xE,
|
|
event_dbg_LIN_DRS_Stat_CYC = 0xF,
|
|
event_dbg_LIN_eTXV_Stat_CYC = 0x10,
|
|
event_dbg_LIN_Ionizer_Stat_CYC = 0x11,
|
|
event_dbg_Logic_Ac_CYC = 0x12,
|
|
event_dbg_Logic_Blower_CYC = 0x13,
|
|
event_dbg_Logic_KM_Status_CYC = 0x14,
|
|
event_dbg_Logic_Rec_CYC = 0x15,
|
|
event_dbg_Logic_State_CYC = 0x16,
|
|
event_dbg_Logic_Valve_CYC = 0x17,
|
|
event_dbg_Sen_0_CYC = 0x18,
|
|
event_dbg_Sen_Amb_CYC = 0x19,
|
|
event_dbg_Sen_Demist_CYC = 0x1A,
|
|
event_dbg_Sen_Duct_CYC = 0x1B,
|
|
event_dbg_Sen_Eva_CYC = 0x1C,
|
|
event_dbg_Sen_Incar_CYC = 0x1D
|
|
|
|
} eTimeEventDbgTransmit;
|
|
|
|
typedef struct {
|
|
|
|
tSerialPortFrameIO *ioCanFrame;
|
|
osMutexId_t access;
|
|
can_rx_message_type canFrame;
|
|
|
|
tCanSpamDebugReceiver *canSpamDebugReceiver;
|
|
|
|
uint32_t can_id;
|
|
uint32_t timeMs;
|
|
uint8_t ide;
|
|
|
|
uint32_t time_dbg_Act0_CYC;
|
|
uint32_t time_dbg_Act1_CYC;
|
|
uint32_t time_dbg_Act2_CYC;
|
|
uint32_t time_dbg_Auto_AF_CYC;
|
|
uint32_t time_dbg_Auto_Duct_CYC;
|
|
uint32_t time_dbg_Auto_Valve_Plus_CYC;
|
|
uint32_t time_dbg_CCU_Info_CYC;
|
|
uint32_t time_dbg_CCU_IO_CYC;
|
|
uint32_t time_dbg_DiffBlr_ValveOpen_CYC;
|
|
uint32_t time_dbg_Drs_CYC;
|
|
uint32_t time_dbg_Info_Act1_CYC;
|
|
uint32_t time_dbg_Info_Act2_CYC;
|
|
uint32_t time_dbg_LIN_AirQS_Stat_CYC;
|
|
uint32_t time_dbg_LIN_Aroma_Stat_CYC;
|
|
uint32_t time_dbg_LIN_DRS_Stat_CYC;
|
|
uint32_t time_dbg_LIN_eTXV_Stat_CYC;
|
|
uint32_t time_dbg_LIN_Ionizer_Stat_CYC;
|
|
uint32_t time_dbg_Logic_Ac_CYC;
|
|
uint32_t time_dbg_Logic_Blower_CYC;
|
|
uint32_t time_dbg_Logic_KM_Status_CYC;
|
|
uint32_t time_dbg_Logic_Rec_CYC;
|
|
uint32_t time_dbg_Logic_State_CYC;
|
|
uint32_t time_dbg_Logic_Valve_CYC;
|
|
uint32_t time_dbg_Sen_0_CYC;
|
|
uint32_t time_dbg_Sen_Amb_CYC;
|
|
uint32_t time_dbg_Sen_Demist_CYC;
|
|
uint32_t time_dbg_Sen_Duct_CYC;
|
|
uint32_t time_dbg_Sen_Eva_CYC;
|
|
uint32_t time_dbg_Sen_Incar_CYC;
|
|
|
|
tLoggerInterface *logger;
|
|
|
|
uint8_t dbg_Sen_Duct_MultMsg_Idx;
|
|
|
|
struct {
|
|
osThreadId_t id;
|
|
uint32_t stack[384];
|
|
StaticTask_t controlBlock;
|
|
osThreadAttr_t attr;
|
|
} thread;
|
|
|
|
} tCanSpamDebugTransmitter;
|
|
|
|
void
|
|
CanSpamDebugTransmitter_Init(tCanSpamDebugTransmitter *env, tSerialPortFrameIO *ioCanFrame,
|
|
tCanSpamDebugReceiver *canSpamDebugReceiver, tLoggerInterface *logger);
|
|
|
|
void CanSpamDebugTransmitter_StartThread(tCanSpamDebugTransmitter *env);
|
|
|
|
void set_CanDebugSpamTransmitter(tCanSpamDebugTransmitter *env);
|
|
|
|
#endif //HVAC_M7_CANSPAMDEBUGTRANSMITTER_H
|