Обновление

This commit is contained in:
cfif 2025-11-21 09:54:16 +03:00
commit 255415e5e7
12 changed files with 13557 additions and 0 deletions

153
butl/ccu_candb-binutil.c Normal file
View File

@ -0,0 +1,153 @@
// Generator version : v3.1
// DBC filename : CCU.dbc
#include "ccu_candb-binutil.h"
// DBC file version
#if (VER_CANDB_MAJ != (0U)) || (VER_CANDB_MIN != (0U))
#error The CCU_CANDB binutil source file has inconsistency with core dbc lib!
#endif
#ifdef __DEF_CCU_CANDB__
ccu_candb_rx_t ccu_candb_rx;
ccu_candb_tx_t ccu_candb_tx;
#endif // __DEF_CCU_CANDB__
uint32_t ccu_candb_Receive(ccu_candb_rx_t* _m, const uint8_t* _d, uint32_t _id, uint8_t dlc_)
{
uint32_t recid = 0;
if ((_id >= 0x100U) && (_id < 0x4D0U)) {
if ((_id >= 0x100U) && (_id < 0x24CU)) {
if ((_id >= 0x100U) && (_id < 0x157U)) {
if ((_id >= 0x100U) && (_id < 0x152U)) {
if (_id == 0x100U) {
recid = Unpack_ESC_04_candb(&(_m->ESC_04), _d, dlc_);
} else if (_id == 0x150U) {
recid = Unpack_EMS_Veh_candb(&(_m->EMS_Veh), _d, dlc_);
}
} else {
if (_id == 0x152U) {
recid = Unpack_BCM_Powertrain_candb(&(_m->BCM_Powertrain), _d, dlc_);
} else if (_id == 0x153U) {
recid = Unpack_EMS_Veh_02_candb(&(_m->EMS_Veh_02), _d, dlc_);
}
}
} else {
if ((_id >= 0x157U) && (_id < 0x244U)) {
if (_id == 0x157U) {
recid = Unpack_BCM_EEM_candb(&(_m->BCM_EEM), _d, dlc_);
} else if (_id == 0x243U) {
recid = Unpack_DMFR_Msg1_candb(&(_m->DMFR_Msg1), _d, dlc_);
}
} else {
if (_id == 0x244U) {
recid = Unpack_DMFL_Msg1_candb(&(_m->DMFL_Msg1), _d, dlc_);
} else if (_id == 0x247U) {
recid = Unpack_TM_Stat_candb(&(_m->TM_Stat), _d, dlc_);
}
}
}
} else {
if ((_id >= 0x24CU) && (_id < 0x305U)) {
if ((_id >= 0x24CU) && (_id < 0x280U)) {
if (_id == 0x24CU) {
recid = Unpack_TM_CP_candb(&(_m->TM_CP), _d, dlc_);
} else if (_id == 0x25AU) {
recid = Unpack_HVC_CCU_Status_Msg_candb(&(_m->HVC_CCU_Status_Msg), _d, dlc_);
}
} else {
if (_id == 0x280U) {
recid = Unpack_BCM_VEH_STATE_candb(&(_m->BCM_VEH_STATE), _d, dlc_);
} else if (_id == 0x298U) {
recid = Unpack_EMS_HVC_Req_Msg_candb(&(_m->EMS_HVC_Req_Msg), _d, dlc_);
}
}
} else {
if ((_id >= 0x305U) && (_id < 0x39DU)) {
if (_id == 0x305U) {
recid = Unpack_HVC_Err_Status_Msg_candb(&(_m->HVC_Err_Status_Msg), _d, dlc_);
} else if (_id == 0x365U) {
recid = Unpack_BCM_CLIMATIC_DATA_candb(&(_m->BCM_CLIMATIC_DATA), _d, dlc_);
}
} else {
if (_id == 0x39DU) {
recid = Unpack_VCU_CCU_Req_candb(&(_m->VCU_CCU_Req), _d, dlc_);
} else if (_id == 0x3C1U) {
recid = Unpack_ESC_08_candb(&(_m->ESC_08), _d, dlc_);
}
}
}
}
} else {
if ((_id >= 0x4D0U) && (_id < 0x523U)) {
if ((_id >= 0x4D0U) && (_id < 0x50FU)) {
if ((_id >= 0x4D0U) && (_id < 0x4D2U)) {
if (_id == 0x4D0U) {
recid = Unpack_SMFL_status_candb(&(_m->SMFL_status), _d, dlc_);
} else if (_id == 0x4D1U) {
recid = Unpack_SMFR_status_candb(&(_m->SMFR_status), _d, dlc_);
}
} else {
if (_id == 0x4D2U) {
recid = Unpack_SMRL_status_candb(&(_m->SMRL_status), _d, dlc_);
} else if (_id == 0x4D3U) {
recid = Unpack_SMRR_status_candb(&(_m->SMRR_status), _d, dlc_);
}
}
} else {
if ((_id >= 0x50FU) && (_id < 0x521U)) {
if (_id == 0x50FU) {
recid = Unpack_SDM_Cmd_candb(&(_m->SDM_Cmd), _d, dlc_);
} else if (_id == 0x51AU) {
recid = Unpack_VEH_VIN_candb(&(_m->VEH_VIN), _d, dlc_);
}
} else {
if (_id == 0x521U) {
recid = Unpack_OCUFL_MSG_candb(&(_m->OCUFL_MSG), _d, dlc_);
} else if (_id == 0x522U) {
recid = Unpack_OCUFR_MSG_candb(&(_m->OCUFR_MSG), _d, dlc_);
}
}
}
} else {
if ((_id >= 0x523U) && (_id < 0x5A2U)) {
if ((_id >= 0x523U) && (_id < 0x589U)) {
if (_id == 0x523U) {
recid = Unpack_OCURL_MSG_candb(&(_m->OCURL_MSG), _d, dlc_);
} else if (_id == 0x524U) {
recid = Unpack_OCURR_MSG_candb(&(_m->OCURR_MSG), _d, dlc_);
}
} else {
if (_id == 0x589U) {
recid = Unpack_DW_STATE_candb(&(_m->DW_STATE), _d, dlc_);
} else if (_id == 0x5A1U) {
recid = Unpack_FIU_CCU1_candb(&(_m->FIU_CCU1), _d, dlc_);
}
}
} else {
if ((_id >= 0x5A2U) && (_id < 0x7ABU)) {
if (_id == 0x5A2U) {
recid = Unpack_FIU_CCU2_candb(&(_m->FIU_CCU2), _d, dlc_);
} else if (_id == 0x5A3U) {
recid = Unpack_FIU_CCU3_candb(&(_m->FIU_CCU3), _d, dlc_);
}
} else {
if (_id == 0x7ABU) {
recid = Unpack_Diag_To_CCU_candb(&(_m->Diag_To_CCU), _d, dlc_);
} else {
if (_id == 0x7DFU) {
recid = Unpack_Diag_Functional_candb(&(_m->Diag_Functional), _d, dlc_);
} else if (_id == 0x18FF7919U) {
recid = Unpack_HVC_01_candb(&(_m->HVC_01), _d, dlc_);
}
}
}
}
}
}
return recid;
}

