1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-24 00:35:39 +03:00

STM32F30x - Working parallel PWM. Timer IRQ handle was not defined for

TIM8 correctly. Software serial conficted with parallel PWM input. Fixed
crash due to incorrect timerConfig index calculation code.

The crash occurred when capture compare interrupt handlers attempted to
call an invalid callback.

Note: the crash does not affect existing baseflight code since the
formula is OK when using a 2 dimensional array with equal dimensions.

Formula details here:
https://docs.google.com/spreadsheets/d/1UuxnC0VKiprvt1wt3KXffefEWJUb_-ILFLQuP377Anw
This commit is contained in:
Dominic Clifton 2014-05-02 17:09:41 +01:00
parent fbe2f82c05
commit 92bed4a33d
10 changed files with 82 additions and 82 deletions

View file

@ -32,8 +32,8 @@
softSerial_t softSerialPorts[MAX_SOFTSERIAL_PORTS];
void onSerialTimer(uint8_t portIndex, uint16_t capture);
void onSerialRxPinChange(uint8_t portIndex, uint16_t capture);
void onSerialTimer(uint8_t portIndex, captureCompare_t capture);
void onSerialRxPinChange(uint8_t portIndex, captureCompare_t capture);
void setTxSignal(softSerial_t *softSerial, uint8_t state)
{
@ -335,7 +335,7 @@ void processRxState(softSerial_t *softSerial)
}
}
void onSerialTimer(uint8_t portIndex, uint16_t capture)
void onSerialTimer(uint8_t portIndex, captureCompare_t capture)
{
softSerial_t *softSerial = &(softSerialPorts[portIndex]);
@ -343,7 +343,7 @@ void onSerialTimer(uint8_t portIndex, uint16_t capture)
processRxState(softSerial);
}
void onSerialRxPinChange(uint8_t portIndex, uint16_t capture)
void onSerialRxPinChange(uint8_t portIndex, captureCompare_t capture)
{
softSerial_t *softSerial = &(softSerialPorts[portIndex]);