60 lines
1015 B
C
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
|