1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
#ifndef DRIVERS_ADC_H_
#define DRIVERS_ADC_H_
#include <stdint.h>
#include "drivers/I2C_Communication/ADC_MUX/ADC_MUX.h"
//*****************************************************************************
//
// The following are indexes for values returned from the ADC's. These index's
// map directly to g_pui32ADCSeq[], and inside this array there is a directly
// ADC copied data
//*****************************************************************************
typedef enum
{
ADC_AIR_PRESSURE_1 ,//0
ADC_AIR_PRESSURE_2 ,//1
ADC_DISPENSE_PRESSURE_1 ,//2
ADC_DISPENSE_PRESSURE_2 ,//3
ADC_DISPENSE_PRESSURE_3 ,//4
ADC_DISPENSE_PRESSURE_4 ,//5
ADC_DISPENSE_PRESSURE_5 ,//6
ADC_DISPENSE_PRESSURE_6 ,//7
ADC_DISPENSE_PRESSURE_7 ,//8
ADC_DISPENSE_PRESSURE_8 ,//9
ADC_VOCSENS ,//10
ADC_SPARE1 ,//11
ADC_SPARE2 ,//12
ADC_LEFT_DANCER_1 ,//13
ADC_LEFT_DANCER_2 ,//14
ADC_RIGHT_DANCER ,//15
ADC_DRYER_CURRENT_1 ,//16
ADC_DRYER_CURRENT_2 ,//17
ADC_DRYER_CURRENT_3 ,//18
ADC_FPGA_3V3 ,//19
ADC_MAX_ADC_DEVICES ,//20
}ADC_TYPE;
//#define MAX_ADC_DEVICES 20
#define MAX_DISPENSERS
//#define MAX_ADC_DEVICES NUM_ADC_CHANNELS
#define MAX_DIGITAL_POTENTIOMETER_READ 0x660D
extern int DispenserIdToPressureSensorId[MAX_DISPENSERS];
typedef void (*ProcessCallback)(uint32_t* adcData);
void ADCAcquireInit(void);
void VOCAlarmsInit(void);
uint32_t ADC_TriggerCollection(void);
uint32_t ADC_GetReading(ADC_TYPE DataItemId);
void ADCAcquireStart(ProcessCallback _callback, uint32_t _period);
void ADCAcquireStop(void);
void ADC0SS0Handler(void);
//double Calculate_Pitot_Pressure(bool flow ) ;
//uint8_t Calculate_Gas_Power_Consumption();
uint32_t Read_Dryer_Heaters_Current(HEATERS_CURRENT Heater_ID);
void CheckAcInputVoltage();
#ifdef VAC_TEST
extern double VAC_Test;
#endif
double ReadVAC();
extern PowerControlFlag Power_Control_Flag;
float CalculateDispenserPressure (int DispenserId);
void Calculateinit (void);
#endif /* DRIVERS_ADC_H_ */
|