Adc_AutoChips_AC7840x/Inc/Adc_AC7840x.h

60 lines
1015 B
C

//
// Created by cfif on 17.11.22.
//
#ifndef ADC_ARTERY_H
#define ADC_ARTERY_H
#include "AdcIO.h"
#include "cmsis_os2.h"
#include CMSIS_device_header
#include "gpio_drv.h"
#include "adc_drv.h"
#include "dma_drv.h"
typedef struct {
uint8_t ADC0_CHANNEL_NUM;
uint8_t ADC1_CHANNEL_NUM;
adc_converter_config_t adc0Config;
adc_converter_config_t adc1Config;
dma_state_t g_dma_state;
dma_chn_state_t g_dma_adc0_state;
dma_chn_state_t g_dma_adc1_state;
uint16_t g_adc0_array[32];
uint16_t g_adc1_array[32];
} tAdcGlobalAC7840x;
typedef struct {
int32_t offset;
double mux;
double div;
uint8_t index;
uint16_t *g_adc_array;
#ifdef ACCESS_ADC
osMutexId_t access;
#endif
} tAdcAC7840x;
tAdcAC7840x ADC_Initial(
tAdcAC7840x *env,
PORT_Type *port,
uint32_t pinMask,
adc_inputchannel_t channel,
int32_t offset,
double mux,
double div
);
tAdcIO vAdcGetIo(tAdcAC7840x *env);
#endif //ADC_ARTERY_H