109 #include "Std_Types.h"   111 #include "EcuM_Types.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.