Refactoring around trainer

This commit is contained in:
Bertrand Songis
2019-06-04 15:15:31 +02:00
parent e608efdb76
commit a5575725ea
9 changed files with 160 additions and 65 deletions
@@ -20,6 +20,8 @@
#include "opentx.h"
extern volatile uint32_t HeartbeatCapture;
void intmoduleStop()
{
INTERNAL_MODULE_OFF();
@@ -37,6 +39,8 @@ void intmoduleSendNextFrame()
switch (moduleState[INTERNAL_MODULE].protocol) {
#if defined(PXX1)
case PROTOCOL_CHANNELS_PXX1_PULSES:
{
INTMODULE_TIMER->ARR = TIMER_2MHz_TIMER->CNT - HeartbeatCapture > 0x2A00 ? 17979 : 18019;
INTMODULE_TIMER->CCR2 = intmodulePulsesData.pxx.getLast() - 4000; // 2mS in advance
INTMODULE_DMA_STREAM->CR &= ~DMA_SxCR_EN; // Disable DMA
INTMODULE_DMA_STREAM->CR |= INTMODULE_DMA_CHANNEL | DMA_SxCR_DIR_0 | DMA_SxCR_MINC | DMA_SxCR_PSIZE_0 | DMA_SxCR_MSIZE_0 | DMA_SxCR_PL_0 | DMA_SxCR_PL_1;
@@ -45,6 +49,7 @@ void intmoduleSendNextFrame()
INTMODULE_DMA_STREAM->NDTR = intmodulePulsesData.pxx.getSize();
INTMODULE_DMA_STREAM->CR |= DMA_SxCR_EN | DMA_SxCR_TCIE; // Enable DMA
break;
}
#endif
#if defined(INTERNAL_MODULE_PPM)