Обновление
This commit is contained in:
parent
cf4376d719
commit
b67e53366c
90
Adcs.c
90
Adcs.c
|
|
@ -9,59 +9,70 @@
|
|||
tAdcs ADCS;
|
||||
|
||||
void Bsp_ADC0_HandleResult(const uint32_t *const pBuffer) {
|
||||
Get_ADC_Result(ADCS.vccIo.env);
|
||||
Get_ADC_Result(ADCS.adc_0_IO.env);
|
||||
}
|
||||
|
||||
#define ADC0_CHN_NUM_EN 2
|
||||
void Bsp_ADC1_HandleResult(const uint32_t *const pBuffer) {
|
||||
Get_ADC_Result(ADCS.adc_1_IO.env);
|
||||
}
|
||||
|
||||
#define ADC0_CHN_NUM_EN 1
|
||||
#define ADC1_CHN_NUM_EN 1
|
||||
|
||||
static uint32_t s_aAdc0ResultBuf[ADC0_CHN_NUM_EN] = {0U};
|
||||
|
||||
static const ADC_ChannelCfgType s_aChannels[ADC0_CHN_NUM_EN] =
|
||||
static uint32_t s_aAdc1ResultBuf[ADC1_CHN_NUM_EN] = {0U};
|
||||
|
||||
|
||||
static const ADC_ChannelCfgType s_aChannels0[ADC0_CHN_NUM_EN] =
|
||||
{
|
||||
{
|
||||
.eChannel = ADC_CHANNEL_10,
|
||||
.eSampleTimeOption = ADC_SAMPLE_TIME_OPTION_1
|
||||
},
|
||||
{
|
||||
.eChannel = ADC_CHANNEL_11,
|
||||
.eChannel = ADC_CHANNEL_0,
|
||||
.eSampleTimeOption = ADC_SAMPLE_TIME_OPTION_1
|
||||
}
|
||||
};
|
||||
|
||||
static const ADC_ChannelCfgType s_aChannels1[ADC1_CHN_NUM_EN] =
|
||||
{
|
||||
{
|
||||
.eChannel = ADC_CHANNEL_25,
|
||||
.eSampleTimeOption = ADC_SAMPLE_TIME_OPTION_1
|
||||
}
|
||||
};
|
||||
|
||||
void Adcs_Init() {
|
||||
tAdcs *env = &ADCS;
|
||||
|
||||
PORT_InitType tInitStruct = {0};
|
||||
|
||||
/* PTD16: ADC0_SE10 */
|
||||
tInitStruct.u32PortPins = PORT_PIN_16;
|
||||
tInitStruct.uPortPinMux.u32PortPinMode = PORTD_16_ADC0_SE10_CMP0_IN0;
|
||||
// PTA25: ADC0_SE0
|
||||
tInitStruct.u32PortPins = PORT_PIN_25;
|
||||
tInitStruct.uPortPinMux.u32PortPinMode = PORTA_25_ADC0_SE0;
|
||||
tInitStruct.bPullEn = false;
|
||||
tInitStruct.ePullSel = PORT_PULL_UP;
|
||||
PORT_InitPins(PORT_D, &tInitStruct);
|
||||
PORT_InitPins(PORT_A, &tInitStruct);
|
||||
|
||||
/* PTD15: ADC0_SE11 */
|
||||
tInitStruct.u32PortPins = PORT_PIN_15;
|
||||
tInitStruct.uPortPinMux.u32PortPinMode = PORTD_15_ADC0_SE11_CMP0_IN1;
|
||||
tInitStruct.bPullEn = false;
|
||||
tInitStruct.ePullSel = PORT_PULL_UP;
|
||||
PORT_InitPins(PORT_D, &tInitStruct);
|
||||
// PTD15: ADC0_SE11
|
||||
// tInitStruct.u32PortPins = PORT_PIN_15;
|
||||
// tInitStruct.uPortPinMux.u32PortPinMode = PORTD_15_ADC0_SE11_CMP0_IN1;
|
||||
// tInitStruct.bPullEn = false;
|
||||
// tInitStruct.ePullSel = PORT_PULL_UP;
|
||||
// PORT_InitPins(PORT_D, &tInitStruct);
|
||||
|
||||
ADC_Initial(
|
||||
&env->vcc,
|
||||
&env->adc_0,
|
||||
ADC_INSTANCE_0, // ADC_INSTANCE_0, ADC_INSTANCE_1
|
||||
|
||||
DMA_CHANNEL_3, // DMA_CHANNEL_0 .. DMA_CHANNEL_15
|
||||
|
||||
DMA2_IRQn,
|
||||
0x55,
|
||||
2,
|
||||
DMA3_IRQn,
|
||||
0xFF,
|
||||
DMA3_IRQn,
|
||||
|
||||
s_aAdc0ResultBuf,
|
||||
|
||||
ADC0_CHN_NUM_EN,
|
||||
(ADC_ChannelCfgType *) s_aChannels,
|
||||
(ADC_ChannelCfgType *) s_aChannels0,
|
||||
|
||||
0,
|
||||
0,
|
||||
|
|
@ -70,5 +81,36 @@ void Adcs_Init() {
|
|||
Bsp_ADC0_HandleResult
|
||||
);
|
||||
|
||||
env->vccIo = vAdcGetIo(&env->vcc);
|
||||
env->adc_0_IO = vAdcGetIo(&env->adc_0);
|
||||
|
||||
// PTB9: ADC1_SE25
|
||||
tInitStruct.u32PortPins = PORT_PIN_9;
|
||||
tInitStruct.uPortPinMux.u32PortPinMode = PORTB_9_ADC1_SE25;
|
||||
tInitStruct.bPullEn = false;
|
||||
tInitStruct.ePullSel = PORT_PULL_UP;
|
||||
PORT_InitPins(PORT_B, &tInitStruct);
|
||||
|
||||
ADC_Initial(
|
||||
&env->adc_1,
|
||||
ADC_INSTANCE_1, // ADC_INSTANCE_0, ADC_INSTANCE_1
|
||||
|
||||
DMA_CHANNEL_4, // DMA_CHANNEL_0 .. DMA_CHANNEL_15
|
||||
|
||||
DMA4_IRQn,
|
||||
0xFF,
|
||||
DMA4_IRQn,
|
||||
|
||||
s_aAdc1ResultBuf,
|
||||
|
||||
ADC1_CHN_NUM_EN,
|
||||
(ADC_ChannelCfgType *) s_aChannels1,
|
||||
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
|
||||
Bsp_ADC1_HandleResult
|
||||
);
|
||||
|
||||
env->adc_1_IO = vAdcGetIo(&env->adc_1);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue