109#include "Std_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 (1U)
145#define ICU_SW_PATCH_VERSION (0U)
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))
414typedef struct Icu_ConfigType_PC_s
443typedef 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)
870FUNC(
void, ICU_CODE) Icu_GetVersionInfo(
871 P2VAR(Std_VersionInfoType, AUTOMATIC, sICU_APPL_DATA) VersionInfoPtr);
875#if (ICU_WAKEUP_FUNCTIONALITY_API == STD_ON)
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)
Icu_ActivationType
This type defines Activation range.
Definition Icu.h:313
void Icu_SetMode(Icu_ModeType Mode)
This function sets the ICU mode.
Icu_TimestampBufferType
This type defines TimeStamp Property range.
Definition Icu.h:382
void Icu_DisableEdgeDetection(Icu_ChannelType Channel)
Service for disabling the detection of edges of the given channel.
void Icu_StartSignalMeasurement(Icu_ChannelType Channel)
Service for starting the measurement of signals.
void Icu_EnableEdgeDetection(Icu_ChannelType Channel)
Service for enabling/re-enabling the detection of edges of the given channel.
Icu_InputStateType
This type defines a input state of ICU driver.
Definition Icu.h:301
Icu_ValueType Icu_GetTimeElapsed(Icu_ChannelType Channel)
Service for reading the elasped time for the given channel.
Icu_ModeType
This type defines a range of mode type.
Definition Icu.h:290
void Icu_StopTimestamp(Icu_ChannelType Channel)
Service for stopping the timestamp measurement.
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_DisableWakeup(Icu_ChannelType Channel)
This function disables the wakeup capability of a single ICU channel.
Icu_InputStateType Icu_GetInputState(Icu_ChannelType Channel)
Service for getting the ICU input status.
Icu_MeasurementModeType
This type defines available measurement modes.
Definition Icu.h:352
void Icu_StartTimestamp(Icu_ChannelType Channel, Icu_ValueType *BufferPtr, uint16 BufferSize, uint16 NotifyInterval)
Service for starts the captuing of timer values on the edges.
uint32 Icu_EdgeNumberType
This type defines return value of Icu-Icu_GetEdgeNumbers.
Definition Icu.h:346
void Icu_EnableEdgeCount(Icu_ChannelType Channel)
Service enabling the counting of edges of a given channel.
void Icu_DisableEdgeCount(Icu_ChannelType Channel)
Service for disabling the couting of edges of the given channel.
Std_ReturnType Icu_RegisterReadback(Icu_ChannelType IcuChannel, Icu_RegisterReadbackType *RegRbPtr)
Icu_SignalMeasurementPropertyType
This type defines Signal Measurement Property range.
Definition Icu.h:367
void Icu_Init(const Icu_ConfigType *ConfigPtr)
Service for ICU initialization.
uint32 Icu_ValueType
This type defines Value type.
Definition Icu.h:325
uint8 Icu_ChannelType
This type defines Channel type.
Definition Icu.h:395
void Icu_ResetEdgeCount(Icu_ChannelType Channel)
Service for resets the value of the counted edges to zero.
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...
uint32 Icu_ChannelPrescalerType
This type defines Prescaler type.
Definition Icu.h:400
Icu_EdgeNumberType Icu_GetEdgeNumbers(Icu_ChannelType Channel)
Service for reading the number of counted edges.
void Icu_StopSignalMeasurement(Icu_ChannelType Channel)
Service for stopping the measurement of signals.
void Icu_EnableWakeup(Icu_ChannelType Channel)
This function (re-)enables the wakeup capability of the given ICU channel.
void(* Icu_NotifyFuncType)(void)
Notification callback function pointer
Definition Icu.h:390
void Icu_DisableNotification(Icu_ChannelType Channel)
Service for disabling notification.
void Icu_DeInit(void)
Service for ICU de-initialization.
void Icu_EnableNotification(Icu_ChannelType Channel)
Service for enabling notification.
Icu_IndexType Icu_GetTimeStampIndex(Icu_ChannelType Channel)
uint32 Icu_IndexType
This type defines return value Icu_GetTimeStampIndex.
Definition Icu.h:341
Icu_IndexType Icu_GetTimestampIndex(Icu_ChannelType Channel)
Service for reading the timestamp index of a givem channel.
Icu_TimestampBufferType bufferType
Definition Icu.h:432
#define ICU_MAX_NUM_CHANNELS
Definition j721e/mcu1_0/include/Icu_Cfg.h:181
Icu_MeasurementModeType measurementMode
Definition Icu.h:426
uint32 instanceClkMHz
Definition Icu.h:434
Icu_ActivationType defaultStartEdge
Definition Icu.h:424
uint32 ECAP_CNTPHS
Definition Icu.h:461
Icu_ChannelType channelId
Definition Icu.h:407
uint32 ECAP_ECCTL
Definition Icu.h:462
Icu_SignalMeasurementPropertyType signalMeasurementProperty
Definition Icu.h:428
Icu_ChannelType icuMaxChannel
Definition Icu.h:445
Icu_ValueType PeriodTime
Definition Icu.h:334
uint32 ECAP_ECINT_EN_FLG
Definition Icu.h:463
Icu_ValueType ActiveTime
Definition Icu.h:332
uint32 prescaler
Definition Icu.h:436
Icu_NotifyFuncType notificationHandler
Definition Icu.h:430
@ ICU_RISING_EDGE
Definition Icu.h:314
@ ICU_FALLING_EDGE
Definition Icu.h:316
@ ICU_BOTH_EDGES
Definition Icu.h:318
@ ICU_LINEAR_BUFFER
Definition Icu.h:383
@ ICU_CIRCULAR_BUFFER
Definition Icu.h:385
@ ICU_ACTIVE
Definition Icu.h:302
@ ICU_IDLE
Definition Icu.h:304
@ ICU_MODE_SLEEP
Definition Icu.h:293
@ ICU_MODE_NORMAL
Definition Icu.h:291
@ ICU_MODE_EDGE_COUNTER
Definition Icu.h:359
@ ICU_MODE_SIGNAL_EDGE_DETECT
Definition Icu.h:353
@ ICU_MODE_TIMESTAMP
Definition Icu.h:357
@ ICU_MODE_SIGNAL_MEASUREMENT
Definition Icu.h:355
@ ICU_HIGH_TIME
Definition Icu.h:370
@ ICU_PERIOD_TIME
Definition Icu.h:372
@ ICU_DUTY_CYCLE
Definition Icu.h:374
@ ICU_LOW_TIME
Definition Icu.h:368
ICU Channel Config Structure of Pre-Compile only.
Definition Icu.h:406
ICU Channel Config Structure.
Definition Icu.h:423
ICU Config Structure of Pre-Compile only.
Definition Icu.h:415
ICU Config Structure.
Definition Icu.h:444
This type defines Duty Cycle struct.
Definition Icu.h:331
Icu register readback structure.
Definition Icu.h:457