121#include "Std_Types.h"
140#define ADC_SW_MAJOR_VERSION (9U)
142#define ADC_SW_MINOR_VERSION (2U)
144#define ADC_SW_PATCH_VERSION (3U)
155#define ADC_AR_RELEASE_MAJOR_VERSION (4U)
157#define ADC_AR_RELEASE_MINOR_VERSION (3U)
159#define ADC_AR_RELEASE_REVISION_VERSION (1U)
167#define ADC_VENDOR_ID ((uint16) 44U)
169#define ADC_MODULE_ID ((uint16) 123U)
171#define ADC_INSTANCE_ID ((uint8) 0U)
177#define ADC_DEF_CHANNEL_RESOLUTION ((Adc_ResolutionType) 12U)
189#define ADC_NUM_CHANNEL (10U)
191#define ADC_MIN_CHANNEL_ID (0U)
193#define ADC_MAX_CHANNEL_ID (ADC_NUM_CHANNEL - 1U)
200#define ADC_NUM_HW_CHANNEL (10U)
202#define ADC_MIN_HW_CHANNEL_ID (0U)
204#define ADC_MAX_HW_CHANNEL_ID (ADC_NUM_HW_CHANNEL - 1U)
206#define ADC_INTERNAL_CALIBRATION (0U)
209#define ADC_MIN_OPEN_DELAY (0x00U)
211#define ADC_MAX_OPEN_DELAY (0x3FFFFU)
213#define ADC_MIN_SAMPLE_DELAY (0x00U)
215#define ADC_MAX_SAMPLE_DELAY (0xFFU)
217#define ADC_MIN_RANGE (0x00U)
219#define ADC_MAX_RANGE (0xFFFU)
232#define ADC_E_UNINIT ((uint8) 0x0AU)
236#define ADC_E_BUSY ((uint8) 0x0BU)
240#define ADC_E_IDLE ((uint8) 0x0CU)
242#ifndef ADC_E_ALREADY_INITIALIZED
247#define ADC_E_ALREADY_INITIALIZED ((uint8) 0x0DU)
249#ifndef ADC_E_PARAM_CONFIG
251#define ADC_E_PARAM_CONFIG ((uint8) 0x0EU)
253#ifndef ADC_E_PARAM_POINTER
255#define ADC_E_PARAM_POINTER ((uint8) 0x14U)
257#ifndef ADC_E_PARAM_GROUP
259#define ADC_E_PARAM_GROUP ((uint8) 0x15U)
261#ifndef ADC_E_WRONG_CONV_MODE
266#define ADC_E_WRONG_CONV_MODE ((uint8) 0x16U)
268#ifndef ADC_E_WRONG_TRIGG_SRC
270#define ADC_E_WRONG_TRIGG_SRC ((uint8) 0x17U)
272#ifndef ADC_E_NOTIF_CAPABILITY
277#define ADC_E_NOTIF_CAPABILITY ((uint8) 0x18U)
279#ifndef ADC_E_BUFFER_UNINIT
281#define ADC_E_BUFFER_UNINIT ((uint8) 0x19U)
283#ifndef ADC_E_NOT_DISENGAGED
285#define ADC_E_NOT_DISENGAGED ((uint8) 0x1AU)
287#ifndef ADC_E_POWER_STATE_NOT_SUPPORTED
289#define ADC_E_POWER_STATE_NOT_SUPPORTED ((uint8) 0x1BU)
291#ifndef ADC_E_TRANSITION_NOT_POSSIBLE
293#define ADC_E_TRANSITION_NOT_POSSIBLE ((uint8) 0x1CU)
295#ifndef ADC_E_PERIPHERAL_NOT_PREPARED
297#define ADC_E_PERIPHERAL_NOT_PREPARED ((uint8) 0x1DU)
388#if (STD_ON == ADC_INTERNAL_DIAGNOSTIC_DEBUG_MODE_API)
404#define ADC_SID_INIT ((uint8) 0x00U)
406#define ADC_SID_DEINIT ((uint8) 0x01U)
408#define ADC_SID_START_GROUP_CONVERSION ((uint8) 0x02U)
410#define ADC_SID_STOP_GROUP_CONVERSION ((uint8) 0x03U)
412#define ADC_SID_READ_GROUP ((uint8) 0x04U)
414#define ADC_SID_ENABLE_HARDWARE_TRIGGER ((uint8) 0x05U)
416#define ADC_SID_DISABLE_HARDWARE_TRIGGER ((uint8) 0x06U)
418#define ADC_SID_ENABLE_GROUP_NOTIFICATION ((uint8) 0x07U)
420#define ADC_SID_DISABLE_GROUP_NOTIFICATION ((uint8) 0x08U)
422#define ADC_SID_GET_GROUP_STATUS ((uint8) 0x09U)
424#define ADC_SID_GET_VERSION_INFO ((uint8) 0x0AU)
426#define ADC_SID_GET_STREAM_LAST_POINTER ((uint8) 0x0BU)
428#define ADC_SID_SETUP_RESULT_BUFFER ((uint8) 0x0CU)
430#define ADC_SID_SET_POWER_STATE ((uint8) 0x10U)
432#define ADC_SID_GET_CURRENT_POWER_STATE ((uint8) 0x11U)
434#define ADC_SID_GET_TARGET_POWER_STATE ((uint8) 0x12U)
436#define ADC_SID_PREPARE_POWER_STATE ((uint8) 0x13U)
438#define ADC_SID_MAIN_POWER_TRANSITION_MANAGER ((uint8) 0x14U)
440#define ADC_SID_IOHWAB_NOTIFICATION ((uint8) 0x20U)
442#define ADC_SID_IOHWAB_NOTIFY_READY_FOR_POWER_STATE ((uint8) 0x70U)
827typedef struct Adc_ConfigType_s
841#if (STD_ON == ADC_REGISTER_READBACK_API)
888#if (STD_ON == ADC_DEINIT_API)
999#if (STD_ON == ADC_ENABLE_START_STOP_GROUP_API)
1042#if (STD_ON == ADC_READ_GROUP_API)
1080#if (STD_ON == ADC_GRP_NOTIF_CAPABILITY_API)
1124#if (STD_ON == ADC_VERSION_INFO_API)
1144 P2VAR(Std_VersionInfoType, AUTOMATIC, ADC_APPL_DATA) versioninfo);
1147#if (STD_ON == ADC_REGISTER_READBACK_API)
1182#if (STD_ON == ADC_INTERNAL_DIAGNOSTIC_DEBUG_MODE_API)
This file contains generated pre compile configuration file for ADC MCAL driver.
void Adc_Init(const Adc_ConfigType *CfgPtr)
Service for ADC initialization.
uint16 Adc_SamplingTimeType
Type of sampling time, i.e. the time during which the value is sampled (in clockcycles).
Definition Adc.h:347
uint8 Adc_GroupType
Numeric ID of an ADC channel group.
Definition Adc.h:311
Adc_ChannelRangeSelectType
In case of active limit checking: defines which conversion values are taken into account related to t...
Definition Adc.h:608
Std_ReturnType Adc_DisableInternalDiagnostic(Adc_GroupType Group)
This function disables the Functional Internal Diagnostic Debug mode.
Adc_StreamNumSampleType Adc_GetStreamLastPointer(Adc_GroupType Group, Adc_ValueGroupType **PtrToSamplePtr)
Returns the number of valid samples per channel, stored in the result buffer.
uint16 Adc_ConversionTimeType
Type of conversion time, i.e. the time during which the sampled analogue value is converted into digi...
Definition Adc.h:338
Adc_StreamBufferModeType
Type for configuring the streaming access mode buffer type.
Definition Adc.h:518
void Adc_DeInit(void)
This service sets all ADC HW Units to a state comparable to their power on reset state.
Std_ReturnType Adc_RegisterReadback(Adc_HWUnitType HWUnit, Adc_RegisterReadbackType *RegRbPtr)
This function reads the important registers of the hardware unit and returns the value in the structu...
uint8 Adc_HwTriggerTimerType
Type for the value of the ADC module embedded timer.
Definition Adc.h:380
Std_ReturnType Adc_EnableInternalDiagnostic(Adc_GroupType Group, Adc_RefSelType RefSelect)
This function enables the Functional Internal Diagnostic Debug mode and selects a known voltage sourc...
void Adc_StartGroupConversion(Adc_GroupType Group)
Starts the conversion of all channels of the requested ADC Channel group.
uint8 Adc_RefSelType
Specifies the Reference select for functional internal diagnostic debug mode.
Definition Adc.h:393
Adc_ResultAlignmentType
Type for alignment of ADC raw results in ADC result buffer (left/right alignment).
Definition Adc.h:633
Adc_HwTriggerSignalType
Type for configuring on which edge of the hardware trigger signal the driver should react,...
Definition Adc.h:552
uint8 Adc_HWUnitType
Specifies the identification (ID) for a ADC Hardware microcontroller peripheral (unit)
Definition Adc.h:386
Adc_PowerStateRequestResultType
Result of the requests related to power state transitions.
Definition Adc.h:662
Adc_GroupReplacementType
Replacement mechanism, which is used on ADC group level, if a group conversion is interrupted by a gr...
Definition Adc.h:585
Adc_GroupAccessModeType
Type for configuring the access mode to group conversion results.
Definition Adc.h:535
#define ADC_NUM_CHANNEL
Number of MCAL channels - in terms of ADC HW, this represents the number of hardware steps....
Definition Adc.h:189
uint8 Adc_GroupPriorityType
Priority level of the channel. Lowest priority is 0.
Definition Adc.h:359
uint8 Adc_ResolutionType
Type of channel resolution in number of bits.
Definition Adc.h:353
void Adc_EnableGroupNotification(Adc_GroupType Group)
Enables the notification mechanism for the requested ADC Channel group.
Adc_StatusType
Current status of the conversion of the requested ADC Channel group.
Definition Adc.h:464
void Adc_StopGroupConversion(Adc_GroupType Group)
Stops the conversion of the requested ADC Channel group.
Adc_TriggerSourceType
Type for configuring the trigger source for an ADC Channel group.
Definition Adc.h:487
void Adc_GetVersionInfo(Std_VersionInfoType *versioninfo)
This service returns the version information of this module.
uint32 Adc_GroupDefType
Type of assignment of channels to a channel group.
Definition Adc.h:365
Adc_PriorityImplementationType
Type for configuring the prioritization mechanism.
Definition Adc.h:568
Adc_AveragingMode
Enum to number of samplings to average. ADC allows user to program the number of samplings to average...
Definition Adc.h:684
uint8 Adc_ChannelType
Numeric ID of an ADC channel.
Definition Adc.h:305
Adc_PowerStateType
Power state currently active or set as target power state.
Definition Adc.h:648
uint32 Adc_ValueGroupType
Type for reading the converted values of a channel group (raw, without further scaling,...
Definition Adc.h:323
Std_ReturnType Adc_SetupResultBuffer(Adc_GroupType Group, const Adc_ValueGroupType *DataBufferPtr)
This service initializes ADC driver with the group specific result buffer start address where the con...
Adc_StatusType Adc_GetGroupStatus(Adc_GroupType Group)
Returns the conversion status of the requested ADC Channel group.
Adc_GroupConvModeType
Type for configuring the conversion mode of an ADC Channel group.
Definition Adc.h:502
void(* Adc_GroupEndNotifyType)(void)
Typedef for group end notification function pointer.
Definition Adc.h:455
void Adc_DisableGroupNotification(Adc_GroupType Group)
Disables the notification mechanism for the requested ADC Channel group.
uint16 Adc_StreamNumSampleType
Type for configuring the number of group conversions in streaming access mode (in single access mode,...
Definition Adc.h:374
Std_ReturnType Adc_ReadGroup(Adc_GroupType Group, Adc_ValueGroupType *DataBufferPtr)
Reads the group conversion result of the last completed conversion round of the requested group and s...
uint32 Adc_PrescaleType
Type of clock prescaler factor.
Definition Adc.h:329
Adc_GroupConvModeType convMode
Definition Adc.h:763
uint32 sampleDelay
Definition Adc.h:723
uint32 rangeCheckEnable
Definition Adc.h:727
Adc_GroupPriorityType groupPriority
Definition Adc.h:750
uint32 adcCtrl
Definition Adc.h:853
Adc_AveragingMode averagingMode
Definition Adc.h:734
Adc_StreamNumSampleType streamNumSamples
Definition Adc.h:757
#define ADC_MAX_HW_UNIT
Maximum HW unit - This should match the sum for the below units ISR which are ON.
Definition Adc_Cfg.h:190
Adc_GroupReplacementType groupReplacement
Definition Adc.h:779
Adc_HWUnitType hwUnitId
Definition Adc.h:752
Adc_HWUnitType hwUnitId
Definition Adc.h:816
uint32 numChannels
Definition Adc.h:804
uint32 hwChannelId
Definition Adc.h:705
uint32 lowRange
Definition Adc.h:793
Adc_TriggerSourceType triggSrc
Definition Adc.h:765
uint32 adcMisc
Definition Adc.h:855
uint8 maxHwUnit
Definition Adc.h:832
Adc_StreamBufferModeType streamBufMode
Definition Adc.h:770
uint32 openDelay
Definition Adc.h:719
Adc_ResolutionType resolution
Definition Adc.h:759
Adc_GroupAccessModeType accessMode
Definition Adc.h:768
Adc_GroupType groupId
Definition Adc.h:747
uint32 baseAddr
Definition Adc.h:818
uint32 adcRev
Definition Adc.h:851
Adc_GroupEndNotifyType Adc_GroupEndNotification
Definition Adc.h:754
Adc_HwTriggerTimerType hwTrigTimer
Definition Adc.h:775
Adc_HwTriggerSignalType hwTrigSignal
Definition Adc.h:772
#define ADC_MAX_GROUP
Maximum group across all hwunit.
Definition Adc_Cfg.h:183
uint8 maxGroup
Definition Adc.h:829
uint32 highRange
Definition Adc.h:783
@ ADC_RANGE_NOT_UNDER_LOW
Definition Adc.h:617
@ ADC_RANGE_UNDER_LOW
Definition Adc.h:609
@ ADC_RANGE_ALWAYS
Definition Adc.h:615
@ ADC_RANGE_BETWEEN
Definition Adc.h:611
@ ADC_RANGE_NOT_OVER_HIGH
Definition Adc.h:621
@ ADC_RANGE_NOT_BETWEEN
Definition Adc.h:619
@ ADC_RANGE_OVER_HIGH
Definition Adc.h:613
@ ADC_STREAM_BUFFER_LINEAR
Definition Adc.h:519
@ ADC_STREAM_BUFFER_CIRCULAR
Definition Adc.h:522
@ ADC_ALIGN_RIGHT
Definition Adc.h:637
@ ADC_ALIGN_LEFT
Definition Adc.h:634
@ ADC_HW_TRIG_RISING_EDGE
Definition Adc.h:553
@ ADC_HW_TRIG_FALLING_EDGE
Definition Adc.h:555
@ ADC_HW_TRIG_BOTH_EDGES
Definition Adc.h:557
@ ADC_POWER_STATE_NOT_SUPP
Definition Adc.h:672
@ ADC_TRANS_NOT_POSSIBLE
Definition Adc.h:674
@ ADC_SEQUENCE_ERROR
Definition Adc.h:667
@ ADC_HW_FAILURE
Definition Adc.h:669
@ ADC_SERVICE_ACCEPTED
Definition Adc.h:663
@ ADC_NOT_INIT
Definition Adc.h:665
@ ADC_GROUP_REPL_SUSPEND_RESUME
Definition Adc.h:589
@ ADC_GROUP_REPL_ABORT_RESTART
Definition Adc.h:586
@ ADC_ACCESS_MODE_SINGLE
Definition Adc.h:536
@ ADC_ACCESS_MODE_STREAMING
Definition Adc.h:538
@ ADC_BUSY
Definition Adc.h:468
@ ADC_STREAM_COMPLETED
Definition Adc.h:475
@ ADC_COMPLETED
Definition Adc.h:471
@ ADC_IDLE
Definition Adc.h:465
@ ADC_TRIGG_SRC_SW
Definition Adc.h:488
@ ADC_TRIGG_SRC_HW
Definition Adc.h:490
@ ADC_PRIORITY_HW_SW
Definition Adc.h:573
@ ADC_PRIORITY_NONE
Definition Adc.h:569
@ ADC_PRIORITY_HW
Definition Adc.h:571
@ ADC_AVERAGING_MODE_4_SAMPLES
Definition Adc.h:689
@ ADC_AVERAGING_MODE_NONE
Definition Adc.h:685
@ ADC_AVERAGING_MODE_8_SAMPLES
Definition Adc.h:691
@ ADC_AVERAGING_MODE_2_SAMPLES
Definition Adc.h:687
@ ADC_AVERAGING_MODE_16_SAMPLES
Definition Adc.h:693
@ ADC_FULL_POWER
Definition Adc.h:649
@ ADC_ZERO_POWER
Definition Adc.h:651
@ ADC_CONV_MODE_ONESHOT
Definition Adc.h:503
@ ADC_CONV_MODE_CONTINUOUS
Definition Adc.h:506
Structure containing parameters for ADC MCAL channel configuration. In term of ADC hardware,...
Definition Adc.h:704
ADC config structure.
Definition Adc.h:828
ADC Group configuration structure.
Definition Adc.h:746
ADC Hardware unit configuration structure.
Definition Adc.h:815
ADC register readback structure.
Definition Adc.h:847