78
butl/ccu_candb-binutil.h Normal file
View File

@ -0,0 +1,78 @@
// Generator version : v3.1
// DBC filename : CCU.dbc
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
#include "dbccodeconf.h"
#include "candb.h"
typedef struct
{
ESC_04_t ESC_04;
EMS_Veh_t EMS_Veh;
BCM_Powertrain_t BCM_Powertrain;
EMS_Veh_02_t EMS_Veh_02;
BCM_EEM_t BCM_EEM;
DMFR_Msg1_t DMFR_Msg1;
DMFL_Msg1_t DMFL_Msg1;
TM_Stat_t TM_Stat;
TM_CP_t TM_CP;
HVC_CCU_Status_Msg_t HVC_CCU_Status_Msg;
BCM_VEH_STATE_t BCM_VEH_STATE;
EMS_HVC_Req_Msg_t EMS_HVC_Req_Msg;
HVC_Err_Status_Msg_t HVC_Err_Status_Msg;
BCM_CLIMATIC_DATA_t BCM_CLIMATIC_DATA;
VCU_CCU_Req_t VCU_CCU_Req;
ESC_08_t ESC_08;
SMFL_status_t SMFL_status;
SMFR_status_t SMFR_status;
SMRL_status_t SMRL_status;
SMRR_status_t SMRR_status;
SDM_Cmd_t SDM_Cmd;
VEH_VIN_t VEH_VIN;
OCUFL_MSG_t OCUFL_MSG;
OCUFR_MSG_t OCUFR_MSG;
OCURL_MSG_t OCURL_MSG;
OCURR_MSG_t OCURR_MSG;
DW_STATE_t DW_STATE;
FIU_CCU1_t FIU_CCU1;
FIU_CCU2_t FIU_CCU2;
FIU_CCU3_t FIU_CCU3;
Diag_To_CCU_t Diag_To_CCU;
Diag_Functional_t Diag_Functional;
HVC_01_t HVC_01;
} ccu_candb_rx_t;
typedef struct
{
CCU_HVC_Req_Msg_t CCU_HVC_Req_Msg;
CCU_Stat1_t CCU_Stat1;
CCU_Stat2_t CCU_Stat2;
CCU_Requests_t CCU_Requests;
CCU_Stat3_t CCU_Stat3;
CCU_VCU_Msg1_t CCU_VCU_Msg1;
CCU_VCU_Msg2_t CCU_VCU_Msg2;
CCU_Msg1_t CCU_Msg1;
CCU_Errors_t CCU_Errors;
CCU_Msg3_t CCU_Msg3;
Diag_From_CCU_t Diag_From_CCU;
CCU_AC_Ctrl_t CCU_AC_Ctrl;
} ccu_candb_tx_t;
uint32_t ccu_candb_Receive(ccu_candb_rx_t* m, const uint8_t* d, uint32_t msgid, uint8_t dlc);
#ifdef __DEF_CCU_CANDB__
extern ccu_candb_rx_t ccu_candb_rx;
extern ccu_candb_tx_t ccu_candb_tx;
#endif // __DEF_CCU_CANDB__
#ifdef __cplusplus
}
#endif

