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
uint8_t output;
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
bool useProshot;
volatile bool isInput;
@ -122,20 +130,21 @@ typedef struct motorDmaOutput_s {
uint16_t dshotTelemetryValue;
timeDelta_t dshotTelemetryDeadtimeUs;
bool dshotTelemetryActive;
uint8_t dmaInputLen;
#ifdef USE_HAL_DRIVER
LL_TIM_OC_InitTypeDef ocInitStruct;
LL_TIM_IC_InitTypeDef icInitStruct;
LL_DMA_InitTypeDef dmaInitStruct;
uint32_t llChannel;
#else
TIM_OCInitTypeDef ocInitStruct;
TIM_ICInitTypeDef icInitStruct;
DMA_InitTypeDef dmaInitStruct;
#endif
uint8_t dmaInputLen;
#endif
#endif // USE_DSHOT_TELEMETRY
dmaResource_t *dmaRef;
#endif
#endif // USE_DSHOT
motorDmaTimer_t *timer;
DSHOT_DMA_BUFFER_UNIT *dmaBuffer;
} motorDmaOutput_t;

View File

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

View File

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