109 #include "Std_Types.h" 111 #include "EcuM_Cbk.h" 127 #define ICU_VENDOR_ID ((uint16) 44U) 129 #define ICU_MODULE_ID ((uint16) 122U) 131 #define ICU_INSTANCE_ID ((uint8) 0U) 141 #define ICU_SW_MAJOR_VERSION (9U) 143 #define ICU_SW_MINOR_VERSION (0U) 145 #define ICU_SW_PATCH_VERSION (1U) 155 #define ICU_AR_RELEASE_MAJOR_VERSION (4U) 157 #define ICU_AR_RELEASE_MINOR_VERSION (3U) 159 #define ICU_AR_RELEASE_REVISION_VERSION (1U) 170 #define ICU_INIT_ID ((uint8) 0x00U) 172 #define ICU_DEINIT_ID ((uint8) 0x01U) 174 #define ICU_SETMODE_ID ((uint8) 0x02U) 176 #define ICU_SETACTIVATIONCONDITION_ID ((uint8) 0x05U) 178 #define ICU_DISABLENOTIFICATION_ID ((uint8) 0x06U) 180 #define ICU_ENABLENOTIFICATION_ID ((uint8) 0x07U) 182 #define ICU_GETINPUTSTATE_ID ((uint8) 0x08U) 184 #define ICU_STARTTIMESTAMP_ID ((uint8) 0x09U) 186 #define ICU_STOPTIMESTAMP_ID ((uint8) 0x0AU) 188 #define ICU_GETTIMESTAMPINDEX_ID ((uint8) 0x0BU) 190 #define ICU_RESETEDGECOUNT_ID ((uint8) 0x0CU) 192 #define ICU_ENABLEEDGECOUNT_ID ((uint8) 0x0DU) 194 #define ICU_ENABLEEDGEDETECTION_ID ((uint8) 0x16U) 196 #define ICU_DISABLEEDGEDETECTION_ID ((uint8) 0x17U) 198 #define ICU_DISABLEEDGECOUNT_ID ((uint8) 0x0EU) 200 #define ICU_GETEDGENUMBERS_ID ((uint8) 0x0FU) 202 #define ICU_STARTSIGNALMEASUREMENT_ID ((uint8) 0x13U) 204 #define ICU_STOPSIGNALMEASUREMENT_ID ((uint8) 0x14U) 206 #define ICU_GETTIMEELAPSED_ID ((uint8) 0x10U) 208 #define ICU_GETDUTYCYCLEVALUES_ID ((uint8) 0x11U) 210 #define ICU_GETVERSIONINFO_ID ((uint8) 0x12U) 212 #define ICU_SID_REGISTER_READBACK ((uint8) 0x18U) 225 #define ICU_E_PARAM_POINTER ((uint8) 0x0AU) 230 #define ICU_E_PARAM_CHANNEL ((uint8) 0x0BU) 232 #define ICU_E_PARAM_ACTIVATION ((uint8) 0x0CU) 234 #define ICU_E_INIT_FAILED ((uint8) 0x0DU) 236 #define ICU_E_PARAM_BUFFER_SIZE ((uint8) 0x0EU) 238 #define ICU_E_PARAM_MODE ((uint8) 0x0FU) 240 #define ICU_E_UNINIT ((uint8) 0x14U) 242 #define ICU_E_NOT_STARTED ((uint8) 0x16U) 244 #define ICU_E_BUSY_OPERATION ((uint8) 0x16U) 246 #define ICU_E_ALREADY_INITIALIZED ((uint8) 0x17U) 248 #define ICU_E_PARAM_NOTIFY_INTERVAL ((uint8) 0x18U) 250 #define ICU_E_PARAM_VINFO ((uint8) 0x19U) 263 #define ICU_STATUS_UNINIT ((uint8)(0U)) 265 #define ICU_STATUS_INIT ((uint8)(1U)) 273 #define ICU_FALLING ((uint8)(0U)) 275 #define ICU_RISING ((uint8)(1U)) 414 typedef struct Icu_ConfigType_PC_s
443 typedef struct Icu_ConfigType_s
451 #if (STD_ON == ICU_SAFETY_DIAGNOSTIC_API) 499 #if (STD_ON == ICU_DE_INIT_API) 578 #if (ICU_GET_INPUT_STATE_API == STD_ON) 598 #if (ICU_TIMESTAMP_API == STD_ON) 659 #if (ICU_EDGE_COUNT_API == STD_ON) 733 #if (ICU_EDGE_DETECT_API == STD_ON) 771 #if (ICU_SIGNAL_MEASUREMENT_API == STD_ON) 809 #if (ICU_GET_TIME_ELAPSED_API == STD_ON) 829 #if (ICU_GET_DUTY_CYCLE_VALUES_API == STD_ON) 851 #if (ICU_GET_VERSION_INFO_API) 870 FUNC(
void, ICU_CODE) Icu_GetVersionInfo(
871 P2VAR(Std_VersionInfoType, AUTOMATIC, sICU_APPL_DATA) VersionInfoPtr);
875 #if (ICU_WAKEUP_FUNCTIONALITY_API == STD_ON) 897 FUNC(
void, ICU_CODE)
Icu_CheckWakeup(EcuM_WakeupSourceType WakeupSource);
900 #if (ICU_DISABLEWAKEUP_API == STD_ON) 921 #if (ICU_ENABLEWAKEUP_API == STD_ON) 942 #if (ICU_SETMODE_API == STD_ON) 966 #if (STD_ON == ICU_SAFETY_DIAGNOSTIC_API) uint32 instanceClkMHz
Definition: Icu.h:434
Icu_TimestampBufferType bufferType
Definition: Icu.h:432
uint32 ECAP_CNTPHS
Definition: Icu.h:461
Icu_TimestampBufferType
This type defines TimeStamp Property range.
Definition: Icu.h:381
void Icu_StartSignalMeasurement(Icu_ChannelType Channel)
Service for starting the measurement of signals.
#define ICU_MAX_NUM_CHANNELS
Definition: Icu_Cfg.h:166
This type defines Duty Cycle struct.
Definition: Icu.h:330
uint32 ECAP_ECCTL
Definition: Icu.h:462
Icu_ModeType
This type defines a range of mode type.
Definition: Icu.h:289
void Icu_Init(const Icu_ConfigType *ConfigPtr)
Service for ICU initialization.
Icu_InputStateType Icu_GetInputState(Icu_ChannelType Channel)
Service for getting the ICU input status.
void Icu_StopSignalMeasurement(Icu_ChannelType Channel)
Service for stopping the measurement of signals.
ICU Channel Config Structure of Pre-Compile only.
Definition: Icu.h:405
Icu_ActivationType defaultStartEdge
Definition: Icu.h:424
uint32 Icu_EdgeNumberType
This type defines return value of Icu-Icu_GetEdgeNumbers.
Definition: Icu.h:346
Icu_EdgeNumberType Icu_GetEdgeNumbers(Icu_ChannelType Channel)
Service for reading the number of counted edges.
Icu_ChannelType channelId
Definition: Icu.h:407
ICU Channel Config Structure.
Definition: Icu.h:423
void Icu_CheckWakeup(EcuM_WakeupSourceType WakeupSource)
This function checks if a wakeup capable ICU channel is the source for a wakeup event and calls the E...
void Icu_DisableNotification(Icu_ChannelType Channel)
Service for disabling notification.
uint32 Icu_ValueType
This type defines Value type.
Definition: Icu.h:325
This file contains generated pre compile configuration file for ICU MCAL driver.
uint32 ECAP_ECINT_EN_FLG
Definition: Icu.h:463
Icu_ChannelType icuMaxChannel
Definition: Icu.h:445
Icu_NotifyFuncType notificationHandler
Definition: Icu.h:430
void Icu_DisableEdgeCount(Icu_ChannelType Channel)
Service for disabling the couting of edges of the given channel.
Icu_ValueType PeriodTime
Definition: Icu.h:334
void Icu_DisableWakeup(Icu_ChannelType Channel)
This function disables the wakeup capability of a single ICU channel.
ICU Config Structure.
Definition: Icu.h:443
void Icu_EnableNotification(Icu_ChannelType Channel)
Service for enabling notification.
uint32 prescaler
Definition: Icu.h:436
Icu_ValueType ActiveTime
Definition: Icu.h:332
void Icu_ResetEdgeCount(Icu_ChannelType Channel)
Service for resets the value of the counted edges to zero.
Icu_SignalMeasurementPropertyType signalMeasurementProperty
Definition: Icu.h:428
void(* Icu_NotifyFuncType)(void)
Notification callback function pointer.
Definition: Icu.h:390
Icu_InputStateType
This type defines a input state of ICU driver.
Definition: Icu.h:300
Icu_ValueType Icu_GetTimeElapsed(Icu_ChannelType Channel)
Service for reading the elasped time for the given channel.
uint32 Icu_ChannelPrescalerType
This type defines Prescaler type.
Definition: Icu.h:400
Icu_IndexType Icu_GetTimeStampIndex(Icu_ChannelType Channel)
void Icu_StartTimestamp(Icu_ChannelType Channel, Icu_ValueType *BufferPtr, uint16 BufferSize, uint16 NotifyInterval)
Service for starts the captuing of timer values on the edges.
ICU Config Structure of Pre-Compile only.
Definition: Icu.h:414
Icu_IndexType Icu_GetTimestampIndex(Icu_ChannelType Channel)
Service for reading the timestamp index of a givem channel.
Icu_ActivationType
This type defines Activation range.
Definition: Icu.h:312
Std_ReturnType Icu_RegisterReadback(Icu_ChannelType IcuChannel, Icu_RegisterReadbackType *RegRbPtr)
void Icu_EnableWakeup(Icu_ChannelType Channel)
This function (re-)enables the wakeup capability of the given ICU channel.
void Icu_SetMode(Icu_ModeType Mode)
This function sets the ICU mode.
Icu register readback structure.
Definition: Icu.h:456
void Icu_DeInit(void)
Service for ICU de-initialization.
uint8 Icu_ChannelType
This type defines Channel type.
Definition: Icu.h:395
void Icu_EnableEdgeDetection(Icu_ChannelType Channel)
Service for enabling/re-enabling the detection of edges of the given channel.
uint32 Icu_IndexType
This type defines return value Icu_GetTimeStampIndex.
Definition: Icu.h:341
void Icu_DisableEdgeDetection(Icu_ChannelType Channel)
Service for disabling the detection of edges of the given channel.
Icu_MeasurementModeType measurementMode
Definition: Icu.h:426
Icu_MeasurementModeType
This type defines available measurement modes.
Definition: Icu.h:351
Icu_SignalMeasurementPropertyType
This type defines Signal Measurement Property range.
Definition: Icu.h:366
void Icu_SetActivationCondition(Icu_ChannelType Channel, Icu_ActivationType Activation)
Service for setting Activation Condition.
void Icu_GetDutyCycleValues(Icu_ChannelType Channel, Icu_DutyCycleType *DutyCycleValues)
Service for reading the coherent active time and period time of given channel.
void Icu_StopTimestamp(Icu_ChannelType Channel)
Service for stopping the timestamp measurement.
void Icu_EnableEdgeCount(Icu_ChannelType Channel)
Service enabling the counting of edges of a given channel.