45#define I2C_WRITE_BUFFER_SIZE (9)
48#define CMD_SEND_COMBINED_STATUS_DATA (0x43)
51#define I2C_TIMEOUT (60.0e-3)
54#define I2C_TIMEOUT_IN_100us_TICKS ((uint16_t)(I2C_TIMEOUT/100.0e-6))
73 } __attribute__((packed))
bits;
89 } __attribute__((packed))
bits;
104 } __attribute__((packed))
bits;
void Drv_I2C_Timeout(void)
I2C_t Drv_I2C_Get_Write_Data(void)
bool I2C2_StatusCallback(I2C2_SLAVE_DRIVER_STATUS status)
#define I2C_WRITE_BUFFER_SIZE
volatile bool done
Bit #2: flag indicating that I2C module is finished processing this message.
volatile unsigned
Bit #4: unused
volatile bool cmd_ok
Bit #0: flag indicating the validity of the command byte.
struct I2C_STATUS_s::@3::@5 bits
volatile bool timeout
Bit #3: flag indicating that I2C message has not been received withing timeout period.
volatile bool pec_ok
Bit #1: flag indicating PEC error (CRC error in datastream)
volatile uint8_t sic4
Bit 6:7
struct SIC_FLAGS_s::@6::@8 bits
volatile uint8_t sic2
Bit 2:3
volatile uint8_t sic3
Bit 4:5
volatile uint8_t sic1
Bit 0:1
volatile uint8_t
Bit 6:7 -> 0 = no fault.
volatile uint8_t _24v
Bit 4:5 -> 0 = no fault.
struct AUX_FLAGS_s::@9::@11 bits
volatile uint8_t _5v
Bit 0:1 -> 0 = no fault
volatile uint8_t _12v
Bit 2:3 -> 0 = no fault.
uint8_t array[I2C_WRITE_BUFFER_SIZE]
struct SIC_CLIENT_RECEIVE_FRAME_s::@12::@14 bytes
SIC_FLAGS_t sic_status_flags
AUX_FLAGS_t aux_fault_flags
SIC_CLIENT_RECEIVE_FRAME_t frame
buffer to store I2C data
I2C_STATUS_t status
status flags