50 lines
1.7 KiB
C
50 lines
1.7 KiB
C
|
/******************************************************************************/
|
||
|
/* Copyright (c) 2016 MD Automotive Controls. Original Work. */
|
||
|
/* License: http://www.gnu.org/licenses/gpl.html GPL version 2 or higher */
|
||
|
/******************************************************************************/
|
||
|
/* CONTEXT:KERNEL */
|
||
|
/* PACKAGE TITLE: ADC Header File */
|
||
|
/* DESCRIPTION: ADC */
|
||
|
/* FILE NAME: ADC.h */
|
||
|
/* REVISION HISTORY: 19-08-2016 | 1.0 | Initial revision */
|
||
|
/* */
|
||
|
/******************************************************************************/
|
||
|
#ifndef PERADC_H
|
||
|
#define PERADC_H
|
||
|
|
||
|
#include "ADCAPI.h"
|
||
|
#include "IOAPI.h"
|
||
|
#include "SYSAPI.h"
|
||
|
#include "types.h"
|
||
|
|
||
|
#define ADC_nCalFromRecord 1
|
||
|
|
||
|
typedef enum
|
||
|
{
|
||
|
ADC_enqueueChannelErr,
|
||
|
ADC_enqueueQueueFullErr
|
||
|
} ADC_tenEnqueueErr;
|
||
|
|
||
|
|
||
|
typedef struct
|
||
|
{
|
||
|
IOAPI_tenEHIOResource enEHIOResource;
|
||
|
uint32 u32Result;
|
||
|
} ADC_tstADCResult;
|
||
|
|
||
|
|
||
|
#define ADC_nConversionsMax 10u
|
||
|
#define ADC_nChannels IO_AD_Count
|
||
|
|
||
|
void ADC_vStart(uint32* const);
|
||
|
void ADC_vRun(uint32* const);
|
||
|
void ADC_vTerminate(uint32* const);
|
||
|
void ADC_vInterruptHandler(IOAPI_tenEHIOResource, void*);
|
||
|
SYSAPI_tenSVCResult ADC_vInitADCResource(IOAPI_tenEHIOResource, IOAPI_tenEHIOType, ADCAPI_tstADCCB*);
|
||
|
bool ADC_vTriggerQueue(ADCAPI_tenTrigger);
|
||
|
bool ADC_boBackupCalibrations(void);
|
||
|
void ADC_vRunConversionQueueHAs(void);
|
||
|
|
||
|
#endif //PERADC_H
|
||
|
|