Let LL Dshot to build without USE_DSHOT_TELEMETRY option

This commit is contained in:
jflyper 2019-07-29 22:30:20 +09:00
parent 3857f6cb75
commit b724ca6c3a
3 changed files with 17 additions and 8 deletions

View File

@ -115,6 +115,14 @@ typedef struct motorDmaOutput_s {
#endif #endif
uint8_t output; uint8_t output;
uint8_t index; uint8_t index;
#if defined(USE_HAL_DRIVER) && defined(USE_FULL_LL_DRIVER)
LL_DMA_InitTypeDef dmaInitStruct;
uint32_t llChannel;
#else
DMA_InitTypeDef dmaInitStruct;
#endif
#ifdef USE_DSHOT_TELEMETRY #ifdef USE_DSHOT_TELEMETRY
bool useProshot; bool useProshot;
volatile bool isInput; volatile bool isInput;
@ -122,20 +130,21 @@ typedef struct motorDmaOutput_s {
uint16_t dshotTelemetryValue; uint16_t dshotTelemetryValue;
timeDelta_t dshotTelemetryDeadtimeUs; timeDelta_t dshotTelemetryDeadtimeUs;
bool dshotTelemetryActive; bool dshotTelemetryActive;
uint8_t dmaInputLen;
#ifdef USE_HAL_DRIVER #ifdef USE_HAL_DRIVER
LL_TIM_OC_InitTypeDef ocInitStruct; LL_TIM_OC_InitTypeDef ocInitStruct;
LL_TIM_IC_InitTypeDef icInitStruct; LL_TIM_IC_InitTypeDef icInitStruct;
LL_DMA_InitTypeDef dmaInitStruct;
uint32_t llChannel;
#else #else
TIM_OCInitTypeDef ocInitStruct; TIM_OCInitTypeDef ocInitStruct;
TIM_ICInitTypeDef icInitStruct; TIM_ICInitTypeDef icInitStruct;
DMA_InitTypeDef dmaInitStruct;
#endif
uint8_t dmaInputLen;
#endif #endif
#endif // USE_DSHOT_TELEMETRY
dmaResource_t *dmaRef; dmaResource_t *dmaRef;
#endif #endif // USE_DSHOT
motorDmaTimer_t *timer; motorDmaTimer_t *timer;
DSHOT_DMA_BUFFER_UNIT *dmaBuffer; DSHOT_DMA_BUFFER_UNIT *dmaBuffer;
} motorDmaOutput_t; } motorDmaOutput_t;

View File

@ -89,7 +89,7 @@ static void motor_DMA_IRQHandler(dmaChannelDescriptor_t *descriptor);
void pwmDshotSetDirectionOutput( void pwmDshotSetDirectionOutput(
motorDmaOutput_t * const motor, bool output motorDmaOutput_t * const motor, bool output
#ifndef USE_DSHOT_TELEMETRY #ifndef USE_DSHOT_TELEMETRY
, LL_TIM_OC_InitTypeDef* pOcInit, LL_DMA_InitTypeDef* pDmaInit) , LL_TIM_OC_InitTypeDef* pOcInit, LL_DMA_InitTypeDef* pDmaInit
#endif #endif
) )
{ {

View File

@ -213,7 +213,7 @@ FAST_CODE void pwmDshotSetDirectionOutput(
motorDmaOutput_t * const motor, bool output motorDmaOutput_t * const motor, bool output
#ifndef USE_DSHOT_TELEMETRY #ifndef USE_DSHOT_TELEMETRY
#ifdef STM32F7 #ifdef STM32F7
, LL_TIM_OC_InitTypeDef* pOcInit, LL_DMA_InitTypeDef* pDmaInit) , LL_TIM_OC_InitTypeDef* pOcInit, LL_DMA_InitTypeDef* pDmaInit
#else #else
, TIM_OCInitTypeDef *pOcInit, DMA_InitTypeDef* pDmaInit , TIM_OCInitTypeDef *pOcInit, DMA_InitTypeDef* pDmaInit
#endif #endif