View File

@ -0,0 +1,69 @@
// Generator version : v3.1
// DBC filename : CCU.dbc
#include "vector__xxx_candb-binutil.h"
// DBC file version
#if (VER_CANDB_MAJ != (0U)) || (VER_CANDB_MIN != (0U))
#error The VECTOR__XXX_CANDB binutil source file has inconsistency with core dbc lib!
#endif
#ifdef __DEF_VECTOR__XXX_CANDB__
vector__xxx_candb_rx_t vector__xxx_candb_rx;
vector__xxx_candb_tx_t vector__xxx_candb_tx;
#endif // __DEF_VECTOR__XXX_CANDB__
uint32_t vector__xxx_candb_Receive(vector__xxx_candb_rx_t* _m, const uint8_t* _d, uint32_t _id, uint8_t dlc_)
{
uint32_t recid = 0;
if ((_id >= 0x310U) && (_id < 0x316U)) {
if ((_id >= 0x310U) && (_id < 0x313U)) {
if (_id == 0x310U) {
recid = Unpack_CCU_HVC_Req_Msg_candb(&(_m->CCU_HVC_Req_Msg), _d, dlc_);
} else {
if (_id == 0x311U) {
recid = Unpack_CCU_Stat1_candb(&(_m->CCU_Stat1), _d, dlc_);
} else if (_id == 0x312U) {
recid = Unpack_CCU_Stat2_candb(&(_m->CCU_Stat2), _d, dlc_);
}
}
} else {
if (_id == 0x313U) {
recid = Unpack_CCU_Requests_candb(&(_m->CCU_Requests), _d, dlc_);
} else {
if (_id == 0x314U) {
recid = Unpack_CCU_Stat3_candb(&(_m->CCU_Stat3), _d, dlc_);
} else if (_id == 0x315U) {
recid = Unpack_CCU_VCU_Msg1_candb(&(_m->CCU_VCU_Msg1), _d, dlc_);
}
}
}
} else {
if ((_id >= 0x316U) && (_id < 0x501U)) {
if (_id == 0x316U) {
recid = Unpack_CCU_VCU_Msg2_candb(&(_m->CCU_VCU_Msg2), _d, dlc_);
} else {
if (_id == 0x380U) {
recid = Unpack_CCU_Msg1_candb(&(_m->CCU_Msg1), _d, dlc_);
} else if (_id == 0x4FEU) {
recid = Unpack_CCU_Errors_candb(&(_m->CCU_Errors), _d, dlc_);
}
}
} else {
if (_id == 0x501U) {
recid = Unpack_CCU_Msg3_candb(&(_m->CCU_Msg3), _d, dlc_);
} else {
if (_id == 0x7BBU) {
recid = Unpack_Diag_From_CCU_candb(&(_m->Diag_From_CCU), _d, dlc_);
} else if (_id == 0x18FFF200U) {
recid = Unpack_CCU_AC_Ctrl_candb(&(_m->CCU_AC_Ctrl), _d, dlc_);
}
}
}
}
return recid;
}

