Adc_Flagchip_FC7240/Inc/AdcFlagchip.h

59 lines
1.2 KiB
C

//
// Created by cfif on 17.11.22.
//
#ifndef ADC_FLAGCHIP_H
#define ADC_FLAGCHIP_H
#include "Adc.h"
#include "cmsis_os2.h"
#include "fc7xxx_driver_adc.h"
#include "fc7xxx_driver_pcc.h"
#include "interrupt_manager.h"
typedef struct {
ADC_InstanceType ADCx;
uint8_t num_aChannels;
uint32_t *DMA_BUF;
int32_t offset;
double mux;
double div;
osMessageQueueId_t txAccessQueue;
ADC_InitType s_tAdcInitCfg;
ADC_DmaType s_tAdcDmaCfg;
float pVoltageBuffer[32];
} tAdcFlagchip;
tAdcFlagchip ADC_Initial(
ADC_InstanceType ADCx, // ADC_INSTANCE_0, ADC_INSTANCE_1
PCC_ClkSrcType adcClock, // PCC_CLK_ADC0, PCC_CLK_ADC1
DMA_ChannelType ADC_DMA_CHANNEL, // DMA_CHANNEL_0 .. DMA_CHANNEL_15
IRQn_Type IRQ_DMA,
uint8_t IRQ_DMA_PRIORITY,
uint8_t IRQ_DMA_CHANNEL_PRIORITY,
const uint32_t *DMA_BUF,
uint8_t num_aChannels,
ADC_ChannelCfgType *s_aChannels,
int32_t offset,
double mux,
double div,
ADC_ConvCompleteCallbackType Bsp_ADC_HandleResult
);
tAdcIO vAdcGetIo(tAdcFlagchip *env);
void Get_ADC_Result(tAdcFlagchip *env);
#endif //ADC_FLAGCHIP_H