MCUSW
Adc.h
Go to the documentation of this file.
1 /*
2 *
3 * Copyright (c) 2024 Texas Instruments Incorporated
4 *
5 * All rights reserved not granted herein.
6 *
7 * Limited License.
8 *
9 * Texas Instruments Incorporated grants a world-wide, royalty-free, non-exclusive
10 * license under copyrights and patents it now or hereafter owns or controls to make,
11 * have made, use, import, offer to sell and sell ("Utilize") this software subject to the
12 * terms herein. With respect to the foregoing patent license, such license is granted
13 * solely to the extent that any such patent is necessary to Utilize the software alone.
14 * The patent license shall not apply to any combinations which include this software,
15 * other than combinations with devices manufactured by or for TI ("TI Devices").
16 * No hardware patent is licensed hereunder.
17 *
18 * Redistributions must preserve existing copyright notices and reproduce this license
19 * (including the above copyright notice and the disclaimer and (if applicable) source
20 * code license limitations below) in the documentation and/or other materials provided
21 * with the distribution
22 *
23 * Redistribution and use in binary form, without modification, are permitted provided
24 * that the following conditions are met:
25 *
26 * * No reverse engineering, decompilation, or disassembly of this software is
27 * permitted with respect to any software provided in binary form.
28 *
29 * * any redistribution and use are licensed by TI for use only with TI Devices.
30 *
31 * * Nothing shall obligate TI to provide you with source code for the software
32 * licensed and provided to you in object code.
33 *
34 * If software source code is provided to you, modification and redistribution of the
35 * source code are permitted provided that the following conditions are met:
36 *
37 * * any redistribution and use of the source code, including any resulting derivative
38 * works, are licensed by TI for use only with TI Devices.
39 *
40 * * any redistribution and use of any object code compiled from the source code
41 * and any resulting derivative works, are licensed by TI for use only with TI Devices.
42 *
43 * Neither the name of Texas Instruments Incorporated nor the names of its suppliers
44 *
45 * may be used to endorse or promote products derived from this software without
46 * specific prior written permission.
47 *
48 * DISCLAIMER.
49 *
50 * THIS SOFTWARE IS PROVIDED BY TI AND TI'S LICENSORS "AS IS" AND ANY EXPRESS
51 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
52 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
53 * IN NO EVENT SHALL TI AND TI'S LICENSORS BE LIABLE FOR ANY DIRECT, INDIRECT,
54 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
55 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
56 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
57 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
58 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
59 * OF THE POSSIBILITY OF SUCH DAMAGE.
60 *
61 */
62 
94 /*
95  * Below are the global design requirements which are met by this ADC
96  * driver which can't be mapped to a particular source ID
97  */
98 /*
99  * Design: MCAL-5723,MCAL-5861
100  */
101 
102 /*
103  * Below are the ADC's module environment design requirements which can't
104  * be mapped to this driver
105  */
106 /*
107  * Design: MCAL-5805,MCAL-5708,MCAL-5739,MCAL-5748
108  */
109 
110  /*
111  * Note: MCAL-5700,MCAL-5834 are prerequisites which are done by SBL/GEL files.
112  */
113 
114 
115 #ifndef ADC_H_
116 #define ADC_H_
117 
118 /* ========================================================================== */
119 /* Include Files */
120 /* ========================================================================== */
121 #include "Std_Types.h"
122 #include "Adc_Cfg.h"
123 
124 #ifdef __cplusplus
125 extern "C"
126 {
127 #endif
128 
129 /* ========================================================================== */
130 /* Macros & Typedefs */
131 /* ========================================================================== */
132 
140 #define ADC_SW_MAJOR_VERSION (9U)
141 
142 #define ADC_SW_MINOR_VERSION (2U)
143 
144 #define ADC_SW_PATCH_VERSION (0U)
145 
146 /* @} */
147 
155 #define ADC_AR_RELEASE_MAJOR_VERSION (4U)
156 
157 #define ADC_AR_RELEASE_MINOR_VERSION (3U)
158 
159 #define ADC_AR_RELEASE_REVISION_VERSION (1U)
160 /* @} */
161 
167 #define ADC_VENDOR_ID ((uint16) 44U)
168 
169 #define ADC_MODULE_ID ((uint16) 123U)
170 
171 #define ADC_INSTANCE_ID ((uint8) 0U)
172 /* @} */
177 #if defined (SOC_AM275X)
178 #define ADC_DEF_CHANNEL_RESOLUTION ((Adc_ResolutionType) 10U)
179 #else
180 #define ADC_DEF_CHANNEL_RESOLUTION ((Adc_ResolutionType) 12U)
181 #endif
182 
193 #define ADC_NUM_CHANNEL (10U)
194 
195 #define ADC_MIN_CHANNEL_ID (0U)
196 
197 #define ADC_MAX_CHANNEL_ID (ADC_NUM_CHANNEL - 1U)
198 
204 #define ADC_NUM_HW_CHANNEL (10U)
205 
206 #define ADC_MIN_HW_CHANNEL_ID (0U)
207 
208 #define ADC_MAX_HW_CHANNEL_ID (ADC_NUM_HW_CHANNEL - 1U)
209 
211 #define ADC_MIN_OPEN_DELAY (0x00U)
212 
213 #define ADC_MAX_OPEN_DELAY (0x3FFFFU)
214 
215 #define ADC_MIN_SAMPLE_DELAY (0x00U)
216 
217 #define ADC_MAX_SAMPLE_DELAY (0xFFU)
218 
219 #define ADC_MIN_RANGE (0x00U)
220 
221 #define ADC_MAX_RANGE (0xFFFU)
222 
223 /*
224  *Design: MCAL-5687
225  */
232 #ifndef ADC_E_UNINIT
233 
234 #define ADC_E_UNINIT ((uint8) 0x0AU)
235 #endif
236 #ifndef ADC_E_BUSY
237 
238 #define ADC_E_BUSY ((uint8) 0x0BU)
239 #endif
240 #ifndef ADC_E_IDLE
241 
242 #define ADC_E_IDLE ((uint8) 0x0CU)
243 #endif
244 #ifndef ADC_E_ALREADY_INITIALIZED
245 
249 #define ADC_E_ALREADY_INITIALIZED ((uint8) 0x0DU)
250 #endif
251 #ifndef ADC_E_PARAM_CONFIG
252 
253 #define ADC_E_PARAM_CONFIG ((uint8) 0x0EU)
254 #endif
255 #ifndef ADC_E_PARAM_POINTER
256 
257 #define ADC_E_PARAM_POINTER ((uint8) 0x14U)
258 #endif
259 #ifndef ADC_E_PARAM_GROUP
260 
261 #define ADC_E_PARAM_GROUP ((uint8) 0x15U)
262 #endif
263 #ifndef ADC_E_WRONG_CONV_MODE
264 
268 #define ADC_E_WRONG_CONV_MODE ((uint8) 0x16U)
269 #endif
270 #ifndef ADC_E_WRONG_TRIGG_SRC
271 
272 #define ADC_E_WRONG_TRIGG_SRC ((uint8) 0x17U)
273 #endif
274 #ifndef ADC_E_NOTIF_CAPABILITY
275 
279 #define ADC_E_NOTIF_CAPABILITY ((uint8) 0x18U)
280 #endif
281 #ifndef ADC_E_BUFFER_UNINIT
282 
283 #define ADC_E_BUFFER_UNINIT ((uint8) 0x19U)
284 #endif
285 #ifndef ADC_E_NOT_DISENGAGED
286 
287 #define ADC_E_NOT_DISENGAGED ((uint8) 0x1AU)
288 #endif
289 #ifndef ADC_E_POWER_STATE_NOT_SUPPORTED
290 
291 #define ADC_E_POWER_STATE_NOT_SUPPORTED ((uint8) 0x1BU)
292 #endif
293 #ifndef ADC_E_TRANSITION_NOT_POSSIBLE
294 
295 #define ADC_E_TRANSITION_NOT_POSSIBLE ((uint8) 0x1CU)
296 #endif
297 #ifndef ADC_E_PERIPHERAL_NOT_PREPARED
298 
299 #define ADC_E_PERIPHERAL_NOT_PREPARED ((uint8) 0x1DU)
300 #endif
301 /* @} */
302 
304 /*
305  *Design: MCAL-5852
306  */
307 typedef uint8 Adc_ChannelType;
308 
310 /*
311  * Design: MCAL-5702
312  */
313 typedef uint8 Adc_GroupType;
314 
322 /*
323  * Design: MCAL-5881,MCAL-5856
324  */
325 typedef uint32 Adc_ValueGroupType;
326 
328 /*
329  * Design: MCAL-5709
330  */
331 typedef uint32 Adc_PrescaleType;
332 
337 /*
338  * Design: MCAL-5822
339  */
340 typedef uint16 Adc_ConversionTimeType;
341 
346 /*
347  * Design: MCAL-5855
348  */
349 typedef uint16 Adc_SamplingTimeType;
350 
352 /*
353  * Design: MCAL-5800
354  */
355 typedef uint8 Adc_ResolutionType;
356 
358 /*
359  * Design: MCAL-5712
360  */
361 typedef uint8 Adc_GroupPriorityType;
362 
364 /*
365  * Design: MCAL-5817
366  */
367 typedef uint32 Adc_GroupDefType;
368 
373 /*
374  * Design: MCAL-5826
375  */
376 typedef uint16 Adc_StreamNumSampleType;
377 
379 /*
380  * Design: MCAL-5858
381  */
383 
388 typedef uint8 Adc_HWUnitType;
389 
390 #if (STD_ON == ADC_INTERNAL_DIAGNOSTIC_DEBUG_MODE_API)
391 
395 typedef uint8 Adc_RefSelType;
396 #endif
397 
406 #define ADC_SID_INIT ((uint8) 0x00U)
407 
408 #define ADC_SID_DEINIT ((uint8) 0x01U)
409 
410 #define ADC_SID_START_GROUP_CONVERSION ((uint8) 0x02U)
411 
412 #define ADC_SID_STOP_GROUP_CONVERSION ((uint8) 0x03U)
413 
414 #define ADC_SID_READ_GROUP ((uint8) 0x04U)
415 
416 #define ADC_SID_ENABLE_HARDWARE_TRIGGER ((uint8) 0x05U)
417 
418 #define ADC_SID_DISABLE_HARDWARE_TRIGGER ((uint8) 0x06U)
419 
420 #define ADC_SID_ENABLE_GROUP_NOTIFICATION ((uint8) 0x07U)
421 
422 #define ADC_SID_DISABLE_GROUP_NOTIFICATION ((uint8) 0x08U)
423 
424 #define ADC_SID_GET_GROUP_STATUS ((uint8) 0x09U)
425 
426 #define ADC_SID_GET_VERSION_INFO ((uint8) 0x0AU)
427 
428 #define ADC_SID_GET_STREAM_LAST_POINTER ((uint8) 0x0BU)
429 
430 #define ADC_SID_SETUP_RESULT_BUFFER ((uint8) 0x0CU)
431 
432 #define ADC_SID_SET_POWER_STATE ((uint8) 0x10U)
433 
434 #define ADC_SID_GET_CURRENT_POWER_STATE ((uint8) 0x11U)
435 
436 #define ADC_SID_GET_TARGET_POWER_STATE ((uint8) 0x12U)
437 
438 #define ADC_SID_PREPARE_POWER_STATE ((uint8) 0x13U)
439 
440 #define ADC_SID_MAIN_POWER_TRANSITION_MANAGER ((uint8) 0x14U)
441 
442 #define ADC_SID_IOHWAB_NOTIFICATION ((uint8) 0x20U)
443 
444 #define ADC_SID_IOHWAB_NOTIFY_READY_FOR_POWER_STATE ((uint8) 0x70U)
445 /* @} */
446 
447 /* ========================================================================== */
448 /* Structures and Enums */
449 /* ========================================================================== */
450 
457 typedef P2FUNC(void, ADC_APPL_CODE, Adc_GroupEndNotifyType)(void);
458 
462 /*
463  * Design: MCAL-5811
464  */
465 typedef enum
466 {
481 
485 /*
486  * Design: MCAL-5836
487  */
488 typedef enum
489 {
496 
500 /*
501  * Design: MCAL-5735
502  */
503 typedef enum
504 {
512 
516 /*
517  * Design: MCAL-5742
518  */
519 typedef enum
520 {
529 
533 /*
534  * Design: MCAL-5769
535  */
536 typedef enum
537 {
543 
550 /*
551  * Design: MCAL-5871
552  */
553 typedef enum
554 {
562 
566 /*
567  * Design: MCAL-5807
568  */
569 typedef enum
570 {
578 
583 /*
584  * Design: MCAL-5732
585  */
586 typedef enum
587 {
598 
606 /*
607  * Design: MCAL-5703
608  */
609 typedef enum
610 {
626 
631 /*
632  * Design: MCAL-5843
633  */
634 typedef enum
635 {
642 
646 /*
647  * Design: MCAL-5829
648  */
649 typedef enum
650 {
656 
660 /*
661  * Design: MCAL-5705
662  */
663 typedef enum
664 {
680 
685 typedef enum
686 {
698 
705 typedef struct
706 {
707  uint32 hwChannelId;
721  uint32 openDelay;
725  uint32 sampleDelay;
740 
744 /*
745  *Design: MCAL-5865,MCAL-5764,MCAL-5756,MCAL-5889,MCAL-5801,MCAL-5883,MCAL-5845,MCAL-5814,MCAL-5757,MCAL-5768
746  */
747 typedef struct
748 {
785  uint32 highRange;
795  uint32 lowRange;
806  uint32 numChannels;
812 
816 typedef struct
817 {
820  uint32 baseAddr;
822 
826 /*
827  * Design: MCAL-5716,MCAL-5760,MCAL-5690
828  */
829 typedef struct Adc_ConfigType_s
830 {
831  uint8 maxGroup;
834  uint8 maxHwUnit;
842 
843 #if (STD_ON == ADC_REGISTER_READBACK_API)
844 
848 typedef struct
849 {
850  /*
851  * ADC related registers
852  */
853  uint32 adcRev;
855  uint32 adcCtrl;
857  uint32 adcMisc;
861 #endif /* #if (STD_ON == ADC_REGISTER_READBACK_API) */
862 
863 /* @} */
864 
865 /* ========================================================================== */
866 /* Function Declarations */
867 /* ========================================================================== */
868 
887 FUNC(void, ADC_CODE) Adc_Init(
888  P2CONST(Adc_ConfigType, AUTOMATIC, ADC_PBCFG) CfgPtr);
889 
890 #if (STD_ON == ADC_DEINIT_API)
891 
910 FUNC(void, ADC_CODE) Adc_DeInit(void);
911 #endif /* #if (STD_ON == ADC_DEINIT_API) */
912 
943 FUNC(Std_ReturnType, ADC_CODE) Adc_SetupResultBuffer(
944  Adc_GroupType Group,
945  const Adc_ValueGroupType *DataBufferPtr);
946 
966 FUNC(Adc_StatusType, ADC_CODE) Adc_GetGroupStatus(Adc_GroupType Group);
967 
998  Adc_GroupType Group,
999  Adc_ValueGroupType **PtrToSamplePtr);
1000 
1001 #if (STD_ON == ADC_ENABLE_START_STOP_GROUP_API)
1002 
1021 FUNC(void, ADC_CODE) Adc_StartGroupConversion(Adc_GroupType Group);
1022 
1041 FUNC(void, ADC_CODE) Adc_StopGroupConversion(Adc_GroupType Group);
1042 #endif /* #if (STD_ON == ADC_ENABLE_START_STOP_GROUP_API) */
1043 
1044 #if (STD_ON == ADC_READ_GROUP_API)
1045 
1077 FUNC(Std_ReturnType, ADC_CODE) Adc_ReadGroup(
1078  Adc_GroupType Group,
1079  Adc_ValueGroupType *DataBufferPtr);
1080 #endif /* #if (STD_ON == ADC_READ_GROUP_API) */
1081 
1082 #if (STD_ON == ADC_GRP_NOTIF_CAPABILITY_API)
1083 
1102 FUNC(void, ADC_CODE) Adc_EnableGroupNotification(Adc_GroupType Group);
1103 
1123 FUNC(void, ADC_CODE) Adc_DisableGroupNotification(Adc_GroupType Group);
1124 #endif /* #if (STD_ON == ADC_GRP_NOTIF_CAPABILITY_API) */
1125 
1126 #if (STD_ON == ADC_VERSION_INFO_API)
1127 
1145 FUNC(void, ADC_CODE) Adc_GetVersionInfo(
1146  P2VAR(Std_VersionInfoType, AUTOMATIC, ADC_APPL_DATA) versioninfo);
1147 #endif /* #if (STD_ON == ADC_VERSION_INFO_API) */
1148 
1149 #if (STD_ON == ADC_REGISTER_READBACK_API)
1150 
1179 FUNC(Std_ReturnType, ADC_CODE) Adc_RegisterReadback(
1180  Adc_HWUnitType HWUnit,
1181  P2VAR(Adc_RegisterReadbackType, AUTOMATIC, ADC_APPL_DATA) RegRbPtr);
1182 #endif /* #if (STD_ON == ADC_REGISTER_READBACK_API) */
1183 
1184 #if (STD_ON == ADC_INTERNAL_DIAGNOSTIC_DEBUG_MODE_API)
1185 
1208 FUNC(Std_ReturnType, ADC_CODE) Adc_EnableInternalDiagnostic(
1209  Adc_GroupType Group, Adc_RefSelType RefSelect);
1210 
1229 FUNC(Std_ReturnType, ADC_CODE) Adc_DisableInternalDiagnostic(
1230  Adc_GroupType Group);
1231 #endif /* #if (STD_ON == ADC_INTERNAL_DIAGNOSTIC_DEBUG_MODE_API) */
1232 
1233 #ifdef __cplusplus
1234 }
1235 #endif
1236 
1237 #endif /* #ifndef ADC_H_ */
1238 
1239 /* @} */
Definition: Adc.h:667
Definition: Adc.h:615
void Adc_StartGroupConversion(Adc_GroupType Group)
Starts the conversion of all channels of the requested ADC Channel group.
Definition: Adc.h:467
#define ADC_NUM_CHANNEL
Number of MCAL channels - in terms of ADC HW, this represents the number of hardware steps....
Definition: Adc.h:193
Adc_StreamBufferModeType
Type for configuring the streaming access mode buffer type.
Definition: Adc.h:519
Definition: Adc.h:653
#define ADC_MAX_GROUP
Maximum group across all hwunit.
Definition: Adc_Cfg.h:184
Adc_HWUnitType hwUnitId
Definition: Adc.h:818
uint32 adcCtrl
Definition: Adc.h:855
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...
Definition: Adc.h:573
Structure containing parameters for ADC MCAL channel configuration. In term of ADC hardware,...
Definition: Adc.h:705
Definition: Adc.h:521
Definition: Adc.h:559
ADC config structure.
Definition: Adc.h:829
void Adc_Init(const Adc_ConfigType *CfgPtr)
Service for ADC initialization.
Adc_AveragingMode
Enum to number of samplings to average. ADC allows user to program the number of samplings to average...
Definition: Adc.h:685
Adc_StreamBufferModeType streamBufMode
Definition: Adc.h:772
uint32 highRange
Definition: Adc.h:785
uint32 baseAddr
Definition: Adc.h:820
Adc_GroupReplacementType
Replacement mechanism, which is used on ADC group level, if a group conversion is interrupted by a gr...
Definition: Adc.h:586
This file contains generated pre compile configuration file for ADC MCAL driver.
uint8 Adc_ChannelType
Numeric ID of an ADC channel.
Definition: Adc.h:307
ADC Hardware unit configuration structure.
Definition: Adc.h:816
Adc_ResolutionType resolution
Definition: Adc.h:761
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...
Adc_StatusType
Current status of the conversion of the requested ADC Channel group.
Definition: Adc.h:465
Adc_GroupAccessModeType
Type for configuring the access mode to group conversion results.
Definition: Adc.h:536
Adc_GroupEndNotifyType Adc_GroupEndNotification
Definition: Adc.h:756
Definition: Adc.h:691
Definition: Adc.h:613
Adc_AveragingMode averagingMode
Definition: Adc.h:736
Adc_StatusType Adc_GetGroupStatus(Adc_GroupType Group)
Returns the conversion status of the requested ADC Channel group.
Definition: Adc.h:505
Definition: Adc.h:623
Adc_PowerStateType
Power state currently active or set as target power state.
Definition: Adc.h:649
#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:191
Definition: Adc.h:617
Adc_GroupPriorityType groupPriority
Definition: Adc.h:752
Adc_HwTriggerTimerType hwTrigTimer
Definition: Adc.h:777
Adc_GroupReplacementType groupReplacement
Definition: Adc.h:781
uint32 hwChannelId
Definition: Adc.h:707
void Adc_StopGroupConversion(Adc_GroupType Group)
Stops the conversion of the requested ADC Channel group.
Definition: Adc.h:588
void Adc_DisableGroupNotification(Adc_GroupType Group)
Disables the notification mechanism for the requested ADC Channel group.
uint32 adcMisc
Definition: Adc.h:857
Definition: Adc.h:621
uint32 rangeCheckEnable
Definition: Adc.h:729
ADC Group configuration structure.
Definition: Adc.h:747
Definition: Adc.h:470
uint32 openDelay
Definition: Adc.h:721
uint32 adcRev
Definition: Adc.h:853
Definition: Adc.h:555
Definition: Adc.h:557
uint8 Adc_HWUnitType
Specifies the identification (ID) for a ADC Hardware microcontroller peripheral (unit)
Definition: Adc.h:388
void(* Adc_GroupEndNotifyType)(void)
Typedef for group end notification function pointer.
Definition: Adc.h:457
Definition: Adc.h:538
void Adc_DeInit(void)
This service sets all ADC HW Units to a state comparable to their power on reset state.
Adc_HwTriggerSignalType hwTrigSignal
Definition: Adc.h:774
Definition: Adc.h:477
uint32 sampleDelay
Definition: Adc.h:725
Adc_ChannelRangeSelectType
In case of active limit checking: defines which conversion values are taken into account related to t...
Definition: Adc.h:609
Std_ReturnType Adc_DisableInternalDiagnostic(Adc_GroupType Group)
This function disables the Functional Internal Diagnostic Debug mode.
ADC register readback structure.
Definition: Adc.h:848
Definition: Adc.h:540
uint8 maxGroup
Definition: Adc.h:831
Adc_StreamNumSampleType streamNumSamples
Definition: Adc.h:759
Definition: Adc.h:611
Definition: Adc.h:693
Definition: Adc.h:591
Definition: Adc.h:671
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_SamplingTimeType
Type of sampling time, i.e. the time during which the value is sampled (in clockcycles).
Definition: Adc.h:349
Definition: Adc.h:687
Adc_ResultAlignmentType
Type for alignment of ADC raw results in ADC result buffer (left/right alignment).
Definition: Adc.h:634
uint8 maxHwUnit
Definition: Adc.h:834
uint32 Adc_ValueGroupType
Type for reading the converted values of a channel group (raw, without further scaling,...
Definition: Adc.h:325
Adc_PowerStateRequestResultType
Result of the requests related to power state transitions.
Definition: Adc.h:663
void Adc_GetVersionInfo(Std_VersionInfoType *versioninfo)
This service returns the version information of this module.
Definition: Adc.h:665
Adc_TriggerSourceType
Type for configuring the trigger source for an ADC Channel group.
Definition: Adc.h:488
uint8 Adc_GroupType
Numeric ID of an ADC channel group.
Definition: Adc.h:313
Adc_GroupType groupId
Definition: Adc.h:749
uint8 Adc_RefSelType
Specifies the Reference select for functional internal diagnostic debug mode.
Definition: Adc.h:395
Adc_GroupAccessModeType accessMode
Definition: Adc.h:770
Definition: Adc.h:669
Adc_TriggerSourceType triggSrc
Definition: Adc.h:767
Adc_GroupConvModeType convMode
Definition: Adc.h:765
Definition: Adc.h:639
uint8 Adc_ResolutionType
Type of channel resolution in number of bits.
Definition: Adc.h:355
Definition: Adc.h:689
Definition: Adc.h:524
Adc_GroupConvModeType
Type for configuring the conversion mode of an ADC Channel group.
Definition: Adc.h:503
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...
Definition: Adc.h:492
Definition: Adc.h:651
Definition: Adc.h:571
uint32 lowRange
Definition: Adc.h:795
uint8 Adc_HwTriggerTimerType
Type for the value of the ADC module embedded timer.
Definition: Adc.h:382
uint32 numChannels
Definition: Adc.h:806
Adc_PriorityImplementationType
Type for configuring the prioritization mechanism.
Definition: Adc.h:569
uint32 Adc_PrescaleType
Type of clock prescaler factor.
Definition: Adc.h:331
Definition: Adc.h:676
uint32 Adc_GroupDefType
Type of assignment of channels to a channel group.
Definition: Adc.h:367
void Adc_EnableGroupNotification(Adc_GroupType Group)
Enables the notification mechanism for the requested ADC Channel group.
Adc_HWUnitType hwUnitId
Definition: Adc.h:754
uint8 Adc_GroupPriorityType
Priority level of the channel. Lowest priority is 0.
Definition: Adc.h:361
Definition: Adc.h:490
Definition: Adc.h:695
Definition: Adc.h:473
Definition: Adc.h:674
Definition: Adc.h:508
uint16 Adc_StreamNumSampleType
Type for configuring the number of group conversions in streaming access mode (in single access mode,...
Definition: Adc.h:376
Definition: Adc.h:619
uint16 Adc_ConversionTimeType
Type of conversion time, i.e. the time during which the sampled analogue value is converted into digi...
Definition: Adc.h:340
Adc_HwTriggerSignalType
Type for configuring on which edge of the hardware trigger signal the driver should react,...
Definition: Adc.h:553
Definition: Adc.h:636
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...
Definition: Adc.h:575