View File

@ -0,0 +1,78 @@
// Generator version : v3.1
// DBC filename : CCU.dbc
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
#include "dbccodeconf.h"
#include "candb.h"
typedef struct
{
CCU_HVC_Req_Msg_t CCU_HVC_Req_Msg;
CCU_Stat1_t CCU_Stat1;
CCU_Stat2_t CCU_Stat2;
CCU_Requests_t CCU_Requests;
CCU_Stat3_t CCU_Stat3;
CCU_VCU_Msg1_t CCU_VCU_Msg1;
CCU_VCU_Msg2_t CCU_VCU_Msg2;
CCU_Msg1_t CCU_Msg1;
CCU_Errors_t CCU_Errors;
CCU_Msg3_t CCU_Msg3;
Diag_From_CCU_t Diag_From_CCU;
CCU_AC_Ctrl_t CCU_AC_Ctrl;
} vector__xxx_candb_rx_t;
typedef struct
{
ESC_04_t ESC_04;
EMS_Veh_t EMS_Veh;
BCM_Powertrain_t BCM_Powertrain;
EMS_Veh_02_t EMS_Veh_02;
BCM_EEM_t BCM_EEM;
DMFR_Msg1_t DMFR_Msg1;
DMFL_Msg1_t DMFL_Msg1;
TM_Stat_t TM_Stat;
TM_CP_t TM_CP;
HVC_CCU_Status_Msg_t HVC_CCU_Status_Msg;
BCM_VEH_STATE_t BCM_VEH_STATE;
EMS_HVC_Req_Msg_t EMS_HVC_Req_Msg;
HVC_Err_Status_Msg_t HVC_Err_Status_Msg;
BCM_CLIMATIC_DATA_t BCM_CLIMATIC_DATA;
VCU_CCU_Req_t VCU_CCU_Req;
ESC_08_t ESC_08;
SMFL_status_t SMFL_status;
SMFR_status_t SMFR_status;
SMRL_status_t SMRL_status;
SMRR_status_t SMRR_status;
SDM_Cmd_t SDM_Cmd;
VEH_VIN_t VEH_VIN;
OCUFL_MSG_t OCUFL_MSG;
OCUFR_MSG_t OCUFR_MSG;
OCURL_MSG_t OCURL_MSG;
OCURR_MSG_t OCURR_MSG;
DW_STATE_t DW_STATE;
FIU_CCU1_t FIU_CCU1;
FIU_CCU2_t FIU_CCU2;
FIU_CCU3_t FIU_CCU3;
Diag_To_CCU_t Diag_To_CCU;
Diag_Functional_t Diag_Functional;
HVC_01_t HVC_01;
} vector__xxx_candb_tx_t;
uint32_t vector__xxx_candb_Receive(vector__xxx_candb_rx_t* m, const uint8_t* d, uint32_t msgid, uint8_t dlc);
#ifdef __DEF_VECTOR__XXX_CANDB__
extern vector__xxx_candb_rx_t vector__xxx_candb_rx;
extern vector__xxx_candb_tx_t vector__xxx_candb_tx;
#endif // __DEF_VECTOR__XXX_CANDB__
#ifdef __cplusplus
}
#endif

131
conf/candb-config.h Normal file
View File

