1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-15 12:25:20 +03:00

Adding DMA ownership for ADC, LED STRIP, USART and MOTOR

This commit is contained in:
blckmn 2016-11-08 13:47:37 +11:00
parent 9ec798a6f5
commit 8dc3bee80d
23 changed files with 212 additions and 90 deletions

View file

@ -25,6 +25,7 @@
#include "io.h"
#include "io_impl.h"
#include "rcc.h"
#include "dma.h"
#include "sensor.h"
#include "accgyro.h"
@ -37,8 +38,8 @@
#endif
const adcDevice_t adcHardware[] = {
{ .ADCx = ADC1, .rccADC = RCC_APB2(ADC1), .rccDMA = RCC_AHB1(DMA2), .DMAy_Streamx = DMA2_Stream4, .channel = DMA_Channel_0 },
//{ .ADCx = ADC2, .rccADC = RCC_APB2(ADC2), .rccDMA = RCC_AHB1(DMA2), .DMAy_Streamx = DMA2_Stream1, .channel = DMA_Channel_0 }
{ .ADCx = ADC1, .rccADC = RCC_APB2(ADC1), .DMAy_Streamx = DMA2_Stream4, .channel = DMA_Channel_0 },
//{ .ADCx = ADC2, .rccADC = RCC_APB2(ADC2), .DMAy_Streamx = DMA2_Stream1, .channel = DMA_Channel_0 }
};
/* note these could be packed up for saving space */
@ -140,9 +141,10 @@ void adcInit(drv_adc_config_t *init)
adcConfig[i].enabled = true;
}
RCC_ClockCmd(adc.rccDMA, ENABLE);
RCC_ClockCmd(adc.rccADC, ENABLE);
dmaInit(dmaGetIdentifier(adc.DMAy_Streamx), OWNER_ADC, RESOURCE_INDEX(device));
DMA_DeInit(adc.DMAy_Streamx);
DMA_StructInit(&DMA_InitStructure);