@ -0,0 +1,131 @@
// Generator version : v3.1
// DBC filename : CCU.dbc
#pragma once
/* include common dbccode configurations */
#include "dbccodeconf.h"
#define __DEF_CCU_CANDB__
/* ------------------------------------------------------------------------- *
This define enables using CAN message structs with bit-fielded signals
layout.
Note(!): bit-feild was not tested properly. */
/* #define CANDB_USE_BITS_SIGNAL */
/* ------------------------------------------------------------------------- *
This macro enables using CAN message descriptive struct packing functions
(by default signature of pack function intakes a few simple typed params
for loading data, len, etc). To compile you need to define the struct
__CoderDbcCanFrame_t__ which must have fields:
u32 MsgId (CAN Frame message ID)
u8 DLC (CAN Frame payload length field)
u8 Data[8] (CAN Frame payload data)
u8 IDE (CAN Frame Extended (1) / Standard (0) ID type)
This struct definition have to be placed (or be included) in dbccodeconf.h */
/* #define CANDB_USE_CANSTRUCT */
/* ------------------------------------------------------------------------- *
All the signals which have values of factor != 1 or offset != 0
will be named in message struct with posfix '_ro'. Pack to payload
operations will be made on this signal value as well as unpack from payload.
USE_SIGFLOAT macro makes some difference:
1. All the '_ro' fields will have a pair field with '_phys' postfix.
If only offset != 0 is true then the type of '_phys' signal is the same
as '_ro' signal. In other case the type will be @sigfloat_t which
have to be defined in user dbccodeconf.h
2. In pack function '_ro' signal will be rewritten by '_phys' signal, which
requires from user to use ONLY '_phys' signal for packing frame
3. In unpack function '_phys' signal will be written by '_ro' signal.
User have to use '_phys' signal to read physical value. */
/* #define CANDB_USE_SIGFLOAT */
/* ------------------------------------------------------------------------- *
Note(!) that the "canmonitorutil.h" must be accessed in include path:
This macro adds:
- monitor field @mon1 to message struct
- capture system tick in unpack function and save value to mon1 field
to provide to user better missing frame detection code. For this case
user must provide function declared in canmonitorutil.h - GetSysTick()
which may return 1ms uptime.
- calling function FMon_*** (from 'fmon' driver) inside unpack function
which is empty by default and have to be filled by user if
tests for DLC, rolling, checksum are necessary */
#define CANDB_USE_DIAG_MONITORS
/* ------------------------------------------------------------------------- *
When monitor using is enabled (CANDB_USE_DIAG_MONITORS) and define below
uncommented, additional signal will be added to message struct. ***_expt:
expected rolling counter, to perform monitoring rolling counter sequence
automatically (result may be tested in dedicated Fmon_*** function) */
/* #define CANDB_AUTO_ROLL */
/* ------------------------------------------------------------------------- *
When monitor using is enabled (CANDB_USE_DIAG_MONITORS) and define below
uncommented, frame checksum signal may be handled automatically.
The signal which may be marked as checksum signal must have substring
with next format:
<Checksum:XOR8:3>
where:
- "Checksum": constant marker word
- "XOR8": type of method, this text will be passed to GetFrameHash
(canmonitorutil.h) function as is, the best use case is to define 'enum
DbcCanCrcMethods' in canmonitorutil.h file with all possible
checksum algorithms (e.g. XOR8, XOR4 etc)
- "3": optional value that will be passed to GetFrameHash as integer value
Function GetFrameHash have to be implemented by user
In pack function checksum signal will be calculated automatically
and loaded to payload
In unpack function checksum signal is checked with calculated.
(result may be tested in dedicated Fmon_*** function). */
/* #define CANDB_AUTO_CSM */
/* ------------------------------------------------------------------------- *
FMon handling model can be build in two ways:
1 - Default. In this case when specific frame unpack is called the
specific FMon_{Frame name}_{driver name} functoin will be called.
User's code scope has to define each of these functions. Each function is
responsible for the error handling of one frame
2 - MONO. In this case there is only one function to perform any frame
monitoring. This function has to be implemented in the user's code scope.
This function is named as FMon_MONO_{driver name}. It takes frame id
which can be used for selection of the logic for a frame monitoring.
This mode costs a bit more in runtime but when you often edit you DBC and you
have more than one project it could be more maintanable (there is
no necessity to replace source code)
For using MONO way uncomment line below */
/* #define CANDB_USE_MONO_FMON */

33
conf/dbccodeconf.h Normal file
View File

@ -0,0 +1,33 @@
// Generator version : v3.1
#pragma once
#include <stdint.h>
#include "SystemDelayInterface.h"
// when USE_SIGFLOAT enabed the sigfloat_t must be defined
// typedef double sigfloat_t;
// when USE_CANSTRUCT enabled __CoderDbcCanFrame_t__ must be defined
// #include "{header_with_can_struct}"
// typedef {can_struct} __CoderDbcCanFrame_t__;
// if you need to allocate rx and tx messages structs put the allocation macro here
// #define __DEF_{your_driver_name}__
// defualt @__ext_sig__ help types definition
typedef uint32_t ubitext_t;
typedef int32_t bitext_t;
// To provide a way to make missing control correctly you
// have to define macro @GetSystemTick() which has to
// return kind of tick counter (e.g. 1 ms ticker)
// #define GetSystemTick() __get__tick__()
#define GetSystemTick() (uint32_t)SystemGetMs()
// To provide a way to calculate hash (crc) for CAN
// frame's data field you have to define macro @GetFrameHash
// #define GetFrameHash(a,b,c,d,e) __get_hash__(a,b,c,d,e)

54
inc/canmonitorutil.h Normal file
View File

@ -0,0 +1,54 @@
// Generator version : v3.1
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
// declare here all availible checksum algorithms
typedef enum
{
// XOR8 = 0,
// XOR4 = 1,
// etc
// it is up to user to have or to skip final enum value - @CRC_ALG_COUNT
CRC_ALG_COUNT
} DbcCanCrcMethods;
typedef struct
{
// @last_cycle keeps tick-value when last frame was received
uint32_t last_cycle;
// @timeout_cycle keeps maximum timeout for frame, user responsibility
// to init this field and use it in missing frame monitoring function
uint32_t timeout_cycle;
// @frame_cnt keeps count of all the received frames
uint32_t frame_cnt;
// setting up @roll_error bit indicates roll counting fail.
// Bit is not clearing automatically!
uint32_t roll_error : 1;
// setting up @checksum_error bit indicates checksum checking failure.
// Bit is not clearing automatically!
uint32_t csm_error : 1;
// setting up @cycle_error bit indicates that time was overrunned.
// Bit is not clearing automatically!
uint32_t cycle_error : 1;
// setting up @dlc_error bit indicates that the actual length of
// CAN frame is less then defined by CAN matrix!
uint32_t dlc_error : 1;
} FrameMonitor_t;
#ifdef __cplusplus
}
#endif

175
lib/candb-fmon.h Normal file
View File

@ -0,0 +1,175 @@
// Generator version : v3.1
// DBC filename : CCU.dbc
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
// DBC file version
#define VER_CANDB_MAJ_FMON (0U)
#define VER_CANDB_MIN_FMON (0U)
#include "candb-config.h"
#ifdef CANDB_USE_DIAG_MONITORS
#include "canmonitorutil.h"
/*
This file contains the prototypes of all the functions that will be called
from each Unpack_*name* function to detect DBC related errors
It is the user responsibility to defined these functions in the
separated .c file. If it won't be done the linkage error will happen
*/
#ifdef CANDB_USE_MONO_FMON
void _FMon_MONO_candb(FrameMonitor_t* _mon, uint32_t msgid);
#define FMon_ESC_04_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_EMS_Veh_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_BCM_Powertrain_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_EMS_Veh_02_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_BCM_EEM_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_DMFR_Msg1_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_DMFL_Msg1_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_TM_Stat_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_TM_CP_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_HVC_CCU_Status_Msg_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_BCM_VEH_STATE_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_EMS_HVC_Req_Msg_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_HVC_Err_Status_Msg_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_HVC_Req_Msg_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_Stat1_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_Stat2_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_Requests_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_Stat3_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_VCU_Msg1_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_VCU_Msg2_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_BCM_CLIMATIC_DATA_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_Msg1_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_VCU_CCU_Req_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_ESC_08_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_SMFL_status_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_SMFR_status_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_SMRL_status_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_SMRR_status_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_Errors_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_Msg3_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_SDM_Cmd_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_VEH_VIN_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_OCUFL_MSG_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_OCUFR_MSG_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_OCURL_MSG_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_OCURR_MSG_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_DW_STATE_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_FIU_CCU1_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_FIU_CCU2_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_FIU_CCU3_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_Diag_To_CCU_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_Diag_From_CCU_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_Diag_Functional_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_HVC_01_candb(x, y) _FMon_MONO_candb((x), (y))
#define FMon_CCU_AC_Ctrl_candb(x, y) _FMon_MONO_candb((x), (y))
#else
void _FMon_ESC_04_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_EMS_Veh_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_BCM_Powertrain_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_EMS_Veh_02_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_BCM_EEM_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_DMFR_Msg1_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_DMFL_Msg1_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_TM_Stat_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_TM_CP_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_HVC_CCU_Status_Msg_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_BCM_VEH_STATE_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_EMS_HVC_Req_Msg_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_HVC_Err_Status_Msg_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_HVC_Req_Msg_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_Stat1_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_Stat2_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_Requests_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_Stat3_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_VCU_Msg1_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_VCU_Msg2_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_BCM_CLIMATIC_DATA_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_Msg1_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_VCU_CCU_Req_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_ESC_08_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_SMFL_status_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_SMFR_status_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_SMRL_status_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_SMRR_status_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_Errors_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_Msg3_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_SDM_Cmd_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_VEH_VIN_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_OCUFL_MSG_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_OCUFR_MSG_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_OCURL_MSG_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_OCURR_MSG_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_DW_STATE_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_FIU_CCU1_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_FIU_CCU2_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_FIU_CCU3_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_Diag_To_CCU_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_Diag_From_CCU_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_Diag_Functional_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_HVC_01_candb(FrameMonitor_t* _mon, uint32_t msgid);
void _FMon_CCU_AC_Ctrl_candb(FrameMonitor_t* _mon, uint32_t msgid);
#define FMon_ESC_04_candb(x, y) _FMon_ESC_04_candb((x), (y))
#define FMon_EMS_Veh_candb(x, y) _FMon_EMS_Veh_candb((x), (y))
#define FMon_BCM_Powertrain_candb(x, y) _FMon_BCM_Powertrain_candb((x), (y))
#define FMon_EMS_Veh_02_candb(x, y) _FMon_EMS_Veh_02_candb((x), (y))
#define FMon_BCM_EEM_candb(x, y) _FMon_BCM_EEM_candb((x), (y))
#define FMon_DMFR_Msg1_candb(x, y) _FMon_DMFR_Msg1_candb((x), (y))
#define FMon_DMFL_Msg1_candb(x, y) _FMon_DMFL_Msg1_candb((x), (y))
#define FMon_TM_Stat_candb(x, y) _FMon_TM_Stat_candb((x), (y))
#define FMon_TM_CP_candb(x, y) _FMon_TM_CP_candb((x), (y))
#define FMon_HVC_CCU_Status_Msg_candb(x, y) _FMon_HVC_CCU_Status_Msg_candb((x), (y))
#define FMon_BCM_VEH_STATE_candb(x, y) _FMon_BCM_VEH_STATE_candb((x), (y))
#define FMon_EMS_HVC_Req_Msg_candb(x, y) _FMon_EMS_HVC_Req_Msg_candb((x), (y))
#define FMon_HVC_Err_Status_Msg_candb(x, y) _FMon_HVC_Err_Status_Msg_candb((x), (y))
#define FMon_CCU_HVC_Req_Msg_candb(x, y) _FMon_CCU_HVC_Req_Msg_candb((x), (y))
#define FMon_CCU_Stat1_candb(x, y) _FMon_CCU_Stat1_candb((x), (y))
#define FMon_CCU_Stat2_candb(x, y) _FMon_CCU_Stat2_candb((x), (y))
#define FMon_CCU_Requests_candb(x, y) _FMon_CCU_Requests_candb((x), (y))
#define FMon_CCU_Stat3_candb(x, y) _FMon_CCU_Stat3_candb((x), (y))
#define FMon_CCU_VCU_Msg1_candb(x, y) _FMon_CCU_VCU_Msg1_candb((x), (y))
#define FMon_CCU_VCU_Msg2_candb(x, y) _FMon_CCU_VCU_Msg2_candb((x), (y))
#define FMon_BCM_CLIMATIC_DATA_candb(x, y) _FMon_BCM_CLIMATIC_DATA_candb((x), (y))
#define FMon_CCU_Msg1_candb(x, y) _FMon_CCU_Msg1_candb((x), (y))
#define FMon_VCU_CCU_Req_candb(x, y) _FMon_VCU_CCU_Req_candb((x), (y))
#define FMon_ESC_08_candb(x, y) _FMon_ESC_08_candb((x), (y))
#define FMon_SMFL_status_candb(x, y) _FMon_SMFL_status_candb((x), (y))
#define FMon_SMFR_status_candb(x, y) _FMon_SMFR_status_candb((x), (y))
#define FMon_SMRL_status_candb(x, y) _FMon_SMRL_status_candb((x), (y))
#define FMon_SMRR_status_candb(x, y) _FMon_SMRR_status_candb((x), (y))
#define FMon_CCU_Errors_candb(x, y) _FMon_CCU_Errors_candb((x), (y))
#define FMon_CCU_Msg3_candb(x, y) _FMon_CCU_Msg3_candb((x), (y))
#define FMon_SDM_Cmd_candb(x, y) _FMon_SDM_Cmd_candb((x), (y))
#define FMon_VEH_VIN_candb(x, y) _FMon_VEH_VIN_candb((x), (y))
#define FMon_OCUFL_MSG_candb(x, y) _FMon_OCUFL_MSG_candb((x), (y))
#define FMon_OCUFR_MSG_candb(x, y) _FMon_OCUFR_MSG_candb((x), (y))
#define FMon_OCURL_MSG_candb(x, y) _FMon_OCURL_MSG_candb((x), (y))
#define FMon_OCURR_MSG_candb(x, y) _FMon_OCURR_MSG_candb((x), (y))
#define FMon_DW_STATE_candb(x, y) _FMon_DW_STATE_candb((x), (y))
#define FMon_FIU_CCU1_candb(x, y) _FMon_FIU_CCU1_candb((x), (y))
#define FMon_FIU_CCU2_candb(x, y) _FMon_FIU_CCU2_candb((x), (y))
#define FMon_FIU_CCU3_candb(x, y) _FMon_FIU_CCU3_candb((x), (y))
#define FMon_Diag_To_CCU_candb(x, y) _FMon_Diag_To_CCU_candb((x), (y))
#define FMon_Diag_From_CCU_candb(x, y) _FMon_Diag_From_CCU_candb((x), (y))
#define FMon_Diag_Functional_candb(x, y) _FMon_Diag_Functional_candb((x), (y))
#define FMon_HVC_01_candb(x, y) _FMon_HVC_01_candb((x), (y))
#define FMon_CCU_AC_Ctrl_candb(x, y) _FMon_CCU_AC_Ctrl_candb((x), (y))
#endif
#endif // CANDB_USE_DIAG_MONITORS
#ifdef __cplusplus
}
#endif

3013
lib/candb.c Normal file

File diff suppressed because it is too large Load Diff

9464
lib/candb.h Normal file

File diff suppressed because it is too large Load Diff

15
modular.json Normal file
View File

@ -0,0 +1,15 @@
{
"cmake": {
"inc_dirs": [
"inc",
"butl",
"conf",
"lib"
],
"srcs": [
"butl/**.c",
"lib/**.c",
"usr/**.c"
]
}
}

294
usr/candb-fmon.c Normal file
View File

@ -0,0 +1,294 @@
// Generator version : v3.1
// DBC filename : CCU.dbc
#include "candb-fmon.h"
#ifdef CANDB_USE_DIAG_MONITORS
/*
Put the monitor function content here, keep in mind -
next generation will completely clear all manually added code (!)
*/
#ifdef CANDB_USE_MONO_FMON
void _FMon_MONO_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
#else
void _FMon_ESC_04_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_EMS_Veh_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_BCM_Powertrain_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_EMS_Veh_02_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_BCM_EEM_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_DMFR_Msg1_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_DMFL_Msg1_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_TM_Stat_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_TM_CP_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_HVC_CCU_Status_Msg_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_BCM_VEH_STATE_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_EMS_HVC_Req_Msg_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_HVC_Err_Status_Msg_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_HVC_Req_Msg_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_Stat1_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_Stat2_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_Requests_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_Stat3_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_VCU_Msg1_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_VCU_Msg2_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_BCM_CLIMATIC_DATA_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_Msg1_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_VCU_CCU_Req_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_ESC_08_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_SMFL_status_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_SMFR_status_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_SMRL_status_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_SMRR_status_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_Errors_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_Msg3_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_SDM_Cmd_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_VEH_VIN_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_OCUFL_MSG_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_OCUFR_MSG_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_OCURL_MSG_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_OCURR_MSG_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_DW_STATE_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_FIU_CCU1_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_FIU_CCU2_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_FIU_CCU3_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_Diag_To_CCU_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_Diag_From_CCU_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_Diag_Functional_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_HVC_01_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
void _FMon_CCU_AC_Ctrl_candb(FrameMonitor_t* _mon, uint32_t msgid)
{
(void)_mon;
(void)msgid;
}
#endif // CANDB_USE_MONO_FMON
#endif // CANDB_USE_DIAG_MONITORS